aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.asm
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/testsuite/gdb.asm')
-rw-r--r--gdb/testsuite/gdb.asm/asm-source.exp4
-rw-r--r--gdb/testsuite/gdb.asm/x86_64.inc39
2 files changed, 43 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.asm/asm-source.exp b/gdb/testsuite/gdb.asm/asm-source.exp
index f6ce1c7..f10f4ae 100644
--- a/gdb/testsuite/gdb.asm/asm-source.exp
+++ b/gdb/testsuite/gdb.asm/asm-source.exp
@@ -47,6 +47,10 @@ if [istarget "d10v-*-*"] then {
if [istarget "s390-*-*"] then {
set asm-arch s390
}
+if [istarget "x86_64-*-*"] then {
+ set asm-arch x86_64
+ set asm-flags "-gdwarf2 -I${srcdir}/${subdir} -I${objdir}/${subdir}"
+}
if [istarget "i\[3456\]86-*-*"] then {
set asm-arch i386
}
diff --git a/gdb/testsuite/gdb.asm/x86_64.inc b/gdb/testsuite/gdb.asm/x86_64.inc
new file mode 100644
index 0000000..5bcaeae
--- /dev/null
+++ b/gdb/testsuite/gdb.asm/x86_64.inc
@@ -0,0 +1,39 @@
+ comment "subroutine prologue"
+ .macro gdbasm_enter
+ push %rbp
+ mov %rsp,%rbp
+ .endm
+
+ comment "subroutine epilogue"
+ .macro gdbasm_leave
+ pop %rbp
+ ret
+ .endm
+
+ .macro gdbasm_call subr
+ call \subr
+ .endm
+
+ .macro gdbasm_several_nops
+ nop
+ nop
+ nop
+ nop
+ .endm
+
+ comment "exit (0)"
+ .macro gdbasm_exit0
+ hlt
+ .endm
+
+ comment "crt0 startup"
+ .macro gdbasm_startup
+ xor %rbp, %rbp
+ .endm
+
+ comment "Declare a data variable"
+ .macro gdbasm_datavar name value
+ .data
+\name:
+ .long \value
+ .endm