diff options
author | Kai Tietz <kai.tietz@onevision.com> | 2011-09-27 18:57:22 +0000 |
---|---|---|
committer | Kai Tietz <kai.tietz@onevision.com> | 2011-09-27 18:57:22 +0000 |
commit | c348982892627774491a14481a27f6e6ec90fc20 (patch) | |
tree | e148f45a5d91906aa0c8be4eabaf6789a71c470e /gas | |
parent | 2b914c2b41098b857b931b753aabfdef525f10da (diff) | |
download | gdb-c348982892627774491a14481a27f6e6ec90fc20.zip gdb-c348982892627774491a14481a27f6e6ec90fc20.tar.gz gdb-c348982892627774491a14481a27f6e6ec90fc20.tar.bz2 |
2011-09-27 Kai Tietz <ktietz@redhat.com>
* config/obj-coff.c (obj_coff_section): Add 'e' as specifier
for marking section SEC_EXCLUDE.
2011-09-27 Kai Tietz <ktietz@redhat.com>
* gas/pe/pe.exp: Add new testcase.
* gas/pe/section-exclude.d: New file.
* gas/pe/section-exclude.s: New file.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/config/obj-coff.c | 6 | ||||
-rw-r--r-- | gas/testsuite/ChangeLog | 6 | ||||
-rwxr-xr-x | gas/testsuite/gas/pe/pe.exp | 1 | ||||
-rw-r--r-- | gas/testsuite/gas/pe/section-exclude.d | 20 | ||||
-rw-r--r-- | gas/testsuite/gas/pe/section-exclude.s | 2 |
6 files changed, 40 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 4d0d622..79f7cac 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2011-09-27 Kai Tietz <ktietz@redhat.com> + + * config/obj-coff.c (obj_coff_section): Add 'e' as specifier + for marking section SEC_EXCLUDE. + 2011-09-22 Tristan Gingold <gingold@adacore.com> * NEWS: Add marker for 2.22. diff --git a/gas/config/obj-coff.c b/gas/config/obj-coff.c index d481026..a15d3a2 100644 --- a/gas/config/obj-coff.c +++ b/gas/config/obj-coff.c @@ -1531,6 +1531,7 @@ coff_frob_file_after_relocs (void) 'o' for over 'w' for data 'd' (apparently m88k for data) + 'e' for exclude 'x' for text 'r' for read-only data 's' for shared data (PE) @@ -1598,6 +1599,11 @@ obj_coff_section (int ignore ATTRIBUTE_UNUSED) } switch (attr) { + case 'e': + /* Exclude section from linking. */ + flags |= SEC_EXCLUDE; + break; + case 'b': /* Uninitialised data section. */ flags |= SEC_ALLOC; diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 9df84ae..17c786f 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2011-09-27 Kai Tietz <ktietz@redhat.com> + + * gas/pe/pe.exp: Add new testcase. + * gas/pe/section-exclude.d: New file. + * gas/pe/section-exclude.s: New file. + 2011-09-27 David S. Miller <davem@davemloft.net> * gas/sparc/hpcvis3.s: Update to use float reg for random insn. diff --git a/gas/testsuite/gas/pe/pe.exp b/gas/testsuite/gas/pe/pe.exp index d5506e9..870df11 100755 --- a/gas/testsuite/gas/pe/pe.exp +++ b/gas/testsuite/gas/pe/pe.exp @@ -35,6 +35,7 @@ run_dump_test "aligncomm-d" run_dump_test "section-align-1" run_dump_test "section-align-3" +run_dump_test "section-exclude" # SEH related tests diff --git a/gas/testsuite/gas/pe/section-exclude.d b/gas/testsuite/gas/pe/section-exclude.d new file mode 100644 index 0000000..02b3bd5 --- /dev/null +++ b/gas/testsuite/gas/pe/section-exclude.d @@ -0,0 +1,20 @@ +#objdump: -h +#name: section exclude + +# Test that 'e' works in .section directives. + +.*: .* + +Sections: +Idx Name *Size *VMA *LMA *File off *Algn + 3 .foo1 00000004 0000000000000000 0000000000000000 000000b4 2**2 + CONTENTS, EXCLUDE + 0 \.text 0*0000000 0*0000000 0*0000000 0*0000000 2\*\*[24] +.* + 1 \.data 0*0000000 0*0000000 0*0000000 0*0000000 2\*\*[24] +.* + 2 \.bss 0*0000000 0*0000000 0*0000000 0*0000000 2\*\*[24] +.* + 3 \.foo1 0*0000004 0*0000000 0*0000000 0*0000000 2\*\*[24] +.*CONTENS, EXCLUDE +.* diff --git a/gas/testsuite/gas/pe/section-exclude.s b/gas/testsuite/gas/pe/section-exclude.s new file mode 100644 index 0000000..f623846 --- /dev/null +++ b/gas/testsuite/gas/pe/section-exclude.s @@ -0,0 +1,2 @@ + .section .foo1,"e" + .byte 0,0,0,0 |