Since commit "1c182507c (fix support of floating-point compare)", CSE wasn't done anymore on floating-point compare. Fix this by adding the two missing 'case OP_FPCMP ...' Fixes: 1c182507c3981aa20193c68d7cfd32d750b571cf Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx> --- cse.c | 4 +++- validation/optim/cse-fcmp.c | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/cse.c b/cse.c index d5da26fba..6987645c1 100644 --- a/cse.c +++ b/cse.c @@ -71,7 +71,8 @@ static void clean_up_one_instruction(struct basic_block *bb, struct instruction case OP_SET_B: case OP_SET_A: case OP_SET_BE: case OP_SET_AE: - /* floating-point arithmetic */ + /* floating-point arithmetic & comparison */ + case OP_FPCMP ... OP_FPCMP_END: case OP_FADD: case OP_FSUB: case OP_FMUL: @@ -214,6 +215,7 @@ static int insn_compare(const void *_i1, const void *_i2) case OP_SET_BE: case OP_SET_AE: /* floating-point arithmetic */ + case OP_FPCMP ... OP_FPCMP_END: case OP_FADD: case OP_FSUB: case OP_FMUL: diff --git a/validation/optim/cse-fcmp.c b/validation/optim/cse-fcmp.c index 9e6872302..f2a73f57f 100644 --- a/validation/optim/cse-fcmp.c +++ b/validation/optim/cse-fcmp.c @@ -13,7 +13,6 @@ int foo(double a, double b) /* * check-name: cse-fcmp * check-command: test-linearize -Wno-decl $file - * check-known-to-fail * * check-output-ignore * check-output-pattern(1): fcmp -- 2.15.0 -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html