This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi Ian, This patch make the test initpri3b a no-op for the ARM target. The test uses the --no-ctors-in-init-array option. This test cannot pass on ARM target because it does not use .ctors and .dtors sections. The function __do_global_ctors_aux() in crtBegin*.o does not check the constructor on ARM because all constructors should be in the .init_array section. #ifdef INIT_ARRAY_SECTION_ASM_OP /* If we are using .init_array, there is nothing to do. */ #elif defined(INIT_SECTION_ASM_OP) #ifdef OBJECT_FORMAT_ELF static void __attribute__((used)) __do_global_ctors_aux (void) { func_ptr *p; for (p = __CTOR_END__ - 1; *p != (func_ptr) -1; p--) (*p) (); } The macro INIT_ARRAY_SECTION_ASM_OP is defined in gcc/config/arm/bpabi.h: /* The BPABI specifies the use of .{init,fini}_array. Therefore, we do not want GCC to put anything into the .{init,fini} sections. */ #undef INIT_SECTION_ASM_OP #undef FINI_SECTION_ASM_OP #define INIT_ARRAY_SECTION_ASM_OP ARM_EABI_CTORS_SECTION_OP #define FINI_ARRAY_SECTION_ASM_OP ARM_EABI_DTORS_SECTION_OP -Doug ----------------------------------------------- 2012-03-16 Doug Kwan <dougkwan@google.com> * testsuite/Makefile.am (initpri3b_CFLAGS): New. * testsuite/Makefile.in: Regenerate. * testsuite/initpri3.c: Skip check for ARM target if --no-ctors-in-init-array linker option is used.
Attachment:
patch.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |