mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-05 12:31:33 +00:00
Pass the optimization level when constructing the ARM instruction selector.
Otherwise, it is always set to "default", which prevents debug info from even being generated during isel. Radar 7250345. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82988 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
5adb66a646
commit
522ce97532
@ -92,7 +92,8 @@ inline static const char *ARMCondCodeToString(ARMCC::CondCodes CC) {
|
||||
}
|
||||
}
|
||||
|
||||
FunctionPass *createARMISelDag(ARMBaseTargetMachine &TM);
|
||||
FunctionPass *createARMISelDag(ARMBaseTargetMachine &TM,
|
||||
CodeGenOpt::Level OptLevel);
|
||||
|
||||
FunctionPass *createARMCodeEmitterPass(ARMBaseTargetMachine &TM,
|
||||
MachineCodeEmitter &MCE);
|
||||
|
@ -49,8 +49,9 @@ class ARMDAGToDAGISel : public SelectionDAGISel {
|
||||
const ARMSubtarget *Subtarget;
|
||||
|
||||
public:
|
||||
explicit ARMDAGToDAGISel(ARMBaseTargetMachine &tm)
|
||||
: SelectionDAGISel(tm), TM(tm),
|
||||
explicit ARMDAGToDAGISel(ARMBaseTargetMachine &tm,
|
||||
CodeGenOpt::Level OptLevel)
|
||||
: SelectionDAGISel(tm, OptLevel), TM(tm),
|
||||
Subtarget(&TM.getSubtarget<ARMSubtarget>()) {
|
||||
}
|
||||
|
||||
@ -1566,6 +1567,7 @@ SelectInlineAsmMemoryOperand(const SDValue &Op, char ConstraintCode,
|
||||
/// createARMISelDag - This pass converts a legalized DAG into a
|
||||
/// ARM-specific DAG, ready for instruction scheduling.
|
||||
///
|
||||
FunctionPass *llvm::createARMISelDag(ARMBaseTargetMachine &TM) {
|
||||
return new ARMDAGToDAGISel(TM);
|
||||
FunctionPass *llvm::createARMISelDag(ARMBaseTargetMachine &TM,
|
||||
CodeGenOpt::Level OptLevel) {
|
||||
return new ARMDAGToDAGISel(TM, OptLevel);
|
||||
}
|
||||
|
@ -86,7 +86,7 @@ ThumbTargetMachine::ThumbTargetMachine(const Target &T, const std::string &TT,
|
||||
// Pass Pipeline Configuration
|
||||
bool ARMBaseTargetMachine::addInstSelector(PassManagerBase &PM,
|
||||
CodeGenOpt::Level OptLevel) {
|
||||
PM.add(createARMISelDag(*this));
|
||||
PM.add(createARMISelDag(*this, OptLevel));
|
||||
return false;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user