CACAO
Public Member Functions | Private Member Functions
cacao::jit::compiler2::x86_64::X86_64LoweringVisitor Class Reference
Inheritance diagram for cacao::jit::compiler2::x86_64::X86_64LoweringVisitor:
cacao::jit::compiler2::LoweringVisitorBase cacao::jit::compiler2::InstructionVisitor

Public Member Functions

 X86_64LoweringVisitor (Backend *backend, MachineBasicBlock *current, MapTy &map, InstructionMapTy &inst_map, MachineInstructionSchedule *schedule)
 
virtual void visit (LOADInst *I, bool copyOperands)
 
virtual void visit (IFInst *I, bool copyOperands)
 
virtual void visit (ADDInst *I, bool copyOperands)
 
virtual void visit (ANDInst *I, bool copyOperands)
 
virtual void visit (ORInst *I, bool copyOperands)
 
virtual void visit (XORInst *I, bool copyOperands)
 
virtual void visit (SUBInst *I, bool copyOperands)
 
virtual void visit (MULInst *I, bool copyOperands)
 
virtual void visit (DIVInst *I, bool copyOperands)
 
virtual void visit (REMInst *I, bool copyOperands)
 
virtual void visit (RETURNInst *I, bool copyOperands)
 
virtual void visit (CASTInst *I, bool copyOperands)
 
virtual void visit (INVOKESTATICInst *I, bool copyOperands)
 
virtual void visit (GETSTATICInst *I, bool copyOperands)
 
virtual void visit (LOOKUPSWITCHInst *I, bool copyOperands)
 
virtual void visit (TABLESWITCHInst *I, bool copyOperands)
 
virtual void visit (ARRAYLENGTHInst *I, bool copyOperands)
 
virtual void visit (AREFInst *I, bool copyOperands)
 
virtual void visit (ALOADInst *I, bool copyOperands)
 
virtual void visit (ASTOREInst *I, bool copyOperands)
 
virtual void visit (ARRAYBOUNDSCHECKInst *I, bool copyOperands)
 
virtual void visit (CMPInst *I, bool copyOperands)
 
virtual void visit (NEGInst *I, bool copyOperands)
 
virtual void lowerComplex (Instruction *I, int ruleId)
 
- Public Member Functions inherited from cacao::jit::compiler2::LoweringVisitorBase
 LoweringVisitorBase (Backend *backend, MachineBasicBlock *current, MapTy &map, InstructionMapTy &inst_map, MachineInstructionSchedule *schedule)
 
virtual void visit_default (Instruction *I)
 
MachineBasicBlockget_current () const
 
void set_current (MachineBasicBlock *MBB)
 
MachineBasicBlocknew_block () const
 
virtual void visit (BeginInst *I, bool copyOperands)
 
virtual void visit (GOTOInst *I, bool copyOperands)
 
virtual void visit (PHIInst *I, bool copyOperands)
 
virtual void visit (CONSTInst *I, bool copyOperands)
 
- Public Member Functions inherited from cacao::jit::compiler2::InstructionVisitor
virtual void visit (LoadInst *I, bool copyOperands)
 
virtual void visit (UnaryInst *I, bool copyOperands)
 
virtual void visit (BinaryInst *I, bool copyOperands)
 
virtual void visit (NOPInst *I, bool copyOperands)
 
virtual void visit (POPInst *I, bool copyOperands)
 
virtual void visit (CHECKNULLInst *I, bool copyOperands)
 
virtual void visit (SHLInst *I, bool copyOperands)
 
virtual void visit (USHRInst *I, bool copyOperands)
 
virtual void visit (GETFIELDInst *I, bool copyOperands)
 
virtual void visit (PUTFIELDInst *I, bool copyOperands)
 
virtual void visit (PUTSTATICInst *I, bool copyOperands)
 
virtual void visit (INCInst *I, bool copyOperands)
 
virtual void visit (RETInst *I, bool copyOperands)
 
virtual void visit (STOREInst *I, bool copyOperands)
 
virtual void visit (NEWInst *I, bool copyOperands)
 
