summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/ARMFastISel.cpp
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2011-08-23 20:53:08 +0000
committerJim Grosbach <grosbach@apple.com>2011-08-23 20:53:08 +0000
commit50b0f6669c482d0ea43f3ff9a9a90939aa370d88 (patch)
tree04d7c481e913bcfcd91543dc3a1b399d9124d9c6 /llvm/lib/Target/ARM/ARMFastISel.cpp
parentee9848e20d2659f939fb6e773729c6a86e6ed1da (diff)
downloadbcm5719-llvm-50b0f6669c482d0ea43f3ff9a9a90939aa370d88.tar.gz
bcm5719-llvm-50b0f6669c482d0ea43f3ff9a9a90939aa370d88.zip
[SU]XT[BH] are only available on ARMv6 and up.
llvm-svn: 138373
Diffstat (limited to 'llvm/lib/Target/ARM/ARMFastISel.cpp')
-rw-r--r--llvm/lib/Target/ARM/ARMFastISel.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMFastISel.cpp b/llvm/lib/Target/ARM/ARMFastISel.cpp
index 35d64064de0..8f7447558cb 100644
--- a/llvm/lib/Target/ARM/ARMFastISel.cpp
+++ b/llvm/lib/Target/ARM/ARMFastISel.cpp
@@ -2002,12 +2002,14 @@ bool ARMFastISel::SelectIntCast(const Instruction *I) {
switch (SrcVT.getSimpleVT().SimpleTy) {
default: return false;
case MVT::i16:
+ if (!Subtarget->hasV6Ops()) return false;
if (isZext)
Opc = isThumb ? ARM::t2UXTH : ARM::UXTH;
else
Opc = isThumb ? ARM::t2SXTH : ARM::SXTH;
break;
case MVT::i8:
+ if (!Subtarget->hasV6Ops()) return false;
if (isZext)
Opc = isThumb ? ARM::t2UXTB : ARM::UXTB;
else
OpenPOWER on IntegriCloud