|
LLVM
4.0.0
|
Public Member Functions | |
| IncomingArgHandler (MachineIRBuilder &MIRBuilder, MachineRegisterInfo &MRI) | |
| unsigned | getStackAddress (uint64_t Size, int64_t Offset, MachinePointerInfo &MPO) override |
| Materialize a VReg containing the address of the specified stack-based object. More... | |
| void | assignValueToReg (unsigned ValVReg, unsigned PhysReg, CCValAssign &VA) override |
| The specified value has been assigned to a physical register, handle the appropriate COPY (either to or from) and mark any relevant uses/defines as needed. More... | |
| void | assignValueToAddress (unsigned ValVReg, unsigned Addr, uint64_t Size, MachinePointerInfo &MPO, CCValAssign &VA) override |
| The specified value has been assigned to a stack location. More... | |
| virtual void | markPhysRegUsed (unsigned PhysReg)=0 |
| How the physical register gets marked varies between formal parameters (it's a basic-block live-in), and a call instruction (it's an implicit-def of the BL). More... | |
Public Member Functions inherited from llvm::CallLowering::ValueHandler | |
| unsigned | extendRegister (unsigned ValReg, CCValAssign &VA) |
| ValueHandler (MachineIRBuilder &MIRBuilder, MachineRegisterInfo &MRI) | |
| virtual | ~ValueHandler () |
Additional Inherited Members | |
Public Attributes inherited from llvm::CallLowering::ValueHandler | |
| MachineIRBuilder & | MIRBuilder |
| MachineRegisterInfo & | MRI |
Definition at line 37 of file AArch64CallLowering.cpp.
|
inline |
Definition at line 38 of file AArch64CallLowering.cpp.
|
inlineoverridevirtual |
The specified value has been assigned to a stack location.
Load or store it there, with appropriate extension if necessary.
Implements llvm::CallLowering::ValueHandler.
Definition at line 58 of file AArch64CallLowering.cpp.
References llvm::MachineMemOperand::MOInvariant, and llvm::MachineMemOperand::MOLoad.
|
inlineoverridevirtual |
The specified value has been assigned to a physical register, handle the appropriate COPY (either to or from) and mark any relevant uses/defines as needed.
Implements llvm::CallLowering::ValueHandler.
Definition at line 51 of file AArch64CallLowering.cpp.
|
inlineoverridevirtual |
Materialize a VReg containing the address of the specified stack-based object.
This is either based on a FrameIndex or direct SP manipulation, depending on the context. MPO should be initialized to an appropriate description of the address created.
Implements llvm::CallLowering::ValueHandler.
Definition at line 41 of file AArch64CallLowering.cpp.
References llvm::MachinePointerInfo::getFixedStack(), MRI, and llvm::LLT::pointer().
|
pure virtual |
How the physical register gets marked varies between formal parameters (it's a basic-block live-in), and a call instruction (it's an implicit-def of the BL).
Implemented in CallReturnHandler, and FormalArgHandler.
1.8.6