virtual void visit (NEWARRAYInst *I, bool copyOperands)
 
virtual void visit (ANEWARRAYInst *I, bool copyOperands)
 
virtual void visit (MULTIANEWARRAYInst *I, bool copyOperands)
 
virtual void visit (CHECKCASTInst *I, bool copyOperands)
 
virtual void visit (INSTANCEOFInst *I, bool copyOperands)
 
virtual void visit (JSRInst *I, bool copyOperands)
 
virtual void visit (BUILTINInst *I, bool copyOperands)
 
virtual void visit (INVOKEVIRTUALInst *I, bool copyOperands)
 
virtual void visit (INVOKESPECIALInst *I, bool copyOperands)
 
virtual void visit (INVOKEINTERFACEInst *I, bool copyOperands)
 
virtual void visit (IF_CMPInst *I, bool copyOperands)
 
virtual void visit (THROWInst *I, bool copyOperands)
 
virtual void visit (COPYInst *I, bool copyOperands)
 
virtual void visit (MOVEInst *I, bool copyOperands)
 
virtual void visit (GETEXCEPTIONInst *I, bool copyOperands)
 
virtual void visit (ContainerInst *I, bool copyOperands)
 
virtual void visit (EndInst *I, bool copyOperands)
 

Private Member Functions

void setupSrcDst (MachineOperand *&src_op1, MachineOperand *&src_op2, VirtualRegister *&dst, Type::TypeID type, bool copyOperands, bool isCommutable)
 

Additional Inherited Members

- Protected Types inherited from cacao::jit::compiler2::LoweringVisitorBase
typedef alloc::map< BeginInst
*, MachineBasicBlock * >::type 
MapTy
 
typedef alloc::map
< Instruction
*, MachineOperand * >::type 
InstructionMapTy
 
- Protected Member Functions inherited from cacao::jit::compiler2::LoweringVisitorBase
Backendget_Backend () const
 
MachineBasicBlockget (BeginInst *BI) const
 
MachineOperandget_op (Instruction *I) const
 
void set_op (Instruction *I, MachineOperand *op) const
 

Detailed Description

Definition at line 37 of file X86_64Backend.hpp.

Constructor & Destructor Documentation

cacao::jit::compiler2::x86_64::X86_64LoweringVisitor::X86_64LoweringVisitor ( Backend backend,
MachineBasicBlock current,
MapTy map,
InstructionMapTy inst_map,
MachineInstructionSchedule schedule 
)
inline

Definition at line 39 of file X86_64Backend.hpp.

Member Function Documentation

void cacao::jit::compiler2::X86_64LoweringVisitor::lowerComplex ( Instruction I,
int  ruleId 
)
virtual

Implements cacao::jit::compiler2::LoweringVisitorBase.

Definition at line 1420 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::setupSrcDst ( MachineOperand *&  src_op1,
MachineOperand *&  src_op2,
VirtualRegister *&  dst,
Type::TypeID  type,
bool  copyOperands,
bool  isCommutable 
)
private

Definition at line 1977 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( LOADInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 145 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( IFInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 274 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( ADDInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 373 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( ANDInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 411 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( ORInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 439 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( XORInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 467 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( SUBInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 495 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( MULInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 533 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( DIVInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 571 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( REMInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 624 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( RETURNInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 933 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( CASTInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 1003 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( INVOKESTATICInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 1171 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( GETSTATICInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 1265 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( LOOKUPSWITCHInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 1332 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( TABLESWITCHInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 1368 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( ARRAYLENGTHInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 891 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( AREFInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 688 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( ALOADInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 739 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( ASTOREInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 816 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( ARRAYBOUNDSCHECKInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 907 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( CMPInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 183 of file X86_64Backend.cpp.

void cacao::jit::compiler2::X86_64LoweringVisitor::visit ( NEGInst I,
bool  copyOperands 
)
virtual

Reimplemented from cacao::jit::compiler2::InstructionVisitor.

Definition at line 331 of file X86_64Backend.cpp.


The documentation for this class was generated from the following files: