]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
testsuite: fix is_aarch32_target
authorThiago Jung Bauermann <thiago.bauermann@linaro.org>
Fri, 28 Mar 2025 04:03:20 +0000 (01:03 -0300)
committerThiago Jung Bauermann <thiago.bauermann@linaro.org>
Mon, 31 Mar 2025 20:25:20 +0000 (17:25 -0300)
Commit

   c221b2f77080 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_aarch32_target
checks to fail.

Change the test source from an assembly program to a C program using
inline assembly.

is_amd64_regs_target had a similar problem, which was fixed by commit

    224d30d39365 testsuite: fix is_amd64_regs_target

This fix — and commit message — are mostly copied from it.

Approved-By: Simon Marchi <simon.marchi@efficios.com>
gdb/testsuite/lib/gdb.exp

index 761a4f1175684ecd654e10e32bc62b9038aa2aaa..59967c70cda9e420b83015ed864177c96314a8ca 100644 (file)
@@ -3937,13 +3937,16 @@ gdb_caching_proc is_aarch32_target {} {
        return 0
     }
 
-    set list {}
-    foreach reg \
-       {r0 r1 r2 r3} {
-           lappend list "\tmov $reg, $reg"
-       }
+    return [gdb_can_simple_compile aarch32 {
+       int main (void) {
+           asm ("\tmov r0, r0");
+           asm ("\tmov r1, r1");
+           asm ("\tmov r2, r2");
+           asm ("\tmov r3, r3");
 
-    return [gdb_can_simple_compile aarch32 [join $list \n]]
+           return 0;
+       }
+    }]
 }
 
 # Return 1 if this target is an aarch64, either lp64 or ilp32.