diff options
author | Joseph Myers <joseph@codesourcery.com> | 2006-12-01 02:25:22 +0000 |
---|---|---|
committer | Joseph Myers <jsm28@gcc.gnu.org> | 2006-12-01 02:25:22 +0000 |
commit | 8521c41417b57bf46fc57efccf3befaf6fc0a712 (patch) | |
tree | 3b6620756f6468172f9d6c83a27617279a0da87c /gcc/defaults.h | |
parent | 877c1c555fdcc46467c9fe9e9dccb8aaf8efe178 (diff) | |
download | gcc-8521c41417b57bf46fc57efccf3befaf6fc0a712.tar.gz |
re PR target/24036 ([e500] ICE in subreg_offset_representable_p, at rtlanal.c:3143)
2006-12-01 Joseph Myers <joseph@codesourcery.com>
David Edelsohn <edelsohn@gnu.org>
PR target/24036
* doc/tm.texi (HARD_REGNO_NREGS_HAS_PADDING,
HARD_REGNO_NREGS_WITH_PADDING): Document new target macros.
* defaults.h (HARD_REGNO_NREGS_HAS_PADDING,
HARD_REGNO_NREGS_WITH_PADDING): Define.
* config/i386/i386.h (HARD_REGNO_NREGS_HAS_PADDING,
HARD_REGNO_NREGS_WITH_PADDING): Define.
* rtlanal.c (subreg_regno_offset, subreg_offset_representable_p):
Use new macros to detect modes with holes; do not look at integer
units.
(subreg_offset_representable_p): Check for and disallow cases
where the modes use different numbers of bits from registers.
* config/rs6000/rs6000.c (rs6000_emit_move): Handle TFmode
constant for soft-float.
(rs6000_hard_regno_nregs): Use UNITS_PER_FP_WORD for e500 GPRs
containing doubles.
(rs6000_split_multireg_move): Use DFmode reg_mode for TFmode moves
in E500 double case.
* config/rs6000/rs6000.md (movtf): Allow soft-float.
(movtf_softfloat): New.
Co-Authored-By: David Edelsohn <edelsohn@gnu.org>
From-SVN: r119395
Diffstat (limited to 'gcc/defaults.h')
-rw-r--r-- | gcc/defaults.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/defaults.h b/gcc/defaults.h index 3d470e94730..6af5f17bd7d 100644 --- a/gcc/defaults.h +++ b/gcc/defaults.h @@ -895,4 +895,9 @@ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA #define INCOMING_FRAME_SP_OFFSET 0 #endif +#ifndef HARD_REGNO_NREGS_HAS_PADDING +#define HARD_REGNO_NREGS_HAS_PADDING(REGNO, MODE) 0 +#define HARD_REGNO_NREGS_WITH_PADDING(REGNO, MODE) -1 +#endif + #endif /* ! GCC_DEFAULTS_H */ |