* [pushed] [gdb/testsuite] Handle attributes.h for remote host
@ 2023-03-18 9:17 Tom de Vries
2023-03-18 10:12 ` Andreas Schwab
0 siblings, 1 reply; 3+ messages in thread
From: Tom de Vries @ 2023-03-18 9:17 UTC (permalink / raw)
To: gdb-patches
Handle $srcdir/lib/attributes.h using lappend_include_dir.
Tested on x86_64-linux.
---
gdb/testsuite/gdb.base/backtrace.c | 2 +-
gdb/testsuite/gdb.base/backtrace.exp | 6 ++-
.../gdb.base/frame-info-consistent.exp | 6 ++-
.../gdb.base/infcall-nested-structs.c | 2 +-
.../gdb.base/infcall-nested-structs.exp.tcl | 2 +
gdb/testsuite/gdb.base/stap-probe.c | 2 +-
gdb/testsuite/gdb.base/stap-probe.exp | 23 +++++++++--
gdb/testsuite/gdb.base/vla-optimized-out.c | 2 +-
gdb/testsuite/gdb.base/vla-optimized-out.exp | 1 +
gdb/testsuite/gdb.cp/cold-clone.cc | 2 +-
gdb/testsuite/gdb.cp/cold-clone.exp | 9 ++++-
.../gdb.dwarf2/dyn-type-unallocated.c | 2 +-
.../gdb.dwarf2/dyn-type-unallocated.exp | 39 ++++++++++++++-----
.../gdb.python/tui-window-disabled.c | 2 +-
.../gdb.python/tui-window-disabled.exp | 6 ++-
15 files changed, 81 insertions(+), 25 deletions(-)
diff --git a/gdb/testsuite/gdb.base/backtrace.c b/gdb/testsuite/gdb.base/backtrace.c
index f615d857110..4928bae05a4 100644
--- a/gdb/testsuite/gdb.base/backtrace.c
+++ b/gdb/testsuite/gdb.base/backtrace.c
@@ -15,7 +15,7 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
-#include "../lib/attributes.h"
+#include "attributes.h"
int __attribute__((noinline)) ATTRIBUTE_NOCLONE
baz ()
diff --git a/gdb/testsuite/gdb.base/backtrace.exp b/gdb/testsuite/gdb.base/backtrace.exp
index 4389273123c..c7355cef375 100644
--- a/gdb/testsuite/gdb.base/backtrace.exp
+++ b/gdb/testsuite/gdb.base/backtrace.exp
@@ -17,7 +17,11 @@
standard_testfile
-if { [prepare_for_testing "failed to prepare" $testfile $srcfile] } {
+set flags {}
+lappend flags debug
+lappend_include_file flags $srcdir/lib/attributes.h
+
+if { [prepare_for_testing "failed to prepare" $testfile $srcfile $flags] } {
return -1
}
diff --git a/gdb/testsuite/gdb.base/frame-info-consistent.exp b/gdb/testsuite/gdb.base/frame-info-consistent.exp
index 4893c2227f3..30185c3c4f4 100644
--- a/gdb/testsuite/gdb.base/frame-info-consistent.exp
+++ b/gdb/testsuite/gdb.base/frame-info-consistent.exp
@@ -21,7 +21,11 @@
standard_testfile backtrace.c
-if { [build_executable "failed to prepare" $testfile $srcfile] } {
+set flags {}
+lappend flags debug
+lappend_include_file flags $srcdir/lib/attributes.h
+
+if { [build_executable "failed to prepare" $testfile $srcfile $flags] } {
return -1
}
diff --git a/gdb/testsuite/gdb.base/infcall-nested-structs.c b/gdb/testsuite/gdb.base/infcall-nested-structs.c
index ff4b64f28c9..f741728d4cc 100644
--- a/gdb/testsuite/gdb.base/infcall-nested-structs.c
+++ b/gdb/testsuite/gdb.base/infcall-nested-structs.c
@@ -33,7 +33,7 @@
in the structs.exp test script. */
#include <string.h>
-#include "../lib/attributes.h"
+#include "attributes.h"
/* Useful abreviations. */
typedef char tc;
diff --git a/gdb/testsuite/gdb.base/infcall-nested-structs.exp.tcl b/gdb/testsuite/gdb.base/infcall-nested-structs.exp.tcl
index d9d2fa519d2..f7f036b4217 100644
--- a/gdb/testsuite/gdb.base/infcall-nested-structs.exp.tcl
+++ b/gdb/testsuite/gdb.base/infcall-nested-structs.exp.tcl
@@ -40,6 +40,8 @@ if { $lang == "c++" && [test_compiler_info clang*] } {
lappend compile_flags "additional_flags=-Wno-tautological-compare"
}
+lappend_include_file compile_flags $srcdir/lib/attributes.h
+
# Given N (0..25), return the corresponding alphabetic letter in upper
# case.
diff --git a/gdb/testsuite/gdb.base/stap-probe.c b/gdb/testsuite/gdb.base/stap-probe.c
index 5cd1fbfe36b..36ce2da7847 100644
--- a/gdb/testsuite/gdb.base/stap-probe.c
+++ b/gdb/testsuite/gdb.base/stap-probe.c
@@ -15,7 +15,7 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
-#include "../lib/attributes.h"
+#include "attributes.h"
#if USE_SEMAPHORES
diff --git a/gdb/testsuite/gdb.base/stap-probe.exp b/gdb/testsuite/gdb.base/stap-probe.exp
index 1beb05203c1..06aa6665022 100644
--- a/gdb/testsuite/gdb.base/stap-probe.exp
+++ b/gdb/testsuite/gdb.base/stap-probe.exp
@@ -113,8 +113,15 @@ proc check_for_usable_xmm0_probe { binfile } {
proc stap_test {exec_name {args ""}} {
global testfile hex srcfile
+ set flags {}
+ lappend flags debug
+ lappend_include_file flags $::srcdir/lib/attributes.h
+ if { $args != "" } {
+ set flags [concat $flags $args]
+ }
+
if {[prepare_for_testing "failed to prepare" ${exec_name} $srcfile \
- [concat $args debug]]} {
+ $flags]} {
return -1
}
@@ -233,10 +240,18 @@ proc stap_test {exec_name {args ""}} {
}
proc stap_test_no_debuginfo {exec_name {args ""}} {
- global testfile hex
+ global hex
+
+ set flags {}
+ lappend flags nodebug
+ lappend flags optimize=-O2
+ lappend_include_file flags $::srcdir/lib/attributes.h
+ if { $args != "" } {
+ set flags [concat $flags $args]
+ }
- if {[prepare_for_testing "failed to prepare" ${exec_name} ${testfile}.c \
- [concat $args nodebug optimize=-O2]]} {
+ if {[prepare_for_testing "failed to prepare" ${exec_name} $::srcfile \
+ $flags]} {
return -1
}
diff --git a/gdb/testsuite/gdb.base/vla-optimized-out.c b/gdb/testsuite/gdb.base/vla-optimized-out.c
index c1e7c609b5a..7ae7e612be9 100644
--- a/gdb/testsuite/gdb.base/vla-optimized-out.c
+++ b/gdb/testsuite/gdb.base/vla-optimized-out.c
@@ -18,7 +18,7 @@
/* The version of this test-case with f1 tagged with noinline only is equivalent
to gcc/testsuite/gcc.dg/guality/vla-1.c. */
-#include "../lib/attributes.h"
+#include "attributes.h"
int
#ifdef NOCLONE
diff --git a/gdb/testsuite/gdb.base/vla-optimized-out.exp b/gdb/testsuite/gdb.base/vla-optimized-out.exp
index b31b9ec9706..c0681bc8904 100644
--- a/gdb/testsuite/gdb.base/vla-optimized-out.exp
+++ b/gdb/testsuite/gdb.base/vla-optimized-out.exp
@@ -26,6 +26,7 @@ proc vla_optimized_out {exe_suffix options} {
global testfile srcfile
lassign $options compile_flags sizeof_result
+ lappend_include_file compile_flags $::srcdir/lib/attributes.h
if { [prepare_for_testing "failed to prepare" "$testfile-$exe_suffix" $srcfile \
$compile_flags] } {
diff --git a/gdb/testsuite/gdb.cp/cold-clone.cc b/gdb/testsuite/gdb.cp/cold-clone.cc
index b45d93752af..533c1e97a4a 100644
--- a/gdb/testsuite/gdb.cp/cold-clone.cc
+++ b/gdb/testsuite/gdb.cp/cold-clone.cc
@@ -16,7 +16,7 @@
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#include <stdlib.h>
-#include "../lib/attributes.h"
+#include "attributes.h"
int a;
int b;
diff --git a/gdb/testsuite/gdb.cp/cold-clone.exp b/gdb/testsuite/gdb.cp/cold-clone.exp
index 0a2b0790ec0..415d7a64964 100644
--- a/gdb/testsuite/gdb.cp/cold-clone.exp
+++ b/gdb/testsuite/gdb.cp/cold-clone.exp
@@ -15,8 +15,13 @@
standard_testfile .cc
-if {[prepare_for_testing "failed to prepare" $testfile $srcfile \
- {debug c++ optimize=-O2}]} {
+set flags {}
+lappend flags debug
+lappend flags c++
+lappend flags optimize=-O2
+lappend_include_file flags $srcdir/lib/attributes.h
+
+if {[prepare_for_testing "failed to prepare" $testfile $srcfile $flags]} {
return -1
}
diff --git a/gdb/testsuite/gdb.dwarf2/dyn-type-unallocated.c b/gdb/testsuite/gdb.dwarf2/dyn-type-unallocated.c
index 436c5698c46..843646652c0 100644
--- a/gdb/testsuite/gdb.dwarf2/dyn-type-unallocated.c
+++ b/gdb/testsuite/gdb.dwarf2/dyn-type-unallocated.c
@@ -15,7 +15,7 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
-#include "../lib/attributes.h"
+#include "attributes.h"
/* Our fake dynamic object. */
void *dyn_object;
diff --git a/gdb/testsuite/gdb.dwarf2/dyn-type-unallocated.exp b/gdb/testsuite/gdb.dwarf2/dyn-type-unallocated.exp
index 88fd331781d..5d0dfcc291d 100644
--- a/gdb/testsuite/gdb.dwarf2/dyn-type-unallocated.exp
+++ b/gdb/testsuite/gdb.dwarf2/dyn-type-unallocated.exp
@@ -38,12 +38,30 @@ require dwarf2_support
standard_testfile .c -dw.S
-if { [prepare_for_testing "failed to prepare" ${testfile} ${srcfile}] } {
+set flags {}
+lappend flags debug
+lappend_include_file flags $srcdir/lib/attributes.h
+
+if { [prepare_for_testing "failed to prepare" ${testfile} ${srcfile} $flags] } {
return -1
}
+with_shared_gdb {
+ set func_info_vars [get_func_info main $flags]
+
+ set int_size [get_sizeof "int" "UNKNOWN"]
+ set voidp_size [get_sizeof "void *" "UNKNOWN"]
+}
+
set asm_file [standard_output_file $srcfile2]
Dwarf::assemble $asm_file {
+ global func_info_vars
+ foreach var $func_info_vars {
+ global $var
+ }
+ global int_size
+ global voidp_size
+
cu {} {
global srcfile
@@ -55,9 +73,6 @@ Dwarf::assemble $asm_file {
} {
declare_labels array_type_label integer_type_label
- set int_size [get_sizeof "int" "UNKNOWN"]
- set voidp_size [get_sizeof "void *" "UNKNOWN"]
-
integer_type_label: DW_TAG_base_type {
{DW_AT_byte_size $int_size DW_FORM_sdata}
{DW_AT_encoding @DW_ATE_signed}
@@ -95,16 +110,22 @@ Dwarf::assemble $asm_file {
{name "dyn_object"}
{type :$array_type_label}
}
- subprogram {
- {external 1 flag}
- {MACRO_AT_func {main}}
- }
+ subprogram {
+ {external 1 flag}
+ {DW_AT_name main}
+ {DW_AT_low_pc $main_start DW_FORM_addr}
+ {DW_AT_high_pc $main_end DW_FORM_addr}
+ }
}
}
}
+set flags {}
+lappend flags {nodebug}
+lappend_include_file flags $srcdir/lib/attributes.h
+
if { [prepare_for_testing "failed to prepare" "${testfile}" \
- [list $srcfile $asm_file] {nodebug}] } {
+ [list $srcfile $asm_file] $flags] } {
return -1
}
diff --git a/gdb/testsuite/gdb.python/tui-window-disabled.c b/gdb/testsuite/gdb.python/tui-window-disabled.c
index 833c6a3a751..111f7adcdc1 100644
--- a/gdb/testsuite/gdb.python/tui-window-disabled.c
+++ b/gdb/testsuite/gdb.python/tui-window-disabled.c
@@ -15,7 +15,7 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
-#include "../lib/attributes.h"
+#include "attributes.h"
volatile int val;
diff --git a/gdb/testsuite/gdb.python/tui-window-disabled.exp b/gdb/testsuite/gdb.python/tui-window-disabled.exp
index 57d41cdbf8b..b2beb77c217 100644
--- a/gdb/testsuite/gdb.python/tui-window-disabled.exp
+++ b/gdb/testsuite/gdb.python/tui-window-disabled.exp
@@ -27,7 +27,11 @@ tuiterm_env
standard_testfile
-if {[build_executable "failed to prepare" ${testfile} ${srcfile}] == -1} {
+set flags {}
+lappend flags debug
+lappend_include_file flags $srcdir/lib/attributes.h
+
+if {[build_executable "failed to prepare" ${testfile} ${srcfile} $flags] == -1} {
return -1
}
base-commit: 9e4b2a6697006f9ff39bce13edd640330e208c9f
--
2.35.3
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [pushed] [gdb/testsuite] Handle attributes.h for remote host
2023-03-18 9:17 [pushed] [gdb/testsuite] Handle attributes.h for remote host Tom de Vries
@ 2023-03-18 10:12 ` Andreas Schwab
2023-03-18 10:34 ` Tom de Vries
0 siblings, 1 reply; 3+ messages in thread
From: Andreas Schwab @ 2023-03-18 10:12 UTC (permalink / raw)
To: Tom de Vries via Gdb-patches; +Cc: Tom de Vries
On Mär 18 2023, Tom de Vries via Gdb-patches wrote:
> +set flags {}
> +lappend flags debug
aka set flags debug
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510 2552 DF73 E780 A9DA AEC1
"And now for something completely different."
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [pushed] [gdb/testsuite] Handle attributes.h for remote host
2023-03-18 10:12 ` Andreas Schwab
@ 2023-03-18 10:34 ` Tom de Vries
0 siblings, 0 replies; 3+ messages in thread
From: Tom de Vries @ 2023-03-18 10:34 UTC (permalink / raw)
To: Andreas Schwab, Tom de Vries via Gdb-patches
On 3/18/23 11:12, Andreas Schwab wrote:
> On Mär 18 2023, Tom de Vries via Gdb-patches wrote:
>
>> +set flags {}
>> +lappend flags debug
>
> aka set flags debug
>
Hi,
yes, though I prefer the form I'm using, for instance because it allows
me to do:
...
set flags {}
-lappend flags debug
+#lappend flags debug
...
while this:
...
-set flags debug
+#set flags debug
...
breaks the test-case because flags is no longer set.
Besides, for readability I prefer that each flag is added individually,
and in the same way, so not:
...
set flags {opt-a opt-b opt-c}
...
and not:
...
set flags opt-a
lappend flags opt-b
lappend flags opt-c
...
but:
...
set flags {}
lappend flags opt-a
lappend flags opt-b
lappend flags opt-c
...
Thanks,
- Tom
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-03-18 10:34 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-18 9:17 [pushed] [gdb/testsuite] Handle attributes.h for remote host Tom de Vries
2023-03-18 10:12 ` Andreas Schwab
2023-03-18 10:34 ` Tom de Vries
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).