summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorSimon Atanasyan <simon@atanasyan.com>2019-03-19 17:01:24 +0000
committerSimon Atanasyan <simon@atanasyan.com>2019-03-19 17:01:24 +0000
commitdb4601e60a0fb3e079f20f68706de4d6010a1f56 (patch)
treebe28614387ead12aeb2e1a59d982f6df7b423dc6 /llvm/lib
parentf74d45a7755d28ecc6caf681c5bbc34d4e4592fb (diff)
downloadbcm5719-llvm-db4601e60a0fb3e079f20f68706de4d6010a1f56.tar.gz
bcm5719-llvm-db4601e60a0fb3e079f20f68706de4d6010a1f56.zip
[MIPS][microMIPS] Enable dynamic stack realignment
Dynamic stack realignment was disabled on micromips by checking if target has standard encoding. We simply change the condition to skip Mips16 only. Patch by Mirko Brkusanin. Differential Revision: http://reviews.llvm.org/D59499 llvm-svn: 356478
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/Mips/MipsRegisterInfo.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Target/Mips/MipsRegisterInfo.cpp b/llvm/lib/Target/Mips/MipsRegisterInfo.cpp
index 11216371289..b3f98d95669 100644
--- a/llvm/lib/Target/Mips/MipsRegisterInfo.cpp
+++ b/llvm/lib/Target/Mips/MipsRegisterInfo.cpp
@@ -321,8 +321,8 @@ bool MipsRegisterInfo::canRealignStack(const MachineFunction &MF) const {
unsigned FP = Subtarget.isGP32bit() ? Mips::FP : Mips::FP_64;
unsigned BP = Subtarget.isGP32bit() ? Mips::S7 : Mips::S7_64;
- // Support dynamic stack realignment only for targets with standard encoding.
- if (!Subtarget.hasStandardEncoding())
+ // Support dynamic stack realignment for all targets except Mips16.
+ if (Subtarget.inMips16Mode())
return false;
// We can't perform dynamic stack realignment if we can't reserve the
OpenPOWER on IntegriCloud