aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
-rw-r--r--simplify.c5
-rw-r--r--validation/optim/setcc-mask.c1
2 files changed, 5 insertions, 1 deletions
diff --git a/simplify.c b/simplify.c
index e399ad87..783527b3 100644
--- a/simplify.c
+++ b/simplify.c
@@ -779,8 +779,13 @@ static int simplify_constant_mask(struct instruction *insn, unsigned long long m
int osize;
switch (DEF_OPCODE(def, old)) {
+ case OP_FPCMP ... OP_BINCMP_END:
+ osize = 1;
+ goto oldsize;
case OP_ZEXT:
osize = def->orig_type->bit_size;
+ /* fall through */
+ oldsize:
omask = (1ULL << osize) - 1;
nmask = mask & omask;
if (nmask == omask)
diff --git a/validation/optim/setcc-mask.c b/validation/optim/setcc-mask.c
index c8df1049..5d271788 100644
--- a/validation/optim/setcc-mask.c
+++ b/validation/optim/setcc-mask.c
@@ -6,7 +6,6 @@ int foo (int a)
/*
* check-name: setcc-mask
* check-command: test-linearize -Wno-decl $file
- * check-known-to-fail
*
* check-output-start
foo: