This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
peep2_next_insn returns PEEP2_EOB
- From: Kaz Kojima <kkojima at rr dot iij4u dot or dot jp>
- To: gcc at gcc dot gnu dot org
- Cc: joern dot rennecke at st dot com, aoliva at redhat dot com
- Date: Thu, 20 Oct 2005 23:55:30 +0900 (JST)
- Subject: peep2_next_insn returns PEEP2_EOB
Hi,
I've got an ICE during glibc build with the current mainline on
sh4-unknown-linux-gnu:
../sysdeps/ieee754/flt-32/k_rem_pio2f.c: In function '__kernel_rem_pio2f':
../sysdeps/ieee754/flt-32/k_rem_pio2f.c:213: internal compiler error: Segmentation fault
It doesn't fail with 20051003 compiler. The segfault occurs in
insn-recog.c at the code like
...
tem = peep2_next_insn (2);
x1 = PATTERN (tem);
...
where peep2_next_insn (2) returns (pc) which is the PEEP2_EOB marker. It
looks quite similar to that in PR target/23832.
It seems that the above two lines of code are generated by chage_state
of genrecog.c, though I know almost nothing about these materials.
Is it assumed that peep2_next_insn never return PEEP2_EOB in change_state?
If so, what target bug is most likely?
Regards,
kaz