1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 11:02:59 +02:00

Reset the subtarget for DAGToDAG on every iteration of runOnMachineFunction.

llvm-svn: 209374
This commit is contained in:
Eric Christopher 2014-05-22 01:07:21 +00:00
parent 9e4070b572
commit ec3c7ebdc1

View File

@ -45,7 +45,7 @@ class ARM64DAGToDAGISel : public SelectionDAGISel {
public: public:
explicit ARM64DAGToDAGISel(ARM64TargetMachine &tm, CodeGenOpt::Level OptLevel) explicit ARM64DAGToDAGISel(ARM64TargetMachine &tm, CodeGenOpt::Level OptLevel)
: SelectionDAGISel(tm, OptLevel), TM(tm), : SelectionDAGISel(tm, OptLevel), TM(tm),
Subtarget(&TM.getSubtarget<ARM64Subtarget>()), ForCodeSize(false) {} Subtarget(nullptr), ForCodeSize(false) {}
const char *getPassName() const override { const char *getPassName() const override {
return "ARM64 Instruction Selection"; return "ARM64 Instruction Selection";
@ -57,6 +57,7 @@ public:
FnAttrs.hasAttribute(AttributeSet::FunctionIndex, FnAttrs.hasAttribute(AttributeSet::FunctionIndex,
Attribute::OptimizeForSize) || Attribute::OptimizeForSize) ||
FnAttrs.hasAttribute(AttributeSet::FunctionIndex, Attribute::MinSize); FnAttrs.hasAttribute(AttributeSet::FunctionIndex, Attribute::MinSize);
Subtarget = &TM.getSubtarget<ARM64Subtarget>();
return SelectionDAGISel::runOnMachineFunction(MF); return SelectionDAGISel::runOnMachineFunction(MF);
} }