This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: ia64 jump tables in .rodata
- To: Richard Henderson <rth at redhat dot com>
- Subject: Re: ia64 jump tables in .rodata
- From: Matt Kraai <kraai at alumni dot carnegiemellon dot edu>
- Date: Wed, 22 Aug 2001 10:05:27 -0600
- Cc: gcc-patches at gcc dot gnu dot org
Howdy,
I believe that your patch causes a bootstrap failure. It calls
ADDR_VEC_ALIGN on PATTERN (NEXT_INSN (insn)), rather than on
NEXT_INSN (insn) as other callers do, which appears to cause a
segfault.
The following patch gets the bootstrap past this point, but I
didn't wait for it to finish. This is all on i686-pc-linux-gnu.
Matt
* final.c (final_scan_insn): Call ADDR_VEC_ALIGN on next insn.
Index: gcc/final.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/final.c,v
retrieving revision 1.201
diff -c -3 -p -r1.201 final.c
*** final.c 2001/08/22 14:35:04 1.201
--- final.c 2001/08/22 16:00:55
*************** final_scan_insn (insn, file, optimize, p
*** 2343,2349 ****
readonly_data_section ();
#ifdef ADDR_VEC_ALIGN
! log_align = ADDR_VEC_ALIGN (nextbody);
#else
log_align = exact_log2 (BIGGEST_ALIGNMENT / BITS_PER_UNIT);
#endif
--- 2343,2349 ----
readonly_data_section ();
#ifdef ADDR_VEC_ALIGN
! log_align = ADDR_VEC_ALIGN (NEXT_INSN (insn));
#else
log_align = exact_log2 (BIGGEST_ALIGNMENT / BITS_PER_UNIT);
#endif