This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc 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]

Re: [PATCH roland/arm-aeabi] ARM: Move more aeabi routine magic out of Linux-specific directories


On Thu, 26 Jun 2014, Roland McGrath wrote:

> diff --git a/sysdeps/arm/nptl/Makefile b/sysdeps/arm/nptl/Makefile
> index 143850e..2c31e76 100644
> --- a/sysdeps/arm/nptl/Makefile
> +++ b/sysdeps/arm/nptl/Makefile
> @@ -18,3 +18,16 @@
>  ifeq ($(subdir),csu)
>  gen-as-const-headers += tcb-offsets.sym
>  endif
> +
> +ifeq ($(subdir),nptl)
> +libpthread-sysdep_routines += nptl-aeabi_unwind_cpp_pr1
> +libpthread-shared-only-routines += nptl-aeabi_unwind_cpp_pr1
> +
> +# This test relies on compiling part of the binary with EH information,
> +# part without, and unwinding through.  The .ARM.exidx tables have
> +# start addresses for EH regions, but no end addresses.  Every
> +# region an exception needs to propogate through must have unwind
> +# information, or a previous function's unwind table may be used
> +# by mistake.
> +tests := $(filter-out tst-cleanupx4,$(tests))

You appear to be copying this tests change, and the libpthread-* 
additions, from sysdeps/unix/sysv/linux/arm/Makefile but without removing 
it from that file, so leaving duplicate copies.  OK with the duplicates 
removed (of course the libc-do-syscall additions to libpthread-* need to 
remain behind in sysdeps/unix/sysv/linux/arm/Makefile), presuming that 
works.

(The unwind info issue described shouldn't apply with binutils postdating

2009-05-05  Paul Brook  <paul@codesourcery.com>

        * bfd-in.h (elf32_arm_fix_exidx_coverage): Add prototype.
        * bfd-in2.h: Regenerate.
        * elf32-arm.c (arm_unwind_edit_type, arm_unwind_table_edit): Define.
        (_arm_elf_section_data): Add text and exidx fields.
        (add_unwind_table_edit, get_arm_elf_section_data, adjust_exidx_size,
        insert_cantunwind_after, elf32_arm_fix_exidx_coverage, offset_prel31,
        copy_exidx_entry): New functions.
        (elf32_arm_write_section): Fixup .ARM.exidx contents.

which includes all supported binutils versions - but that's a separate 
matter, and it may be that the explicit cantunwind markers on intermediate 
frames aren't sufficient for the test to work, just for it not to use 
other functions' unwind info accidentally.)

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]