diff options
author | Mickael Guene <mickael.guene@st.com> | 2015-12-22 14:12:35 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2015-12-22 14:12:35 +0000 |
commit | ac4c9b0459fe89f2b84bf8b18a3bf86bf569b7d1 (patch) | |
tree | cc76d51d940c65bd0986f73e55a447f12b65652d /ld/testsuite/ld-arm/arm-elf.exp | |
parent | 6d265cb4a956310d2cae231ac63a37e11fe376e1 (diff) | |
download | binutils-ac4c9b0459fe89f2b84bf8b18a3bf86bf569b7d1.zip binutils-ac4c9b0459fe89f2b84bf8b18a3bf86bf569b7d1.tar.gz binutils-ac4c9b0459fe89f2b84bf8b18a3bf86bf569b7d1.tar.bz2 |
Add support for ARM's NOREAD section flag.
include/elf
* arm.h: Add arm SHF_ARM_NOREAD section flag.
bfd * bfd-in2.h: Regenerate.
* section.c: Add SEC_ELF_NOREAD.
* elf32-arm.c (elf32_arm_post_process_headers): Only set
PF_X attribute if a segment only contains section with
SHF_ARM_NOREAD flag.
(elf32_arm_fake_sections): Add SEC_ELF_NOREAD conversion.
(elf32_arm_section_flags): New function to convert SHF_ARM_NOREAD
to bfd flag.
(elf32_arm_lookup_section_flags): New function to allow
INPUT_SECTION_FLAGS directive with SHF_ARM_NOREAD flag.
(elf32_arm_special_sections): Add special sections array
to catch section prefix by '.text.noread' pattern.
ld/testsuite
* ld-arm/arm-elf.exp: New tests.
* ld-arm/thumb1-input-section-flag-match.d: New
* ld-arm/thumb1-input-section-flag-match.s: New
* ld-arm/thumb1-noread-not-present-mixing-two-section.d: New
* ld-arm/thumb1-noread-not-present-mixing-two-section.s: New
* ld-arm/thumb1-noread-present-one-section.d: New
* ld-arm/thumb1-noread-present-one-section.s: New
* ld-arm/thumb1-noread-present-two-section.d: New
* ld-arm/thumb1-noread-present-two-section.s: New
binutils
* readelf.c (get_elf_section_flags): Add support for ARM specific
section flags.
Diffstat (limited to 'ld/testsuite/ld-arm/arm-elf.exp')
-rw-r--r-- | ld/testsuite/ld-arm/arm-elf.exp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp index 23c9e57..a970dba 100644 --- a/ld/testsuite/ld-arm/arm-elf.exp +++ b/ld/testsuite/ld-arm/arm-elf.exp @@ -299,6 +299,18 @@ set armelftests_nonacl { {"TLS shared library gdesc local" "--no-fix-arm1176 -shared -T arm-dyn.ld" "" "" {tls-lib-loc.s} {{objdump -fdw tls-lib-loc.d} {objdump -Rw tls-lib-loc.r}} "tls-lib-loc.so"} + {"PF_R not present when one noread section" "-static -T arm.ld" "" "" {thumb1-noread-present-one-section.s} + {{readelf -l thumb1-noread-present-one-section.d}} + "thumb1-noread-present-one-section"} + {"PF_R not present when two noread sections" "-static -T arm.ld" "" "" {thumb1-noread-present-two-section.s} + {{readelf -l thumb1-noread-present-two-section.d}} + "thumb1-noread-present-two-section"} + {"PF_R present when mixing noread section with read section" "-static -T arm.ld" "" "" {thumb1-noread-not-present-mixing-two-section.s} + {{readelf -l thumb1-noread-not-present-mixing-two-section.d}} + "thumb1-noread-not-present-mixing-two-section"} + {"Match SHF_ARM_NOREAD with INPUT_SECTION_FLAGS directive" "-static -T arm_noread.ld" "" "" {thumb1-input-section-flag-match.s} + {{readelf -l thumb1-input-section-flag-match.d}} + "thumb1-noread-not-present-mixing-two-section"} } run_ld_link_tests $armelftests_common |