[PATCH v2] ARM: Replace catch of noread sections by section name by a section attribute letter.
Nick Clifton
nickc@redhat.com
Wed Jan 20 12:55:00 GMT 2016
Hi Mickael,
> bfd/ChangeLog:
> 2016-01-12 Mickael Guene <mickael.guene@st.com>
>
> * elf32-arm.c ((elf32_arm_special_sections): Remove catch of noread
> section using '.text.noread' pattern.
>
> gas/ChangeLog:
> 2016-01-12 Mickael Guene <mickael.guene@st.com>
>
> * config/obj-elf.c (obj_elf_change_section) : Allow arm section with
> SHF_ARM_NOREAD section flag.
> * config/tc-arm.h (md_elf_section_letter) : Implement this hook to
> handle letter 'y'.
> (arm_elf_section_letter) : Declare it.
> * config/tc-arm.c (arm_elf_section_letter): Handle letter 'y' to set
> SHF_ARM_NOREAD section flag.
> * doc/c-arm.texi (ARM section attribute 'y'): Document it.
>
> gas/testsuite/ChangeLog:
> 2016-01-12 Terry Guo <terry.guo@arm.com>
>
> * gas/arm/section-execute-only.s: New test case.
> * gas/arm/section-execute-only.d: Expected output.
>
> ld/testsuite/ChangeLog:
> 2016-01-12 Mickael Guene <mickael.guene@st.com>
>
> * ld-arm/thumb1-noread-not-present-mixing-two-section.s: Add 'y'
> attribute usage.
> * ld-arm/thumb1-noread-present-one-section.s: Likewise.
> * ld-arm/thumb1-noread-present-two-section.s: Likewise.
> * ld-arm/thumb1-input-section-flag-match.s: Likewise.
>
> binutils/ChangeLog:
> 2016-01-19 Mickael Guene <mickael.guene@st.com>
>
> * readelf.c (get_elf_section_flags): Display y letter for section
> with SHF_ARM_NOREAD section flag in readelf section output.
> (process_section_headers): Add y letter in readelf section output
> key mapping for ARM architecture.
Approved and applied. I had to make one small fix however: The function arm_elf_section_letter was being used in gas even when not targeting an ELF based system (eg arm-pe). I took care of this for you.
Also you missed one small update: objdump did not recognise or display the new section attribute. I included a fix for this in the patch that was checked in.
Cheers
Nick
More information about the Binutils
mailing list