diff mbox

[commit] Support gdb.asm/asm-source.exp on powerpc64le

Message ID 201403251447.s2PEliof024646@d03av02.boulder.ibm.com
State Committed
Headers show

Commit Message

Ulrich Weigand March 25, 2014, 2:47 p.m. UTC
Hello,

this patch adds a new powerpc64le.inc file appropriate for the
ELFv2 ABI and uses it to support the asm-source.exp test case
on powerpc64le (which previously resulted in UNTESTED).

Tested on powerpc64le-linux.
Pushed to mainline.

Bye,
Ulrich

ChangeLog:

	* gdb.asm/asm-source.exp: Handle powerpc64le-* targets.
	* gdb.asm/powerpc64le.inc: New file.
diff mbox

Patch

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index b7bc990..678be17 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,8 @@ 
+2014-03-25  Ulrich Weigand  <uweigand@de.ibm.com>
+
+	* gdb.asm/asm-source.exp: Handle powerpc64le-* targets.
+	* gdb.asm/powerpc64le.inc: New file.
+
 2014-03-25  Pedro Alves  <palves@redhat.com>
 	    Doug Evans  <dje@google.com>
 
diff --git a/gdb/testsuite/gdb.asm/asm-source.exp b/gdb/testsuite/gdb.asm/asm-source.exp
index 51aca8e..fa4585c 100644
--- a/gdb/testsuite/gdb.asm/asm-source.exp
+++ b/gdb/testsuite/gdb.asm/asm-source.exp
@@ -97,6 +97,11 @@  switch -glob -- [istarget] {
     "mips*-*" {
         set asm-arch mips
     }
+    "powerpc64le-*" {
+        set asm-arch powerpc64le
+        set asm-flags "-a64 -I${srcdir}/${subdir} $obj_include"
+        append link-flags " -m elf64lppc"
+    }
     "powerpc*-*" {
         if { [is_lp64_target] } {
             set asm-arch powerpc64
diff --git a/gdb/testsuite/gdb.asm/powerpc64le.inc b/gdb/testsuite/gdb.asm/powerpc64le.inc
new file mode 100644
index 0000000..d559f66
--- /dev/null
+++ b/gdb/testsuite/gdb.asm/powerpc64le.inc
@@ -0,0 +1,47 @@ 
+	comment "subroutine prologue"
+	.macro gdbasm_enter
+	stdu 1, -32(1)
+	mflr 0
+	std 0, 48(1)
+	.endm
+
+	comment "subroutine epilogue"
+	.macro gdbasm_leave
+	ld 0, 48(1)
+	mtlr 0
+	ld 1, 0(1)
+	blr
+	.endm
+
+	.macro gdbasm_call subr
+	bl \subr
+	nop
+	.endm
+
+	.macro gdbasm_several_nops
+	nop
+	nop
+	nop
+	nop
+	.endm
+
+	comment "exit (0)"
+	.macro gdbasm_exit0
+	comment "sys_exit"
+	li	0, 1
+	sc
+	.endm
+
+	comment "crt0 startup"
+	.macro gdbasm_startup
+	.abiversion 2
+	.p2align 2
+	.endm
+
+	comment "Declare a data variable"
+	.purgem gdbasm_datavar
+	.macro gdbasm_datavar name value
+	.section	".data"
+\name:
+	.long \value
+	.endm