This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Unreviewed patches^2
- From: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- To: gcc-patches at gcc dot gnu dot org
- Cc: geoffk at geoffk dot org, kazu at cs dot umass dot edu
- Date: Tue, 25 Feb 2003 15:26:45 -0500 (EST)
- Subject: Re: Unreviewed patches^2
> > http://gcc.gnu.org/ml/gcc-patches/2003-02/msg00144.html
> > GCSE into REG_EQUAL notes
>
> I think this is OK. I have a slight concern that it could prevent
> some optimisations (for instance, if it would actually have been
> better to not use the REG_EQUAL note), but I think that'd be best fixed
> in simplify_replace_rtx if it can actually happen.
This patch causes a bootstrap failure in stage2 on hppa2.0w-hp-hpux11.11
and hppa-unknown-linux-gnu. The segmentation fault on hppa2.0w-hp-hpux11.11
occurs here:
stage1/xgcc -Bstage1/ -B/opt/gnu/hppa2.0w-hp-hpux11.11/bin/ -c -g -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional -pedantic -Wno-long-long -fno-common -Werror -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -I. -I../../gcc/gcc -I../../gcc/gcc/. -I../../gcc/gcc/config -I../../gcc/gcc/../include ../../gcc/gcc/fix-header.c -o fix-header.o
../../gcc/gcc/fix-header.c: In function `check_protection':
../../gcc/gcc/fix-header.c:1058: internal compiler error: Segmentation fault
This is the insn in cprop_jump that causes the above segmentation fault:
(insn 109 108 111 8 7a8fd210 (set (reg:SI 125)
(reg:SI 28 %r28)) 37 {*pa.md:2251} (nil)
(insn_list:REG_RETVAL 104 (expr_list:REG_EQUAL (expr_list (use (mem:BLK (scratch) [0 A8]))
(expr_list (symbol_ref/v:SI ("@memcmp"))
(expr_list (const_int 7 [0x7])
(expr_list (symbol_ref/v/f:SI ("*L$C1937"))
(expr_list (mem/s:SI (reg/f:SI 116) [5 buf.base+0 S4 A32])
(nil))))))
(nil))))
The fault seen on hppa-linux occurs building ada. Both are fixed by
reversing the above patch.
Dave
--
J. David Anglin dave dot anglin at nrc-cnrc dot gc dot ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)