LLVM API Documentation
#include "ARM.h"
#include "ARMTargetMachine.h"
#include "llvm/CallingConv.h"
#include "llvm/DerivedTypes.h"
#include "llvm/Function.h"
#include "llvm/Intrinsics.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/SelectionDAG.h"
#include "llvm/CodeGen/SelectionDAGISel.h"
#include "llvm/CodeGen/SSARegMap.h"
#include "llvm/Target/TargetLowering.h"
#include "llvm/Support/Debug.h"
#include <iostream>
#include <set>
#include "ARMGenDAGISel.inc"
Include dependency graph for ARMISelDAGToDAG.cpp:
Go to the source code of this file.
Namespaces | |
namespace | llvm |
namespace | llvm::ARMISD |
Enumerations | |
enum | llvm::ARMISD::NodeType { llvm::ARMISD::FIRST_NUMBER = ISD::BUILTIN_OP_END+ARM::INSTRUCTION_LIST_END, llvm::ARMISD::CALL } |
Functions | |
static SDOperand | LowerCALL (SDOperand Op, SelectionDAG &DAG) |
static SDOperand | LowerRET (SDOperand Op, SelectionDAG &DAG) |
static SDOperand | LowerFORMAL_ARGUMENT (SDOperand Op, SelectionDAG &DAG, unsigned ArgNo) |
static SDOperand | LowerFORMAL_ARGUMENTS (SDOperand Op, SelectionDAG &DAG) |
FunctionPass * | llvm::createARMISelDag (TargetMachine &TM) |
static SDOperand LowerCALL | ( | SDOperand | Op, | |
SelectionDAG & | DAG | |||
) | [static] |
Definition at line 68 of file ARMISelDAGToDAG.cpp.
References llvm::CallingConv::C, llvm::ARMISD::CALL, llvm::ISD::CALLSEQ_END, DAG, llvm::MVT::Flag, G, llvm::SelectionDAG::getCALLSEQ_START(), llvm::SelectionDAG::getConstant(), llvm::SelectionDAG::getCopyFromReg(), llvm::SelectionDAG::getCopyToReg(), llvm::SelectionDAG::getNode(), llvm::SelectionDAG::getTargetGlobalAddress(), llvm::SDOperand::getValue(), llvm::Value::getValueType(), llvm::MVT::i32, llvm::ISD::MERGE_VALUES, NumBytes, Op, Ops, llvm::MVT::Other, llvm::Use::Val, and llvm::SDOperand::Val.
Referenced by llvm::PPCTargetLowering::LowerOperation().
static SDOperand LowerFORMAL_ARGUMENT | ( | SDOperand | Op, | |
SelectionDAG & | DAG, | |||
unsigned | ArgNo | |||
) | [static] |
Definition at line 185 of file ARMISelDAGToDAG.cpp.
References llvm::MachineFunction::addLiveIn(), llvm::MachineFrameInfo::CreateFixedObject(), DAG, llvm::SelectionDAG::getCopyFromReg(), llvm::SelectionDAG::getFrameIndex(), llvm::MachineFunction::getFrameInfo(), llvm::SelectionDAG::getLoad(), llvm::SelectionDAG::getMachineFunction(), llvm::SelectionDAG::getNode(), llvm::MVT::getSizeInBits(), llvm::SelectionDAG::getSrcValue(), llvm::MachineFunction::getSSARegMap(), llvm::MVT::i32, MF, Op, RegMap, Root, llvm::ISD::UNDEF, and llvm::Use::Val.
Referenced by LowerFORMAL_ARGUMENTS().
static SDOperand LowerFORMAL_ARGUMENTS | ( | SDOperand | Op, | |
SelectionDAG & | DAG | |||
) | [static] |
Definition at line 221 of file ARMISelDAGToDAG.cpp.
References DAG, llvm::SelectionDAG::getNode(), LowerFORMAL_ARGUMENT(), llvm::ISD::MERGE_VALUES, Op, Root, and llvm::Use::Val.
static SDOperand LowerRET | ( | SDOperand | Op, | |
SelectionDAG & | DAG | |||
) | [static] |
Definition at line 158 of file ARMISelDAGToDAG.cpp.
References llvm::MachineFunction::addLiveOut(), llvm::ISD::BRIND, DAG, llvm::SelectionDAG::getCopyToReg(), llvm::SelectionDAG::getMachineFunction(), llvm::SelectionDAG::getNode(), llvm::SelectionDAG::getRegister(), llvm::MVT::i32, llvm::MachineFunction::liveout_empty(), Op, and llvm::MVT::Other.
std::map<SDOperand, SDOperand> CodeGenMap |
Definition at line 300 of file ARMISelDAGToDAG.cpp.
Definition at line 303 of file ARMISelDAGToDAG.cpp.
std::set<SDNode*> InFlightSet |
Definition at line 309 of file ARMISelDAGToDAG.cpp.
ARMTargetLowering Lowering |
Definition at line 266 of file ARMISelDAGToDAG.cpp.
std::map<SDOperand, SDOperand> ReplaceMap |
Definition at line 306 of file ARMISelDAGToDAG.cpp.