diff options
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/combine.c | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fa80ec7..36267f9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2003-06-30 Denis Chertykov <denisc@overta.ru> + Richard Kenner <kenner@vlsi1.ultra.nyu.edu> + + * combine.c (gen_binary): Handle the CLOBBER rtx and + don't build a binary operation with it. + 2003-07-10 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> * gcse.c (load_kills_store, find_loads, store_killed_in_insn, diff --git a/gcc/combine.c b/gcc/combine.c index 037f583..499e7b9 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -10171,6 +10171,11 @@ gen_binary (enum rtx_code code, enum machine_mode mode, rtx op0, rtx op1) rtx result; rtx tem; + if (GET_CODE (op0) == CLOBBER) + return op0; + else if (GET_CODE (op1) == CLOBBER) + return op1; + if (GET_RTX_CLASS (code) == 'c' && swap_commutative_operands_p (op0, op1)) tem = op0, op0 = op1, op1 = tem; |