This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PR 13772 candidate fix
- From: Andreas Schwab <schwab at suse dot de>
- To: "Zack Weinberg" <zack at codesourcery dot com>
- Cc: gcc-patches at gcc dot gnu dot org, gcc-bugzilla at gcc dot gnu dot org,Jim Wilson <wilson at specifixinc dot com>,Richard Henderson <rth at redhat dot com>
- Date: Thu, 22 Jan 2004 14:07:12 +0100
- Subject: Re: PR 13772 candidate fix
- References: <87oeswjmg9.fsf@egil.codesourcery.com><87k73kjlgs.fsf@egil.codesourcery.com>
"Zack Weinberg" <zack@codesourcery.com> writes:
> "Zack Weinberg" <zack@codesourcery.com> writes:
>
>> This is my candidate patch for the ia64/ada bootstrap failure
>> introduced by my TI/TFmode changes last week. It takes the entire
>> problem off reload's hands, by careful use of postincrement so that
>> the scratch register becomes unnecessary.
>
> Augh, several mistakes in that patch, please test this one instead.
Still doesn't fly.
stage1/xgcc -Bstage1/ -B/usr/local/ia64-suse-linux/bin/ -c -g -O2 -gnatpg -gnata -I- -I. -Iada -I../../gcc/ada ../../gcc/ada/opt.adb -o ada/opt.o
+===========================GNAT BUG DETECTED==============================+
| 3.5.0 20040122 (experimental) (ia64-suse-linux-gnu) GCC error: |
| in change_address_1, at emit-rtl.c:1849 |
#0 fancy_abort (file=0x4000000000d9f070 "../../gcc/emit-rtl.c", line=1849,
function=0x4000000000d9f580 "change_address_1")
at ../../gcc/diagnostic.c:584
#1 0x4000000000650c90 in change_address_1 (memref=0x20000000006b0ce0,
mode=DImode, addr=0x20000000006f6f20, validate=1)
at ../../gcc/emit-rtl.c:1849
#2 0x4000000000651890 in change_address (memref=0x20000000006b0ce0,
mode=DImode, addr=0x20000000006f6f20) at ../../gcc/emit-rtl.c:1869
#3 0x4000000000b102c0 in ia64_split_tmode (out=0x60000fffffffa168,
in=0x20000000006b0ce0, reversed=false, dead=false)
at ../../gcc/config/ia64/ia64.c:1379
#4 0x4000000000b108b0 in ia64_split_tmode_move (operands=0x6000000000065a28)
at ../../gcc/config/ia64/ia64.c:1517
#5 0x400000000090baf0 in gen_split_296 (operands=0x6000000000065a28)
at insn-emit.c:2289
#6 0x400000000090f9a0 in split_insns (x0=0x20000000006b0ec0,
insn=0x20000000006b0da0) at insn-recog.c:20387
#7 0x400000000065ac40 in try_split (pat=0x20000000006b0ec0,
trial=0x20000000006aa080, last=1) at ../../gcc/emit-rtl.c:3226
#8 0x40000000009ee160 in split_insn (insn=0x20000000006aa080)
at ../../gcc/recog.c:2689
#9 0x40000000009ee840 in split_all_insns (upd_life=0)
at ../../gcc/recog.c:2720
#10 0x4000000000a96f40 in rest_of_compilation (decl=0x200000000069f4d0)
at ../../gcc/toplev.c:3434
memref:
(mem/s:TI (post_modify:DI (reg/f:DI 36 loc4 [400])
(plus:DI (reg/f:DI 36 loc4 [400])
(const_int 8 [0x8]))) [4 opt__R47s+0 S16 A128])
Andreas.
--
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."