summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
diff options
context:
space:
mode:
authorTim Northover <tnorthover@apple.com>2016-04-01 23:14:52 +0000
committerTim Northover <tnorthover@apple.com>2016-04-01 23:14:52 +0000
commit5dad9df9f7bd38a076e3c7cdf22270faa17b877f (patch)
treedb30e605c436f12bac85516206a279d81e4e6a14 /llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
parent8af7bb28aa225fe30e0a682325b5b9f4df74d6fe (diff)
downloadbcm5719-llvm-5dad9df9f7bd38a076e3c7cdf22270faa17b877f.tar.gz
bcm5719-llvm-5dad9df9f7bd38a076e3c7cdf22270faa17b877f.zip
AArch64: avoid clobbering SP for dead MOVimm pseudos.
We were producing ORR, which actually defines a GPR32sp rather than a GPR32. Should fix PR23209. llvm-svn: 265198
Diffstat (limited to 'llvm/lib/Target/AArch64/AArch64TargetMachine.cpp')
-rw-r--r--llvm/lib/Target/AArch64/AArch64TargetMachine.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp b/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
index 30d8342203a..a2638aacf94 100644
--- a/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
+++ b/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
@@ -111,7 +111,9 @@ extern "C" void LLVMInitializeAArch64Target() {
RegisterTargetMachine<AArch64leTargetMachine> X(TheAArch64leTarget);
RegisterTargetMachine<AArch64beTargetMachine> Y(TheAArch64beTarget);
RegisterTargetMachine<AArch64leTargetMachine> Z(TheARM64Target);
- initializeGlobalISel(*PassRegistry::getPassRegistry());
+ auto PR = PassRegistry::getPassRegistry();
+ initializeGlobalISel(*PR);
+ initializeAArch64ExpandPseudoPass(*PR);
}
//===----------------------------------------------------------------------===//
OpenPOWER on IntegriCloud