From 665853dc7a0c101f40e112eec3a7122dc7add26a Mon Sep 17 00:00:00 2001 From: Bernd Schmidt Date: Thu, 11 Nov 1999 12:26:29 +0000 Subject: [PATCH] Avoid passing things like NEG into expand_and/expand_binop From-SVN: r30487 --- gcc/ChangeLog | 5 +++++ gcc/jump.c | 3 +++ 2 files changed, 8 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 10f4716ba53..10262264d6c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Thu Nov 11 13:23:04 1999 Bernd Schmidt + + * jump.c (jump_optimize_1): Avoid passing an rtx that is not an + operand as argument to expand_and or expand_binop. + Thu Nov 11 02:21:16 1999 Rodney Brown * xcoffout.c (xcoffout_source_file): Change ggc_add_root to diff --git a/gcc/jump.c b/gcc/jump.c index 4c8e9775927..2020840a9d6 100644 --- a/gcc/jump.c +++ b/gcc/jump.c @@ -1453,6 +1453,9 @@ jump_optimize_1 (f, cross_jump, noop_moves, after_regscan, mark_labels_only) 5) if (...) x = b; if jumps are even more expensive. */ if (GET_MODE_CLASS (GET_MODE (temp1)) == MODE_INT + /* We will be passing this as operand into expand_and. No + good if it's not valid as an operand. */ + && general_operand (temp2, GET_MODE (temp2)) && ((GET_CODE (temp3) == CONST_INT) /* Make the latter case look like x = x; if (...) x = 0; */ -- 2.30.2