|
LLVM 22.0.0git
|
#include "ARCISelLowering.h"#include "ARC.h"#include "ARCMachineFunctionInfo.h"#include "ARCSelectionDAGInfo.h"#include "ARCSubtarget.h"#include "ARCTargetMachine.h"#include "MCTargetDesc/ARCInfo.h"#include "llvm/CodeGen/CallingConvLower.h"#include "llvm/CodeGen/MachineFrameInfo.h"#include "llvm/CodeGen/MachineFunction.h"#include "llvm/CodeGen/MachineInstrBuilder.h"#include "llvm/CodeGen/MachineJumpTableInfo.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/CodeGen/ValueTypes.h"#include "llvm/IR/CallingConv.h"#include "llvm/IR/Intrinsics.h"#include "llvm/Support/Debug.h"#include <algorithm>#include "ARCGenCallingConv.inc"Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "arc-lower" |
Functions | |
| static SDValue | lowerCallResult (SDValue Chain, SDValue Glue, const SmallVectorImpl< CCValAssign > &RVLocs, SDLoc dl, SelectionDAG &DAG, SmallVectorImpl< SDValue > &InVals) |
| Lower the result values of a call into the appropriate copies out of physical registers / memory locations. | |
| static ARCCC::CondCode | ISDCCtoARCCC (ISD::CondCode isdCC) |
| static SDValue | LowerVASTART (SDValue Op, SelectionDAG &DAG) |
| #define DEBUG_TYPE "arc-lower" |
Definition at line 32 of file ARCISelLowering.cpp.
|
static |
Definition at line 41 of file ARCISelLowering.cpp.
References llvm::ARCCC::EQ, llvm::ARCCC::GE, llvm::ARCCC::GT, llvm::ARCCC::HI, llvm::ARCCC::HS, llvm::ARCCC::LE, llvm_unreachable, llvm::ARCCC::LO, llvm::ARCCC::LS, llvm::ARCCC::LT, llvm::ARCCC::NE, llvm::ISD::SETEQ, llvm::ISD::SETGE, llvm::ISD::SETGT, llvm::ISD::SETLE, llvm::ISD::SETLT, llvm::ISD::SETNE, llvm::ISD::SETUEQ, llvm::ISD::SETUGE, llvm::ISD::SETUGT, llvm::ISD::SETULE, llvm::ISD::SETULT, and llvm::ISD::SETUNE.
|
static |
Lower the result values of a call into the appropriate copies out of physical registers / memory locations.
Definition at line 391 of file ARCISelLowering.cpp.
References llvm::ISD::ADD, assert(), llvm::SmallVectorTemplateCommon< T, typename >::empty(), llvm::SelectionDAG::getConstant(), llvm::SelectionDAG::getCopyFromReg(), llvm::SelectionDAG::getLoad(), llvm::CCValAssign::getLocMemOffset(), llvm::CCValAssign::getLocReg(), llvm::SelectionDAG::getNode(), llvm::SelectionDAG::getRegister(), llvm::SDValue::getValue(), llvm::CCValAssign::getValVT(), llvm::CCValAssign::isMemLoc(), llvm::CCValAssign::isRegLoc(), llvm::Offset, llvm::SmallVectorTemplateBase< T, bool >::push_back(), SDValue(), llvm::SmallVectorTemplateCommon< T, typename >::size(), and llvm::ISD::TokenFactor.
|
static |
Definition at line 756 of file ARCISelLowering.cpp.
References llvm::cast(), llvm::SelectionDAG::getDataLayout(), llvm::SelectionDAG::getFrameIndex(), llvm::MachineFunction::getInfo(), llvm::SelectionDAG::getMachineFunction(), llvm::TargetLoweringBase::getPointerTy(), llvm::SelectionDAG::getStore(), and llvm::SelectionDAG::getTargetLoweringInfo().
Referenced by llvm::ARCTargetLowering::LowerOperation(), llvm::ARMTargetLowering::LowerOperation(), and llvm::SparcTargetLowering::LowerOperation().