Files
binutils-gdb/gdb/testsuite/gdb.disasm/t07_ari3.s
Tom de Vries 0f2cd53cf4 [gdb/testsuite] Handle missing .note.GNU-stack
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
2022-10-25 14:14:34 +02:00

175 lines
7.7 KiB
ArmAsm

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;arith_3
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
.h8300sx
.text
.global _start
_start:
neg.b r1h ;1781
neg.b @er1 ;7d101780
neg.b @(0x3:2,er1) ;017768181780
neg.b @er1+ ;01746c181780
neg.b @-er1 ;01776c181780
neg.b @+er1 ;01756c181780
neg.b @er1- ;01766c181780
neg.b @(0x1234:16,er1) ;01746e1812341780
neg.b @(0x12345678:32,er1) ;78146a28123456781780
neg.b @(0x1234:16,r2l.b) ;01756e2812341780
neg.b @(0x1234:16,r2.w) ;01766e2812341780
neg.b @(0x1234:16,er2.l) ;01776e2812341780
neg.b @(0x12345678:32,r2l.b) ;78256a28123456781780
neg.b @(0x12345678:32,r2.w) ;78266a28123456781780
neg.b @(0x12345678:32,er2.l) ;78276a28123456781780
neg.b @0xffffff12:8 ;7f121780
neg.b @0x1234:16 ;6a1812341780
neg.b @0x12345678:32 ;6a38123456781780
neg.w r1 ;1791
neg.w @er1 ;7d901790
neg.w @(0x6:2,er1) ;015769181790
neg.w @er1+ ;01546d181790
neg.w @-er1 ;01576d181790
neg.w @+er1 ;01556d181790
neg.w @er1- ;01566d181790
neg.w @(0x1234:16,er1) ;01546f1812341790
neg.w @(0x12345678:32,er1) ;78146b28123456781790
neg.w @(0x1234:16,r2l.b) ;01556f2812341790
neg.w @(0x1234:16,r2.w) ;01566f2812341790
neg.w @(0x1234:16,er2.l) ;01576f2812341790
neg.w @(0x12345678:32,r2l.b) ;78256b28123456781790
neg.w @(0x12345678:32,r2.w) ;78266b28123456781790
neg.w @(0x12345678:32,er2.l) ;78276b28123456781790
neg.w @0x1234:16 ;6b1812341790
neg.w @0x12345678:32 ;6b38123456781790
neg.l er1 ;17b1
neg.l @er1 ;0104691817b0
neg.l @(0xc:2,er1) ;0107691817b0
neg.l @er1+ ;01046d1817b0
neg.l @-er1 ;01076d1817b0
neg.l @+er1 ;01056d1817b0
neg.l @er1- ;01066d1817b0
neg.l @(0x1234:16,er1) ;01046f18123417b0
neg.l @(0x12345678:32,er1) ;78946b281234567817b0
neg.l @(0x1234:16,r2l.b) ;01056f28123417b0
neg.l @(0x1234:16,r2.w) ;01066f28123417b0
neg.l @(0x1234:16,er2.l) ;01076f28123417b0
neg.l @(0x12345678:32,r2l.b) ;78a56b281234567817b0
neg.l @(0x12345678:32,r2.w) ;78a66b281234567817b0
neg.l @(0x12345678:32,er2.l) ;78a76b281234567817b0
neg.l @0x1234:16 ;01046b08123417b0
neg.l @0x12345678:32 ;01046b281234567817b0
tas @er1 ;01e07b1c
extu.w r1 ;1751
extu.w @er1 ;7d901750
extu.w @(0x6:2,er1) ;015769181750
extu.w @er1+ ;01546d181750
extu.w @-er1 ;01576d181750
extu.w @+er1 ;01556d181750
extu.w @er1- ;01566d181750
extu.w @(0x1234:16,er1) ;01546f1812341750
extu.w @(0x12345678:32,er1) ;78146b28123456781750
extu.w @(0x1234:16,r2l.b) ;01556f2812341750
extu.w @(0x1234:16,r2.w) ;01566f2812341750
extu.w @(0x1234:16,er2.l) ;01576f2812341750
extu.w @(0x12345678:32,r2l.b) ;78256b28123456781750
extu.w @(0x12345678:32,r2.w) ;78266b28123456781750
extu.w @(0x12345678:32,er2.l) ;78276b28123456781750
extu.w @0x1234:16 ;6b1812341750
extu.w @0x12345678:32 ;6b38123456781750
extu.l er1 ;1771
extu.l @er1 ;010469181770
extu.l @(0xc:2,er1) ;010769181770
extu.l @er1+ ;01046d181770
extu.l @-er1 ;01076d181770
extu.l @+er1 ;01056d181770
extu.l @er1- ;01066d181770
extu.l @(0x1234:16,er1) ;01046f1812341770
extu.l @(0x12345678:32,er1) ;78946b28123456781770
extu.l @(0x1234:16,r2l.b) ;01056f2812341770
extu.l @(0x1234:16,r2.w) ;01066f2812341770
extu.l @(0x1234:16,er2.l) ;01076f2812341770
extu.l @(0x12345678:32,r2l.b) ;78a56b28123456781770
extu.l @(0x12345678:32,r2.w) ;78a66b28123456781770
extu.l @(0x12345678:32,er2.l) ;78a76b28123456781770
extu.l @0x1234:16 ;01046b0812341770
extu.l @0x12345678:32 ;01046b28123456781770
extu.l #2,er1 ;1761
extu.l #2,@er1 ;010469181760
extu.l #2,@(0xc:2,er1) ;010769181760
extu.l #2,@er1+ ;01046d181760
extu.l #2,@-er1 ;01076d181760
extu.l #2,@+er1 ;01056d181760
extu.l #2,@er1- ;01066d181760
extu.l #2,@(0x1234:16,er1) ;01046f1812341760
extu.l #2,@(0x12345678:32,er1) ;78946b28123456781760
extu.l #2,@(0x1234:16,r2l.b) ;01056f2812341760
extu.l #2,@(0x1234:16,r2.w) ;01066f2812341760
extu.l #2,@(0x1234:16,er2.l) ;01076f2812341760
extu.l #2,@(0x12345678:32,r2l.b) ;78a56b28123456781760
extu.l #2,@(0x12345678:32,r2.w) ;78a66b28123456781760
extu.l #2,@(0x12345678:32,er2.l) ;78a76b28123456781760
extu.l #2,@0x1234:16 ;01046b0812341760
extu.l #2,@0x12345678:32 ;01046b28123456781760
exts.w r1 ;17d1
exts.w @er1 ;7d9017d0
exts.w @(0x6:2,er1) ;0157691817d0
exts.w @er1+ ;01546d1817d0
exts.w @-er1 ;01576d1817d0
exts.w @+er1 ;01556d1817d0
exts.w @er1- ;01566d1817d0
exts.w @(0x1234:16,er1) ;01546f18123417d0
exts.w @(0x12345678:32,er1) ;78146b281234567817d0
exts.w @(0x1234:16,r2l.b) ;01556f28123417d0
exts.w @(0x1234:16,r2.w) ;01566f28123417d0
exts.w @(0x1234:16,er2.l) ;01576f28123417d0
exts.w @(0x12345678:32,r2l.b) ;78256b281234567817d0
exts.w @(0x12345678:32,r2.w) ;78266b281234567817d0
exts.w @(0x12345678:32,er2.l) ;78276b281234567817d0
exts.w @0x1234:16 ;6b18123417d0
exts.w @0x12345678:32 ;6b381234567817d0
exts.l er1 ;17f1
exts.l @er1 ;0104691817f0
exts.l @(0xc:2,er1) ;0107691817f0
exts.l @er1+ ;01046d1817f0
exts.l @-er1 ;01076d1817f0
exts.l @+er1 ;01056d1817f0
exts.l @er1- ;01066d1817f0
exts.l @(0x1234:16,er1) ;01046f18123417f0
exts.l @(0x12345678:32,er1) ;78946b281234567817f0
exts.l @(0x1234:16,r2l.b) ;01056f28123417f0
exts.l @(0x1234:16,r2.w) ;01066f28123417f0
exts.l @(0x1234:16,er2.l) ;01076f28123417f0
exts.l @(0x12345678:32,r2l.b) ;78a56b281234567817f0
exts.l @(0x12345678:32,r2.w) ;78a66b281234567817f0
exts.l @(0x12345678:32,er2.l) ;78a76b281234567817f0
exts.l @0x1234:16 ;01046b08123417f0
exts.l @0x12345678:32 ;01046b281234567817f0
exts.l #2,er1 ;17e1
exts.l #2,@er1 ;0104691817e0
exts.l #2,@(0xc:2,er1) ;0107691817e0
exts.l #2,@er1+ ;01046d1817e0
exts.l #2,@-er1 ;01076d1817e0
exts.l #2,@+er1 ;01056d1817e0
exts.l #2,@er1- ;01066d1817e0
exts.l #2,@(0x1234:16,er1) ;01046f18123417e0
exts.l #2,@(0x12345678:32,er1) ;78946b281234567817e0
exts.l #2,@(0x1234:16,r2l.b) ;01056f28123417e0
exts.l #2,@(0x1234:16,r2.w) ;01066f28123417e0
exts.l #2,@(0x1234:16,er2.l) ;01076f28123417e0
exts.l #2,@(0x12345678:32,r2l.b) ;78a56b281234567817e0
exts.l #2,@(0x12345678:32,r2.w) ;78a66b281234567817e0
exts.l #2,@(0x12345678:32,er2.l) ;78a76b281234567817e0
exts.l #2,@0x1234:16 ;01046b08123417e0
exts.l #2,@0x12345678:32 ;01046b281234567817e0
.end
.section .note.GNU-stack,"",@progbits