
On openSUSE Tumbleweed I run into this for the dwarf assembly test-cases, and
some hardcoded assembly test-cases:
...
Running gdb.dwarf2/fission-absolute-dwo.exp ...
gdb compile failed, ld: warning: fission-absolute-dwo.o: \
missing .note.GNU-stack section implies executable stack
ld: NOTE: This behaviour is deprecated and will be removed in a future \
version of the linker
=== gdb Summary ===
# of untested testcases 1
...
Fix the dwarf assembly test-cases by adding the missing .note.GNU-stack in
proc Dwarf::assemble.
Fix the hard-coded test-cases using this command:
...
$ for f in $(find gdb/testsuite/gdb.* -name *.S); do
if ! grep -q note.GNU-stack $f; then
echo -e "\t.section\t.note.GNU-stack,\"\",@progbits" >> $f;
fi;
done
...
Likewise for .s files, and gdb/testsuite/lib/my-syscalls.S.
The idiom for arm seems to be to use %progbits instead, see commit 9a5911c08b
("gdb/testsuite/gdb.dwarf2: Replace @ with % for ARM compatability"), so
hand-edit gdb/testsuite/gdb.arch/arm-disp-step.S to use %progbits instead.
Note that dwarf assembly testcases use %progbits as decided by proc _section.
Tested on x86_64-linux.
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29674
59 lines
923 B
ArmAsm
59 lines
923 B
ArmAsm
.text
|
|
.align 8
|
|
.globl foo
|
|
.type foo, @function
|
|
foo:
|
|
.PROC
|
|
.CALLINFO FRAME=64,NO_CALLS,SAVE_SP,ENTRY_GR=3
|
|
.ENTRY
|
|
copy %r3,%r1
|
|
copy %r30,%r3
|
|
stwm %r1,64(%r30)
|
|
stw %r26,-36(%r3)
|
|
ldw -36(%r3),%r19
|
|
copy %r19,%r28
|
|
ldo 64(%r3),%r30
|
|
ldwm -64(%r30),%r3
|
|
bv,n %r0(%r2)
|
|
.EXIT
|
|
.PROCEND
|
|
|
|
.globl bar
|
|
.type bar, @function
|
|
bar:
|
|
.PROC
|
|
.CALLINFO FRAME=64,NO_CALLS,SAVE_SP,ENTRY_GR=3
|
|
.ENTRY
|
|
copy %r3,%r1
|
|
copy %r30,%r3
|
|
stwm %r1,64(%r30)
|
|
ldo 64(%r3),%r30
|
|
ldwm -64(%r30),%r3
|
|
bv,n %r0(%r2)
|
|
.EXIT
|
|
.PROCEND
|
|
|
|
.globl main
|
|
.type main, @function
|
|
main:
|
|
.PROC
|
|
.CALLINFO FRAME=64,CALLS,SAVE_RP,SAVE_SP,ENTRY_GR=3
|
|
.ENTRY
|
|
stw %r2,-20(%r30)
|
|
copy %r3,%r1
|
|
copy %r30,%r3
|
|
stwm %r1,64(%r30)
|
|
stw %r26,-36(%r3)
|
|
stw %r25,-40(%r3)
|
|
ldw -36(%r3),%r26
|
|
bl foo,%r2
|
|
nop
|
|
copy %r28,%r19
|
|
copy %r19,%r28
|
|
ldw -20(%r3),%r2
|
|
ldo 64(%r3),%r30
|
|
ldwm -64(%r30),%r3
|
|
bv,n %r0(%r2)
|
|
.EXIT
|
|
.PROCEND
|
|
.section .note.GNU-stack,"",@progbits
|