diff options
author | David Faust <david.faust@oracle.com> | 2024-04-08 13:33:48 -0700 |
---|---|---|
committer | David Faust <david.faust@oracle.com> | 2024-04-09 11:11:42 -0700 |
commit | 639215c5eb6c56ba3830cd868d1d3ddd700b4c90 (patch) | |
tree | accacb22ac6f6695f4c11f77f9e4cf72a45738c6 | |
parent | 1f719aa7c0d35b47f3d15a54f074718b78e92bb0 (diff) | |
download | gcc-639215c5eb6c56ba3830cd868d1d3ddd700b4c90.zip gcc-639215c5eb6c56ba3830cd868d1d3ddd700b4c90.tar.gz gcc-639215c5eb6c56ba3830cd868d1d3ddd700b4c90.tar.bz2 |
btf: improve btf-datasec-3.c test [PR114642]
This test failed on powerpc --target_board=unix'{-m32}' because two
variables were not placed in sections where the test silently (and
incorrectly) assumed they would be.
The important thing for the test is only that BTF_KIND_DATASEC entries
are NOT generated for the extern variable declarations without an
explicit section attribute. Make the test more robust by placing the
non-extern variables in explicit sections, and invert the checks to
more accurately verify what we care about in this test.
gcc/testsuite/
PR testsuite/114642
* gcc.dg/debug/btf/btf-datasec-3.c: Make test more robust on different
architectures.
-rw-r--r-- | gcc/testsuite/gcc.dg/debug/btf/btf-datasec-3.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/gcc/testsuite/gcc.dg/debug/btf/btf-datasec-3.c b/gcc/testsuite/gcc.dg/debug/btf/btf-datasec-3.c index 297340c..6b127aa 100644 --- a/gcc/testsuite/gcc.dg/debug/btf/btf-datasec-3.c +++ b/gcc/testsuite/gcc.dg/debug/btf/btf-datasec-3.c @@ -7,22 +7,22 @@ extern int VERSION __attribute__((section (".version"))); -extern int test_bss1; -extern int test_data1; +extern int ext1; +extern int ext2; -int test_bss2; -int test_data2 = 2; +int var1 __attribute__((section (".sec_a"))); +int var2 __attribute__((section (".sec_b"))) = 2; int foo (void) { - test_bss2 = VERSION; - return test_bss1 + test_data1 + test_data2; + ext2 = VERSION; + return ext1 + var1 + var2; } /* There should be 3 DATASEC entries total. Of the extern decls, only VERSION has a known section; entries are not created for the other two. */ /* { dg-final { scan-assembler-times "bts_type" 3 } } */ -/* { dg-final { scan-assembler-times "bts_type: \\(BTF_KIND_VAR 'test_data2'\\)" 1 } } */ -/* { dg-final { scan-assembler-times "bts_type: \\(BTF_KIND_VAR 'test_bss2'\\)" 1 } } */ /* { dg-final { scan-assembler-times "bts_type: \\(BTF_KIND_VAR 'VERSION'\\)" 1 } } */ +/* { dg-final { scan-assembler-not "bts_type: \\(BTF_KIND_VAR 'ext1'\\)" } } */ +/* { dg-final { scan-assembler-not "bts_type: \\(BTF_KIND_VAR 'ext2'\\)" } } */ |