On 12/05/2011 07:38 PM, H.J. Lu wrote:
On Mon, Dec 5, 2011 at 5:42 PM, Andrew Pinski
<andrew.pin...@caviumnetworks.com>  wrote:
Hi,
  Like the .ctors array, __do_global_dtors_aux_fini_array_entry and
__frame_dummy_init_array_entry arrays need a specific alignment.  This
patch fixes those two arrays.  This patch fixes the bootstrap on
mips64-linux-gnu.

Bootstrapped on mips64-linux-gnu.
Bootstrapped and tested on x86-linux-gnu with no regressions.

Thanks,
Andrew Pinski

libgcc/ChangeLog:
* crtstuff.c (__do_global_dtors_aux_fini_array_entry): Align to the
size of func_ptr.
(__frame_dummy_init_array_entry): Likewise.

.eh_frame section has similar problem:

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27576


But you have known about that for over five years and x86_64 still seems to work, so it must not really be hurting anything.

Andrew's patch fixes bad code in libgcc which causes bootstrap breakage on MIPS when used with recent binutils releases. So I would propose that it be considered as-is, without changing the .eh_frame bits.

If someone wants to change the .eh_frame things in crtstuff.c, they are free to do that, but it shouldn't really be gating factor for this patch.

David Daney

Reply via email to