diff options
author | Michael Meissner <meissner@gcc.gnu.org> | 2013-10-17 19:12:57 +0000 |
---|---|---|
committer | Michael Meissner <meissner@gcc.gnu.org> | 2013-10-17 19:12:57 +0000 |
commit | 3170766c285515b59943651c79860d39b5f771ca (patch) | |
tree | d290f27d2b6065d1b955ba5787a2bfc25b3be0d3 /gcc | |
parent | 5845f602f0e7b2d423064b6871a03e4d70cf5bcd (diff) | |
download | gcc-3170766c285515b59943651c79860d39b5f771ca.zip gcc-3170766c285515b59943651c79860d39b5f771ca.tar.gz gcc-3170766c285515b59943651c79860d39b5f771ca.tar.bz2 |
rs6000.c (enum rs6000_reload_reg_type): Add new fields to the reg_addr array that describes the valid addressing mode...
2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (enum rs6000_reload_reg_type): Add new
fields to the reg_addr array that describes the valid addressing
mode for any register, general purpose registers, floating point
registers, and Altivec registers.
(FIRST_RELOAD_REG_CLASS): Likewise.
(LAST_RELOAD_REG_CLASS): Likewise.
(struct reload_reg_map_type): Likewise.
(reload_reg_map_type): Likewise.
(RELOAD_REG_VALID): Likewise.
(RELOAD_REG_MULTIPLE): Likewise.
(RELOAD_REG_INDEXED): Likewise.
(RELOAD_REG_OFFSET): Likewise.
(RELOAD_REG_PRE_INCDEC): Likewise.
(RELOAD_REG_PRE_MODIFY): Likewise.
(reg_addr): Likewise.
(mode_supports_pre_incdec_p): New helper functions to say whether
a given mode supports PRE_INC, PRE_DEC, and PRE_MODIFY.
(mode_supports_pre_modify_p): Likewise.
(rs6000_debug_vector_unit): Rearrange the -mdebug=reg output to
print the valid address mode bits for each mode.
(rs6000_debug_print_mode): Likewise.
(rs6000_debug_reg_global): Likewise.
(rs6000_setup_reg_addr_masks): New function to set up the address
mask bits for each type.
(rs6000_init_hard_regno_mode_ok): Use memset to clear arrays.
Call rs6000_setup_reg_addr_masks to set up the address mask bits.
(rs6000_legitimate_address_p): Use mode_supports_pre_incdec_p and
mode_supports_pre_modify_p to determine if PRE_INC, PRE_DEC, and
PRE_MODIFY are supported.
(rs6000_output_move_128bit): Change to use {src,dest}_vmx_p for altivec
registers, instead of {src,dest}_av_p.
(rs6000_print_options_internal): Tweak the debug output slightly.
From-SVN: r203791
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2464c27..0c53f55 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,4 +1,4 @@ -2013-10-07 Michael Meissner <meissner@linux.vnet.ibm.com> +2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com> * config/rs6000/rs6000.c (enum rs6000_reload_reg_type): Add new fields to the reg_addr array that describes the valid addressing @@ -29,6 +29,8 @@ (rs6000_legitimate_address_p): Use mode_supports_pre_incdec_p and mode_supports_pre_modify_p to determine if PRE_INC, PRE_DEC, and PRE_MODIFY are supported. + (rs6000_output_move_128bit): Change to use {src,dest}_vmx_p for altivec + registers, instead of {src,dest}_av_p. (rs6000_print_options_internal): Tweak the debug output slightly. 2013-10-17 Uros Bizjak <ubizjak@gmail.com> |