diff options
| author | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2018-06-22 09:10:08 +0200 |
|---|---|---|
| committer | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2018-06-23 07:43:54 +0200 |
| commit | cd762fbdf4e501965b6a68ec01854dc7fc030ef1 (patch) | |
| tree | fa81fdb1d3bcb6f487c60a538e3a9f20865d2bf9 | |
| parent | fa70d690d245b4e315472e20c529afd1b55290af (diff) | |
| download | sparse-dev-cd762fbdf4e501965b6a68ec01854dc7fc030ef1.tar.gz | |
ir: case OP_UNOP ... OP_UNOP_END
Now that we have OP_UNOP & OP_UNOP_END, we can convert some long
switch cases by the shorter: case OP_UNOP ... OP_UNOP_END.
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
| -rw-r--r-- | ir.c | 6 | ||||
| -rw-r--r-- | liveness.c | 9 | ||||
| -rw-r--r-- | simplify.c | 14 |
3 files changed, 4 insertions, 25 deletions
@@ -96,11 +96,7 @@ static int validate_insn(struct instruction *insn) err += check_user(insn, insn->src2); /* fall through */ - case OP_CAST: - case OP_SCAST: - case OP_FPCAST: - case OP_PTRCAST: - case OP_NOT: case OP_NEG: case OP_FNEG: + case OP_UNOP ... OP_UNOP_END: case OP_SLICE: case OP_SYMADDR: case OP_PHISOURCE: @@ -71,7 +71,7 @@ static void track_instruction_usage(struct basic_block *bb, struct instruction * break; /* Uni */ - case OP_NOT: case OP_NEG: case OP_FNEG: + case OP_UNOP ... OP_UNOP_END: USES(src1); DEFINES(target); break; @@ -111,13 +111,6 @@ static void track_instruction_usage(struct basic_block *bb, struct instruction * USES(phi_src); break; - case OP_CAST: - case OP_SCAST: - case OP_FPCAST: - case OP_PTRCAST: - USES(src); DEFINES(target); - break; - case OP_CALL: USES(func); if (insn->target != VOID) @@ -251,12 +251,8 @@ int kill_insn(struct instruction *insn, int force) kill_use(&insn->src2); /* fall through */ - case OP_CAST: - case OP_SCAST: - case OP_FPCAST: - case OP_PTRCAST: + case OP_UNOP ... OP_UNOP_END: case OP_SETVAL: - case OP_NOT: case OP_NEG: case OP_FNEG: case OP_SLICE: kill_use(&insn->src1); break; @@ -348,14 +344,8 @@ static int replace_with_pseudo(struct instruction *insn, pseudo_t pseudo) kill_use(&insn->src3); case OP_BINARY ... OP_BINCMP_END: kill_use(&insn->src2); - case OP_NOT: - case OP_NEG: - case OP_FNEG: + case OP_UNOP ... OP_UNOP_END: case OP_SYMADDR: - case OP_CAST: - case OP_SCAST: - case OP_FPCAST: - case OP_PTRCAST: kill_use(&insn->src1); break; |
