projects
/
oota-llvm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[AArch64][FastISel] Don't even try to select vector icmps.
[oota-llvm.git]
/
lib
/
Target
/
AArch64
/
AArch64FastISel.cpp
diff --git
a/lib/Target/AArch64/AArch64FastISel.cpp
b/lib/Target/AArch64/AArch64FastISel.cpp
index 2f50480efbe23cd2fa208c5bdea63ea5b85b8e75..284f5263f90e9748c3a8b59c90231cddb619ad95 100644
(file)
--- a/
lib/Target/AArch64/AArch64FastISel.cpp
+++ b/
lib/Target/AArch64/AArch64FastISel.cpp
@@
-2451,6
+2451,10
@@
bool AArch64FastISel::selectIndirectBr(const Instruction *I) {
bool AArch64FastISel::selectCmp(const Instruction *I) {
const CmpInst *CI = cast<CmpInst>(I);
bool AArch64FastISel::selectCmp(const Instruction *I) {
const CmpInst *CI = cast<CmpInst>(I);
+ // Vectors of i1 are weird: bail out.
+ if (CI->getType()->isVectorTy())
+ return false;
+
// Try to optimize or fold the cmp.
CmpInst::Predicate Predicate = optimizeCmpPredicate(CI);
unsigned ResultReg = 0;
// Try to optimize or fold the cmp.
CmpInst::Predicate Predicate = optimizeCmpPredicate(CI);
unsigned ResultReg = 0;