This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH 1/3] Compile break-asm-file{0,1}.s without debug info
- From: Yao Qi <qiyaoltc at gmail dot com>
- To: gdb-patches at sourceware dot org
- Date: Thu, 19 Mar 2015 17:13:26 +0000
- Subject: [PATCH 1/3] Compile break-asm-file{0,1}.s without debug info
- Authentication-results: sourceware.org; auth=none
- References: <1426785208-18301-1-git-send-email-qiyaoltc at gmail dot com>
From: Yao Qi <yao.qi@linaro.org>
If I add some nop into break-asm-file1.s like this,
--- INDEX:/gdb/testsuite/gdb.linespec/break-asm-file1.s
+++ WORKDIR:/gdb/testsuite/gdb.linespec/break-asm-file1.s
@@ -31,8 +31,8 @@ _func:
.type func, %function
func:
.Lbegin_func:
- .int 0
- .int 0
+ nop
+ nop
.Lend_func:
.size func, .-func
.Lend_text1:
I get the following error:
Running gdb/testsuite/gdb.linespec/break-asm-file.exp ...
gdb/testsuite/gdb.linespec/break-asm-file1.s: Assembler messages:^M
gdb/testsuite/gdb.linespec/break-asm-file1.s: Fatal error: duplicate .debug_line sections
break-asm-file0.s and break-asm-file1.s have already had debug information
(written manually), so don't need to generate debug infor for them.
gdb/testsuite:
2015-03-19 Yao Qi <yao.qi@linaro.org>
* gdb.linespec/break-asm-file.exp: Don't call prepare_for_testing.
Call gdb_compile instead to compile each .s files without debug
information.
---
gdb/testsuite/gdb.linespec/break-asm-file.exp | 23 ++++++++++++++++++-----
1 file changed, 18 insertions(+), 5 deletions(-)
diff --git a/gdb/testsuite/gdb.linespec/break-asm-file.exp b/gdb/testsuite/gdb.linespec/break-asm-file.exp
index c3e18dc..b2f3056 100644
--- a/gdb/testsuite/gdb.linespec/break-asm-file.exp
+++ b/gdb/testsuite/gdb.linespec/break-asm-file.exp
@@ -28,11 +28,24 @@ if {![dwarf2_support]} {
return 0
}
-if {[prepare_for_testing ${testfile}.exp $execfile \
- [list $srcfile $asm_file1 $asm_file0] \
- {debug nowarnings optimize=-O0}]} {
- untested "Skipping ${testfile}."
- return
+if {[gdb_compile ${srcdir}/${subdir}/${srcfile} ${binfile}1.o \
+ object {debug nowarnings optimize=-O0}] != ""} {
+ return -1
+}
+
+# Compile .s files without debug information.
+if {[gdb_compile ${srcdir}/${subdir}/$asm_file0 ${binfile}2.o \
+ object {nodebug}] != ""} {
+ return -1
+}
+if {[gdb_compile ${srcdir}/${subdir}/$asm_file1 ${binfile}3.o \
+ object {nodebug}] != ""} {
+ return -1
+}
+
+if {[gdb_compile [list ${binfile}1.o ${binfile}2.o ${binfile}3.o] \
+ "${binfile}" executable {}] != ""} {
+ return -1
}
clean_restart $execfile
--
1.9.1