diff --git a/gas/testsuite/gas/elf/groupauto.s b/gas/testsuite/gas/elf/groupauto.s new file mode 100644 index 0000000000..ccaf60e84e --- /dev/null +++ b/gas/testsuite/gas/elf/groupauto.s @@ -0,0 +1,17 @@ + .text + .byte 1 + .section .foo,"a?","progbits" + .byte 1 + + .section .text,"axG",%progbits,some_group,comdat + .byte 1 + .pushsection .note.bar,"?","note" + .4byte 1f-0f, 3f-2f, 123 +0: .asciz "somevendor" +1: .balign 4 +2: .byte 1 + .uleb128 5f-4f +3: .balign 4 + .popsection +4: .byte 2 +5: .byte 3 diff --git a/gas/testsuite/gas/elf/groupautoa.d b/gas/testsuite/gas/elf/groupautoa.d new file mode 100644 index 0000000000..a34c35cfa6 --- /dev/null +++ b/gas/testsuite/gas/elf/groupautoa.d @@ -0,0 +1,15 @@ +#readelf: -SW +#name: automatic section group +#source: groupauto.s + +#... +[ ]*\[.*\][ ]+some_group[ ]+GROUP.* +#... +[ ]*\[.*\][ ]+\.text[ ]+PROGBITS.*[ ]+AX[ ]+.* +#... +[ ]*\[.*\][ ]+\.foo[ ]+PROGBITS.*[ ]+A[ ]+.* +#... +[ ]*\[.*\][ ]+\.text[ ]+PROGBITS.*[ ]+AXG[ ]+.* +#... +[ ]*\[.*\][ ]+\.note.bar[ ]+NOTE.*[ ]+G[ ]+.* +#pass diff --git a/gas/testsuite/gas/elf/groupautob.d b/gas/testsuite/gas/elf/groupautob.d new file mode 100644 index 0000000000..0ff100725a --- /dev/null +++ b/gas/testsuite/gas/elf/groupautob.d @@ -0,0 +1,10 @@ +#readelf: -g +#name: automatic section group +#source: groupauto.s + +#... +COMDAT group section \[ 1\] `some_group' \[some_group\] contains 2 sections: +[ ]+\[Index\][ ]+Name +[ ]+\[.*\][ ]+.text +[ ]+\[.*\][ ]+.note.bar +#pass