aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2018-06-22 09:10:08 +0200
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2018-06-23 07:43:54 +0200
commitcd762fbdf4e501965b6a68ec01854dc7fc030ef1 (patch)
treefa81fdb1d3bcb6f487c60a538e3a9f20865d2bf9
parentfa70d690d245b4e315472e20c529afd1b55290af (diff)
downloadsparse-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.c6
-rw-r--r--liveness.c9
-rw-r--r--simplify.c14
3 files changed, 4 insertions, 25 deletions
diff --git a/ir.c b/ir.c
index 5116beaa..1890eb13 100644
--- a/ir.c
+++ b/ir.c
@@ -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:
diff --git a/liveness.c b/liveness.c
index e0e58329..4c3339f1 100644
--- a/liveness.c
+++ b/liveness.c
@@ -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)
diff --git a/simplify.c b/simplify.c
index eabe63ca..48f6f124 100644
--- a/simplify.c
+++ b/simplify.c
@@ -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;