This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[RFA][5/5] New port: Cell BE SPU (testsuite tweaks)


Hello,

this adds a couple of tweaks related to SPU to the testsuite.  In particular,
the following tests are disabled for the SPU:

gdb.base/attach.exp
 -- because the runtime library doesn't provide "sleep"

gdb.base/term.exp
 -- because we don't support command line arguments (by default)

gdb.cp/bs145503.exp
gdb.cp/exception.exp
gdb.cp/userdef.exp
 -- because the executables are too big to execute on the SPU
    (they pull in a lot of stuff from the libstdc++ library)

gdb.gdb/complaints.exp
gdb.gdb/selftest.exp
gdb.gdb/observer.exp
gdb.gdb/xfullpath.exp
 -- because the GDB executable is built for PowerPC and doesn't run on
    the SPU (even though GDB considers the Cell BE configuration to be
    'native')

OK?

Bye,
Ulrich


ChangeLog:

	* gdb.asm/asm-source.exp: Add "spu*-*-*" target.
	* gdb.asm/spu.inc: New file.
	* gdb.base/term.exp: Disable if [target_info exists noargs].
	* gdb.base/attach.exp: Disable on SPU target.
	* gdb.cp/bs145503.exp: Likewise.
	* gdb.cp/exception.exp: Likewise.
	* gdb.cp/userdef.exp: Likewise.
	* gdb.gdb/complaints.exp: Likewise.
	* gdb.gdb/selftest.exp: Likewise.
	* gdb.gdb/observer.exp: Likewise.
	* gdb.gdb/xfullpath.exp: Likewise.

diff -urN gdb-orig/gdb/testsuite/gdb.asm/asm-source.exp gdb-head/gdb/testsuite/gdb.asm/asm-source.exp
--- gdb-orig/gdb/testsuite/gdb.asm/asm-source.exp	2006-08-10 07:27:20.000000000 +0200
+++ gdb-head/gdb/testsuite/gdb.asm/asm-source.exp	2006-10-30 18:27:29.165650016 +0100
@@ -120,6 +120,11 @@
         set asm-flags "-xarch=v9 -I${srcdir}/${subdir} -I${objdir}/${subdir}"
 	set debug-flags "-gdwarf-2"
     }
+    "spu*-*-*" {
+       set asm-arch spu
+       set asm-flags "-I${srcdir}/${subdir} -I${objdir}/${subdir} --no-warn"
+       set debug-flags "-gdwarf-2"
+    }
     "xstormy16-*-*" {
         set asm-arch xstormy16
 	set debug-flags "-gdwarf-2"
diff -urN gdb-orig/gdb/testsuite/gdb.asm/spu.inc gdb-head/gdb/testsuite/gdb.asm/spu.inc
--- gdb-orig/gdb/testsuite/gdb.asm/spu.inc	1970-01-01 01:00:00.000000000 +0100
+++ gdb-head/gdb/testsuite/gdb.asm/spu.inc	2006-10-30 18:33:04.158718784 +0100
@@ -0,0 +1,42 @@
+	comment "subroutine prologue"
+	.macro gdbasm_enter
+	stqd    $lr, 16($sp)
+	stqd    $sp, -32($sp)
+	ai      $sp, $sp, -32
+	.endm
+
+	comment "subroutine epilogue"
+	.macro gdbasm_leave
+	ai	$sp, $sp, 32
+	lqd     $lr, 16($sp)
+	bi	$lr	
+	.endm
+
+	.macro gdbasm_call subr
+	brsl	$lr, \subr
+	.endm
+
+	.macro gdbasm_several_nops
+	nop
+	nop
+	nop
+	nop
+	.endm
+
+	comment "exit (0)"
+	.macro gdbasm_exit0
+	stop	0x2000
+	stop 
+	stop 
+	stop 
+	.endm
+
+	comment "startup"
+	.macro gdbasm_startup
+	il	$0, 0
+	ila	$sp, 16368
+	stqd	$0, 0($sp)
+	stqd	$sp, -32($sp)
+	ai	$sp, $sp, -32
+	stqd	$0, 16($sp)
+	.endm
diff -urN gdb-orig/gdb/testsuite/gdb.base/attach.exp gdb-head/gdb/testsuite/gdb.base/attach.exp
--- gdb-orig/gdb/testsuite/gdb.base/attach.exp	2006-08-10 07:27:20.000000000 +0200
+++ gdb-head/gdb/testsuite/gdb.base/attach.exp	2006-10-30 19:51:29.375733552 +0100
@@ -32,6 +32,11 @@
     return 0
 }
 
+# On SPU, this test currently fails because "sleep" is not supported.
+if { [istarget "spu*-*-*"] } {
+	return 0
+}
+
 # are we on a target board
 if [is_remote target] then {
     return 0
diff -urN gdb-orig/gdb/testsuite/gdb.base/term.exp gdb-head/gdb/testsuite/gdb.base/term.exp
--- gdb-orig/gdb/testsuite/gdb.base/term.exp	2006-08-10 07:27:20.000000000 +0200
+++ gdb-head/gdb/testsuite/gdb.base/term.exp	2006-10-30 18:27:29.226640744 +0100
@@ -29,6 +29,11 @@
     continue
 }
 
+if [target_info exists noargs] then {
+    verbose "Skipping term.exp because of noargs."
+    return
+}
+
 gdb_start
 
 #
