summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2012-03-30 18:39:43 +0000
committerJim Grosbach <grosbach@apple.com>2012-03-30 18:39:43 +0000
commit74005ae691e7e362c175be695fe46e5d4e760005 (patch)
treea51ee012901eeffbb2bb06a5dc85e49c829ff85b
parente214c3df40220d6c81b33cf7ae20b6ba3ce82e99 (diff)
downloadbcm5719-llvm-74005ae691e7e362c175be695fe46e5d4e760005.tar.gz
bcm5719-llvm-74005ae691e7e362c175be695fe46e5d4e760005.zip
ARM can only use narrow encoding for low regs.
llvm-svn: 153765
-rw-r--r--llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
index 10e3885406b..f8edced2085 100644
--- a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
+++ b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
@@ -6857,6 +6857,7 @@ processInstruction(MCInst &Inst,
// instead of T3. For compatibility with the system 'as'. Make sure the
// wide encoding wasn't explicit.
if (Inst.getOperand(0).getReg() != Inst.getOperand(1).getReg() ||
+ !isARMLowRegister(Inst.getOperand(0).getReg()) ||
(unsigned)Inst.getOperand(2).getImm() > 255 ||
((!inITBlock() && Inst.getOperand(5).getReg() != ARM::CPSR) ||
(inITBlock() && Inst.getOperand(5).getReg() != 0)) ||
OpenPOWER on IntegriCloud