diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2012-08-17 15:50:44 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2012-08-17 08:50:44 -0700 |
commit | d9886a9e04caf0bd1e9147d95af2ea8350ad8e1c (patch) | |
tree | 96cde03a3099b4fe12c7701de5fb3531c7063b6b /gcc/config/xtensa/xtensa.h | |
parent | 4a8f7546197fedb2f4cfa5383c7c185b20b6d5a6 (diff) | |
download | gcc-d9886a9e04caf0bd1e9147d95af2ea8350ad8e1c.zip gcc-d9886a9e04caf0bd1e9147d95af2ea8350ad8e1c.tar.gz gcc-d9886a9e04caf0bd1e9147d95af2ea8350ad8e1c.tar.bz2 |
Convert MEMBER_TYPE_FORCES_BLK to target hook
* stor-layout.c (compute_record_mode): Replace
MEMBER_TYPE_FORCES_BLK with targetm.member_type_forces_blk.
(layout_type): Likewise.
* system.h: Poison MEMBER_TYPE_FORCES_BLK.
* target.def (member_type_forces_blk): New target hook.
* targhooks.c (default_member_type_forces_blk): New.
* targhooks.h (default_member_type_forces_blk): Likewise.
* doc/tm.texi.in (MEMBER_TYPE_FORCES_BLK): Removed.
(TARGET_MEMBER_TYPE_FORCES_BLK): New hook.
* doc/tm.texi: Regenerated.
* config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Removed.
* config/ia64/ia64.c (ia64_member_type_forces_blk): New
function.
(TARGET_MEMBER_TYPE_FORCES_BLK): New macro.
* config/rs6000/rs6000.c (TARGET_MEMBER_TYPE_FORCES_BLK): New
macro.
(rs6000_member_type_forces_blk): New function.
* config/rs6000/rs6000.h (MEMBER_TYPE_FORCES_BLK): Removed.
* config/xtensa/xtensa.c (xtensa_member_type_forces_blk): New
function.
(TARGET_MEMBER_TYPE_FORCES_BLK): New macro.
* config/xtensa/xtensa.h (MEMBER_TYPE_FORCES_BLK): Removed.
From-SVN: r190488
Diffstat (limited to 'gcc/config/xtensa/xtensa.h')
-rw-r--r-- | gcc/config/xtensa/xtensa.h | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h index b1a24c6..50e221a 100644 --- a/gcc/config/xtensa/xtensa.h +++ b/gcc/config/xtensa/xtensa.h @@ -165,15 +165,6 @@ extern unsigned xtensa_current_frame_size; bitfields and the structures that contain them. */ #define PCC_BITFIELD_TYPE_MATTERS 1 -/* Disable the use of word-sized or smaller complex modes for structures, - and for function arguments in particular, where they cause problems with - register a7. The xtensa_copy_incoming_a7 function assumes that there is - a single reference to an argument in a7, but with small complex modes the - real and imaginary components may be extracted separately, leading to two - uses of the register, only one of which would be replaced. */ -#define MEMBER_TYPE_FORCES_BLK(FIELD, MODE) \ - ((MODE) == CQImode || (MODE) == CHImode) - /* Align string constants and constructors to at least a word boundary. The typical use of this macro is to increase alignment for string constants to be word aligned so that 'strcpy' calls that copy |