Converted loads are dead and can be removed but that laos means that the address' usage need to be adjusted which wasn't done. Fix this by adding the missing kill_use(). Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx> --- flow.c | 1 + validation/optim/load-converted.c | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/flow.c b/flow.c index d553df128..12fa62ed1 100644 --- a/flow.c +++ b/flow.c @@ -304,6 +304,7 @@ void convert_load_instruction(struct instruction *insn, pseudo_t src) { convert_instruction_target(insn, src); /* Turn the load into a no-op */ + kill_use(&insn->src); insn->opcode = OP_LNOP; insn->bb = NULL; } diff --git a/validation/optim/load-converted.c b/validation/optim/load-converted.c index 010c6bc7b..7cbb53cf4 100644 --- a/validation/optim/load-converted.c +++ b/validation/optim/load-converted.c @@ -8,7 +8,6 @@ static int foo(int *p, int i) /* * check-name: load-converted * check-command: test-linearize -Wno-decl $file - * check-known-to-fail * * check-output-ignore * check-output-excludes: add\. -- 2.16.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