From: Markus Metzger Date: Wed, 26 Sep 2018 13:28:28 +0000 (+0200) Subject: testsuite: fix is_amd64_regs_target X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=224d30d393654ff0689429505a3e725cdad1cca5;p=binutils-gdb.git testsuite: fix is_amd64_regs_target Commit c221b2f Testsuite: Add gdb_can_simple_compile changed the source file name extension of the test program from .s to .c resulting in compile fails. This, in turn, causes is_amd64_regs_target checks to fail. In gdb.btrace/tailcall.exp and others, this causes the wrong source file to be picked and the test to fail on 64-bit targets. Change the test source from an assembly program to a C program using inline assembly. testsuite/ * lib/gdb.exp (is_amd64_regs_target): Change assembly to C inline assembly. --- diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index f2fb6deb63c..7f278ef41e1 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2018-10-01 Markus Metzger + + * lib/gdb.exp (is_amd64_regs_target): Change assembly to C inline + assembly. + 2018-09-28 Andrew Burgess * gdb.base/frame-selection.exp: New file. diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index f32abfedd52..1eea92298c4 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -2467,13 +2467,14 @@ gdb_caching_proc is_amd64_regs_target { return 0 } - set list {} - foreach reg \ - {rax rbx rcx rdx rsi rdi rbp rsp r8 r9 r10 r11 r12 r13 r14 r15} { - lappend list "\tincq %$reg" - } + return [gdb_can_simple_compile is_amd64_regs_target { + int main (void) { + asm ("incq %rax"); + asm ("incq %r15"); - return [gdb_can_simple_compile is_amd64_regs_target [join $list \n]] + return 0; + } + }] } # Return 1 if this target is an x86 or x86-64 with -m32.