diff options
author | Geoffrey Keating <geoffk@redhat.com> | 2002-08-19 18:18:12 +0000 |
---|---|---|
committer | Steve Ellcey <sje@gcc.gnu.org> | 2002-08-19 18:18:12 +0000 |
commit | 71012d9720fc774abd9f586abf40bd5d5643a412 (patch) | |
tree | 90d5a658b60ca93c1db59343c9ba71bdd464f467 /gcc/recog.c | |
parent | 35fb4cf6116fa7b35673deccfde8b3eb099ea261 (diff) | |
download | gcc-71012d9720fc774abd9f586abf40bd5d5643a412.zip gcc-71012d9720fc774abd9f586abf40bd5d5643a412.tar.gz gcc-71012d9720fc774abd9f586abf40bd5d5643a412.tar.bz2 |
machmode.h (SCALAR_INT_MODE_P): New macro to test for scaler integer mode (MODE_INT or MODE_PARTIAL_INT).
* machmode.h (SCALAR_INT_MODE_P): New macro to test for
scaler integer mode (MODE_INT or MODE_PARTIAL_INT).
* explow.c (trunc_int_for_mode): Abort when the mode is not
a scaler integer mode.
* combine.c (expand_compound_operation): Don't expand Vector
or Complex modes into shifts.
(expand_field_assignment): Don't do bitwise arithmatic and
shifts on Vector or Complex modes.
(simplify_comparison): Don't call trunc_int_for_mode
for VOIDmode.
* recog.c (general_operand): Likewise.
(immediate_operand): Likewise.
(nonmemory_operand): Likewise.
Co-Authored-By: Steve Ellcey <sje@cup.hp.com>
From-SVN: r56443
Diffstat (limited to 'gcc/recog.c')
-rw-r--r-- | gcc/recog.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/recog.c b/gcc/recog.c index 6bb8670..a01abd5 100644 --- a/gcc/recog.c +++ b/gcc/recog.c @@ -954,6 +954,7 @@ general_operand (op, mode) return 0; if (GET_CODE (op) == CONST_INT + && mode != VOIDmode && trunc_int_for_mode (INTVAL (op), mode) != INTVAL (op)) return 0; @@ -1159,6 +1160,7 @@ immediate_operand (op, mode) return 0; if (GET_CODE (op) == CONST_INT + && mode != VOIDmode && trunc_int_for_mode (INTVAL (op), mode) != INTVAL (op)) return 0; @@ -1241,6 +1243,7 @@ nonmemory_operand (op, mode) return 0; if (GET_CODE (op) == CONST_INT + && mode != VOIDmode && trunc_int_for_mode (INTVAL (op), mode) != INTVAL (op)) return 0; |