For PR950: For ICmp and FCmp constant expressions, put the predicate outiside the parentheses to match what llvm-upgrade generates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32171 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y
index 27e3597..6ae9ceb 100644
--- a/lib/AsmParser/llvmAsmParser.y
+++ b/lib/AsmParser/llvmAsmParser.y
@@ -1127,7 +1127,7 @@
UITOFP | SITOFP | FPTOUI | FPTOSI | INTTOPTR | PTRTOINT;
ShiftOps : SHL | LSHR | ASHR;
IPredicates
- : EQ { $$ = ICmpInst::ICMP_EQ; } | NE { $$ = ICmpInst::ICMP_NE; }
+ : EQ { $$ = ICmpInst::ICMP_EQ; } | NE { $$ = ICmpInst::ICMP_NE; }
| SLT { $$ = ICmpInst::ICMP_SLT; } | SGT { $$ = ICmpInst::ICMP_SGT; }
| SLE { $$ = ICmpInst::ICMP_SLE; } | SGE { $$ = ICmpInst::ICMP_SGE; }
| ULT { $$ = ICmpInst::ICMP_ULT; } | UGT { $$ = ICmpInst::ICMP_UGT; }
@@ -1706,15 +1706,15 @@
$$ = ConstantExpr::get($1, $3, $5);
CHECK_FOR_ERROR
}
- | ICMP '(' IPredicates ',' ConstVal ',' ConstVal ')' {
- if ($5->getType() != $7->getType())
+ | ICMP IPredicates '(' ConstVal ',' ConstVal ')' {
+ if ($4->getType() != $6->getType())
GEN_ERROR("icmp operand types must match!");
- $$ = ConstantExpr::getICmp($3, $5, $7);
+ $$ = ConstantExpr::getICmp($2, $4, $6);
}
- | FCMP '(' FPredicates ',' ConstVal ',' ConstVal ')' {
- if ($5->getType() != $7->getType())
+ | FCMP FPredicates '(' ConstVal ',' ConstVal ')' {
+ if ($4->getType() != $6->getType())
GEN_ERROR("fcmp operand types must match!");
- $$ = ConstantExpr::getFCmp($3, $5, $7);
+ $$ = ConstantExpr::getFCmp($2, $4, $6);
}
| ShiftOps '(' ConstVal ',' ConstVal ')' {
if ($5->getType() != Type::UByteTy)