summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2011-05-25 19:09:45 +0000
committerEli Friedman <eli.friedman@gmail.com>2011-05-25 19:09:45 +0000
commit5bbb75655b03f7baecbc24d61ad8bb03021cd703 (patch)
tree1253eb982c187448f379c6cb2e3ae8e051731a12 /llvm/lib/Target/ARM
parent3cd1e5510319ea04cd3c433d7992538b0e1cfa90 (diff)
downloadbcm5719-llvm-5bbb75655b03f7baecbc24d61ad8bb03021cd703.tar.gz
bcm5719-llvm-5bbb75655b03f7baecbc24d61ad8bb03021cd703.zip
Prepare ARMFastISel::SelectSIToFP for getRegForValue returning registers for i8 and i16 values.
llvm-svn: 132073
Diffstat (limited to 'llvm/lib/Target/ARM')
-rw-r--r--llvm/lib/Target/ARM/ARMFastISel.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMFastISel.cpp b/llvm/lib/Target/ARM/ARMFastISel.cpp
index 229c129ea85..790a6e3b563 100644
--- a/llvm/lib/Target/ARM/ARMFastISel.cpp
+++ b/llvm/lib/Target/ARM/ARMFastISel.cpp
@@ -1296,6 +1296,10 @@ bool ARMFastISel::SelectSIToFP(const Instruction *I) {
if (!isTypeLegal(Ty, DstVT))
return false;
+ // FIXME: Handle sign-extension where necessary.
+ if (!I->getOperand(0)->getType()->isIntegerTy(32))
+ return false;
+
unsigned Op = getRegForValue(I->getOperand(0));
if (Op == 0) return false;
OpenPOWER on IntegriCloud