diff options
author | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-07-27 07:39:09 +0000 |
---|---|---|
committer | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-07-27 07:39:09 +0000 |
commit | 361223260284576c96bd022e66409ae36b5193a6 (patch) | |
tree | 8ce86442f4e4bba58a4e2f1291077a1a62140ae8 /gcc/expr.h | |
parent | 4d1af246f5ee5957c9909b7cef57e9d4659e0daa (diff) | |
download | gcc-361223260284576c96bd022e66409ae36b5193a6.tar.gz |
gcc/
* expr.h (store_bit_field): Don't return a value.
* expmed.c (check_predicate_volatile_ok): New function.
(store_bit_field_1): New function, extracted from store_bit_field.
Take a fallback_p argument and return true if the operation succeeded.
Only use store_fixed_bit_field if fallback_p. Don't recompute
mode_for_extraction; use op_mode instead. Try forcing memories
into registers if the insv expander fails.
(store_bit_field): Use store_bit_field_1 with fallback_p true.
Don't return a value.
(convert_extracted_bit_field): New function, extracted from
store_bit_field.
(extract_bit_field_1): Likewise. Take a fallback_p argument
and return NULL if the operation succeeded. Only use
extract_fixed_bit_field if fallback_p. Only calculate one
extraction mode. Combine code for extv and extzv. Try forcing
memories into registers if the ext(z)v expander fails.
(extract_bit_field): Use extract_bit_field_1 with fallback_p true.
gcc/testsuite/
* gcc.target/mips/ins-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126972 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.h')
-rw-r--r-- | gcc/expr.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/expr.h b/gcc/expr.h index cc69c58321c..64604d75f95 100644 --- a/gcc/expr.h +++ b/gcc/expr.h @@ -731,8 +731,8 @@ enum extraction_pattern { EP_insv, EP_extv, EP_extzv }; extern enum machine_mode mode_for_extraction (enum extraction_pattern, int); -extern rtx store_bit_field (rtx, unsigned HOST_WIDE_INT, - unsigned HOST_WIDE_INT, enum machine_mode, rtx); +extern void store_bit_field (rtx, unsigned HOST_WIDE_INT, + unsigned HOST_WIDE_INT, enum machine_mode, rtx); extern rtx extract_bit_field (rtx, unsigned HOST_WIDE_INT, unsigned HOST_WIDE_INT, int, rtx, enum machine_mode, enum machine_mode); |