diff options
author | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-08-19 18:18:12 +0000 |
---|---|---|
committer | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-08-19 18:18:12 +0000 |
commit | dd06736221e44091252e1bb6985d5d3e5fd0ea5f (patch) | |
tree | 90d5a658b60ca93c1db59343c9ba71bdd464f467 /gcc/machmode.h | |
parent | 31c07a4029037bef4530cb55882b651438c1c550 (diff) | |
download | gcc-dd06736221e44091252e1bb6985d5d3e5fd0ea5f.tar.gz |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@56443 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/machmode.h')
-rw-r--r-- | gcc/machmode.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/machmode.h b/gcc/machmode.h index f581cd041bd..c0c8c35f8d4 100644 --- a/gcc/machmode.h +++ b/gcc/machmode.h @@ -75,6 +75,11 @@ extern const enum mode_class mode_class[NUM_MACHINE_MODES]; (GET_MODE_CLASS (MODE) == MODE_VECTOR_INT \ || GET_MODE_CLASS (MODE) == MODE_VECTOR_FLOAT) +/* Nonzero if MODE is a scalar integral mode. */ +#define SCALAR_INT_MODE_P(MODE) \ + (GET_MODE_CLASS (MODE) == MODE_INT \ + || GET_MODE_CLASS (MODE) == MODE_PARTIAL_INT) + /* Get the size in bytes of an object of mode MODE. */ extern const unsigned char mode_size[NUM_MACHINE_MODES]; |