diff options
Diffstat (limited to 'gcc/local-alloc.c')
-rw-r--r-- | gcc/local-alloc.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/gcc/local-alloc.c b/gcc/local-alloc.c index 2d7e32a5d1f..d71acab4dae 100644 --- a/gcc/local-alloc.c +++ b/gcc/local-alloc.c @@ -1392,9 +1392,7 @@ block_alloc (int b) /* Here we care if the operation to be computed is commutative. */ - else if ((GET_CODE (XEXP (note, 0)) == EQ - || GET_CODE (XEXP (note, 0)) == NE - || GET_RTX_CLASS (GET_CODE (XEXP (note, 0))) == 'c') + else if (COMMUTATIVE_P (XEXP (note, 0)) && (r1 = XEXP (XEXP (note, 0), 1), (GET_CODE (r1) == REG || GET_CODE (r1) == SUBREG)) && no_conflict_p (insn, r0, r1)) |