From 0eab7815089fe868b55e502c69d61d97346535af Mon Sep 17 00:00:00 2001 From: John David Anglin Date: Sun, 19 Nov 2006 18:24:21 +0000 Subject: [PATCH] re PR target/29114 (ICE when cross-compiling glibc for hppa on a 64bit host) PR target/29114 * pa.c (emit_move_sequence): Don't split constants with PLUS for modes larger than BITS_PER_WORD. From-SVN: r118993 --- gcc/ChangeLog | 6 ++++++ gcc/config/pa/pa.c | 1 + 2 files changed, 7 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f2aafc1e1000..4af29a58294f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2006-11-19 John David Anglin + + PR target/29114 + * pa.c (emit_move_sequence): Don't split constants with PLUS for modes + larger than BITS_PER_WORD. + 2006-11-18 John David Anglin PR fortran/27885 diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index 48b8ca4f5609..7c5f6f35e5de 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -1893,6 +1893,7 @@ emit_move_sequence (rtx *operands, enum machine_mode mode, rtx scratch_reg) because PLUS uses an 11-bit immediate and the insn sequence generated is not as efficient as the one using HIGH/LO_SUM. */ if (GET_CODE (operand1) == CONST_INT + && GET_MODE_BITSIZE (mode) <= BITS_PER_WORD && GET_MODE_BITSIZE (mode) <= HOST_BITS_PER_WIDE_INT && !insert) { -- 2.47.2