diff -urN gdb-orig/gdb/testsuite/gdb.cp/bs15503.exp gdb-head/gdb/testsuite/gdb.cp/bs15503.exp
--- gdb-orig/gdb/testsuite/gdb.cp/bs15503.exp	2006-07-21 00:50:07.000000000 +0200
+++ gdb-head/gdb/testsuite/gdb.cp/bs15503.exp	2006-10-30 18:35:15.038661024 +0100
@@ -24,6 +24,11 @@
 
 if { [skip_cplus_tests] } { continue }
 
+# On SPU this test fails because the executable exceeds local storage size.
+if { [istarget "spu*-*-*"] } {
+        return 0
+}
+
 set testfile "bs15503"
 set srcfile ${testfile}.cc
 set binfile ${objdir}/${subdir}/${testfile}
diff -urN gdb-orig/gdb/testsuite/gdb.cp/exception.exp gdb-head/gdb/testsuite/gdb.cp/exception.exp
--- gdb-orig/gdb/testsuite/gdb.cp/exception.exp	2006-08-10 07:27:20.000000000 +0200
+++ gdb-head/gdb/testsuite/gdb.cp/exception.exp	2006-10-30 18:35:35.802701088 +0100
@@ -44,6 +44,11 @@
 
 if { [skip_cplus_tests] } { continue }
 
+# On SPU this test fails because the executable exceeds local storage size.
+if { [istarget "spu*-*-*"] } {
+        return 0
+}
+
 set testfile "exception"
 set srcfile ${testfile}.cc
 set binfile ${objdir}/${subdir}/${testfile}
diff -urN gdb-orig/gdb/testsuite/gdb.cp/userdef.exp gdb-head/gdb/testsuite/gdb.cp/userdef.exp
--- gdb-orig/gdb/testsuite/gdb.cp/userdef.exp	2006-08-10 07:27:20.000000000 +0200
+++ gdb-head/gdb/testsuite/gdb.cp/userdef.exp	2006-10-30 18:36:02.853716896 +0100
@@ -27,6 +27,11 @@
 
 if { [skip_cplus_tests] } { continue }
 
+# On SPU this test fails because the executable exceeds local storage size.
+if { [istarget "spu*-*-*"] } {
+        return 0
+}
+
 set testfile "userdef"
 set srcfile ${testfile}.cc
 set binfile ${objdir}/${subdir}/${testfile}
diff -urN gdb-orig/gdb/testsuite/gdb.gdb/complaints.exp gdb-head/gdb/testsuite/gdb.gdb/complaints.exp
--- gdb-orig/gdb/testsuite/gdb.gdb/complaints.exp	2004-09-10 03:04:59.000000000 +0200
+++ gdb-head/gdb/testsuite/gdb.gdb/complaints.exp	2006-10-30 19:54:59.650725952 +0100
@@ -31,6 +31,11 @@
     return
 }
 
+# SPU 'pseudo-native' is not really native and cannot run the host GDB.
+if { [istarget "spu*-*-*"] } {
+        return 0
+}
+
 proc setup_test { executable } {
     global gdb_prompt
     global timeout
diff -urN gdb-orig/gdb/testsuite/gdb.gdb/observer.exp gdb-head/gdb/testsuite/gdb.gdb/observer.exp
--- gdb-orig/gdb/testsuite/gdb.gdb/observer.exp	2004-09-10 03:04:59.000000000 +0200
+++ gdb-head/gdb/testsuite/gdb.gdb/observer.exp	2006-10-30 19:55:10.025613624 +0100
@@ -29,6 +29,11 @@
     return
 }
 
+# SPU 'pseudo-native' is not really native and cannot run the host GDB.
+if { [istarget "spu*-*-*"] } {
+        return 0
+}
+
 proc setup_test { executable } {
     global gdb_prompt
     global timeout
diff -urN gdb-orig/gdb/testsuite/gdb.gdb/selftest.exp gdb-head/gdb/testsuite/gdb.gdb/selftest.exp
--- gdb-orig/gdb/testsuite/gdb.gdb/selftest.exp	2005-12-26 15:38:20.000000000 +0100
+++ gdb-head/gdb/testsuite/gdb.gdb/selftest.exp	2006-10-30 19:55:21.454740544 +0100
@@ -29,6 +29,11 @@
     return
 }
 
+# SPU 'pseudo-native' is not really native and cannot run the host GDB.
+if { [istarget "spu*-*-*"] } {
+        return 0
+}
+
 # Not all of the lines of code near the start of main are executed for
 # every machine.  Also, optimization may reorder some of the lines.
 # So all we do is try to step or next over everything until we get
diff -urN gdb-orig/gdb/testsuite/gdb.gdb/xfullpath.exp gdb-head/gdb/testsuite/gdb.gdb/xfullpath.exp
--- gdb-orig/gdb/testsuite/gdb.gdb/xfullpath.exp	2004-09-10 03:04:59.000000000 +0200
+++ gdb-head/gdb/testsuite/gdb.gdb/xfullpath.exp	2006-10-30 19:55:33.588626152 +0100
@@ -30,6 +30,11 @@
     return
 }
 
+# SPU 'pseudo-native' is not really native and cannot run the host GDB.
+if { [istarget "spu*-*-*"] } {
+        return 0
+}
+
 proc setup_test { executable } {
     global gdb_prompt
     global timeout
-- 
  Dr. Ulrich Weigand
  GNU Toolchain for Linux on System z and Cell BE
  Ulrich.Weigand@de.ibm.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]