[gcc r16-3757] LoongArch: testsuite: Modify the tests to make the test pass.

LuluCheng chenglulu@gcc.gnu.org
Thu Sep 11 01:10:16 GMT 2025


https://gcc.gnu.org/g:ffbbeeec04a30426cc36069dfefdddd8146954f1

commit r16-3757-gffbbeeec04a30426cc36069dfefdddd8146954f1
Author: Lulu Cheng <chenglulu@loongson.cn>
Date:   Wed Sep 10 15:30:45 2025 +0800

    LoongArch: testsuite: Modify the tests to make the test pass.
    
    Committing r16-3673 cause the test cases in the list to fail.
    Make the test pass by modifying the test case or adding compilation
    options.
    
    gcc/testsuite/ChangeLog:
    
            * gcc.target/loongarch/cmodel-extreme-1.c: Add -fPIC.
            * gcc.target/loongarch/cmodel-extreme-2.c: Likewise.
            * gcc.target/loongarch/tls-gd-noplt.c: Likewise.
            * gcc.target/loongarch/tls-extreme-macro.c: Likewise.
            * gcc.target/loongarch/func-call-medium-2.c: Modify.
            * gcc.target/loongarch/func-call-medium-3.c: Modify.
            * gcc.target/loongarch/func-call-medium-4.c: Removed.

Diff:
---
 .../gcc.target/loongarch/cmodel-extreme-1.c        |  2 +-
 .../gcc.target/loongarch/cmodel-extreme-2.c        |  2 +-
 .../gcc.target/loongarch/func-call-medium-2.c      | 34 ++++++++++--------
 .../gcc.target/loongarch/func-call-medium-3.c      | 27 ++++++++++----
 .../gcc.target/loongarch/func-call-medium-4.c      | 41 ----------------------
 .../gcc.target/loongarch/tls-extreme-macro.c       | 10 +++---
 gcc/testsuite/gcc.target/loongarch/tls-gd-noplt.c  |  2 +-
 7 files changed, 47 insertions(+), 71 deletions(-)

diff --git a/gcc/testsuite/gcc.target/loongarch/cmodel-extreme-1.c b/gcc/testsuite/gcc.target/loongarch/cmodel-extreme-1.c
index 6269607e7df3..4fad516f0570 100644
--- a/gcc/testsuite/gcc.target/loongarch/cmodel-extreme-1.c
+++ b/gcc/testsuite/gcc.target/loongarch/cmodel-extreme-1.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-march=loongarch64 -mabi=lp64d -O2 -mcmodel=extreme -mtls-dialect=trad -fno-plt -mexplicit-relocs=always -fdump-rtl-final" } */
+/* { dg-options "-march=loongarch64 -mabi=lp64d -O2 -mcmodel=extreme -mtls-dialect=trad -fno-plt -mexplicit-relocs=always -fdump-rtl-final -fPIC" } */
 
 int a;
 extern int b;
diff --git a/gcc/testsuite/gcc.target/loongarch/cmodel-extreme-2.c b/gcc/testsuite/gcc.target/loongarch/cmodel-extreme-2.c
index 35f6ee0bb301..49bc65839145 100644
--- a/gcc/testsuite/gcc.target/loongarch/cmodel-extreme-2.c
+++ b/gcc/testsuite/gcc.target/loongarch/cmodel-extreme-2.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-march=loongarch64 -mabi=lp64d -O2 -mcmodel=extreme -mtls-dialect=trad -fno-plt -mexplicit-relocs=auto -fdump-rtl-final" } */
+/* { dg-options "-march=loongarch64 -mabi=lp64d -O2 -mcmodel=extreme -mtls-dialect=trad -fno-plt -mexplicit-relocs=auto -fdump-rtl-final -fPIC" } */
 
 #include "cmodel-extreme-1.c"
 
diff --git a/gcc/testsuite/gcc.target/loongarch/func-call-medium-2.c b/gcc/testsuite/gcc.target/loongarch/func-call-medium-2.c
index d73df2dd8c25..e97044a6013c 100644
--- a/gcc/testsuite/gcc.target/loongarch/func-call-medium-2.c
+++ b/gcc/testsuite/gcc.target/loongarch/func-call-medium-2.c
@@ -1,41 +1,45 @@
 /* { dg-do compile } */
-/* { dg-options "-mabi=lp64d -O0 -fno-pic -fplt -mno-explicit-relocs -mtls-dialect=trad -mcmodel=medium" } */
-/* { dg-final { scan-assembler "test:.*la\.global\t.*g\n\tjirl" } } */
-/* { dg-final { scan-assembler "test1:.*la\.local\t.*f\n\tjirl" } } */
-/* { dg-final { scan-assembler "test2:.*la\.local\t.*l\n\tjirl" } } */
-/* { dg-final { scan-assembler "test3:.*la\.global\t.*\_\_tls\_get\_addr" { target tls_native } } } */
+/* { dg-options "-mabi=lp64d -O2 -fno-pic -fplt -mno-explicit-relocs -mtls-dialect=trad -mcmodel=medium" } */
+/* { dg-final { check-function-bodies "**" "" } } */
 
 extern void g (void);
-void
+void __attribute__ ((noipa,noinline))
 f (void)
 {}
 
-static void
+static void __attribute__ ((noipa,noinline))
 l (void)
 {}
 
+/*
+** test:
+** 	la.global	(\$r[0-9]+),g
+** 	jr	(\$r[0-9]+)
+*/
 void
 test (void)
 {
   g ();
 }
 
+/*
+** test1:
+** 	la.local	(\$r[0-9]+),f
+** 	jr	(\$r[0-9]+)
+*/
 void
 test1 (void)
 {
   f ();
 }
 
+/*
+** test2:
+** 	la.local	(\$r[0-9]+),l
+** 	jr	(\$r[0-9]+)
+*/
 void
 test2 (void)
 {
   l ();
 }
-
-__attribute__ ((tls_model ("global-dynamic"))) __thread int a;
-
-void
-test3 (void)
-{
-  a = 10;
-}
diff --git a/gcc/testsuite/gcc.target/loongarch/func-call-medium-3.c b/gcc/testsuite/gcc.target/loongarch/func-call-medium-3.c
index 88a66745070e..8754fc6ef309 100644
--- a/gcc/testsuite/gcc.target/loongarch/func-call-medium-3.c
+++ b/gcc/testsuite/gcc.target/loongarch/func-call-medium-3.c
@@ -1,31 +1,43 @@
 /* { dg-do compile } */
-/* { dg-options "-mabi=lp64d -O0 -fpic -fno-plt -mno-explicit-relocs -mtls-dialect=trad -mcmodel=medium" } */
-/* { dg-final { scan-assembler "test:.*la\.global\t.*g\n\tjirl" } } */
-/* { dg-final { scan-assembler "test1:.*la\.global\t.*f\n\tjirl" } } */
-/* { dg-final { scan-assembler "test2:.*la\.local\t.*l\n\tjirl" } } */
-/* { dg-final { scan-assembler "test3:.*la\.global\t.*\_\_tls\_get\_addr" { target tls_native } } } */
+/* { dg-options "-mabi=lp64d -O2 -fpic -fno-plt -mno-explicit-relocs -mtls-dialect=trad -mcmodel=medium" } */
+/* { dg-final { check-function-bodies "**" "" } } */
 
 extern void g (void);
-void
+void __attribute__ ((noinline))
 f (void)
 {}
 
-static void
+static void __attribute__ ((noipa,noinline))
 l (void)
 {}
 
+/*
+** test:
+** 	la.global	(\$r[0-9]+),g
+** 	jr	(\$r[0-9]+)
+*/
 void
 test (void)
 {
   g ();
 }
 
+/*
+** test1:
+** 	la.global	(\$r[0-9]+),f
+** 	jr	(\$r[0-9]+)
+*/
 void
 test1 (void)
 {
   f ();
 }
 
+/*
+** test2:
+** 	la.local	(\$r[0-9]+),l
+** 	jr	(\$r[0-9]+)
+*/
 void
 test2 (void)
 {
@@ -39,3 +51,4 @@ test3 (void)
 {
   a = 10;
 }
+/* { dg-final { scan-assembler "test3:.*la\.global\t.*\_\_tls\_get\_addr" { target tls_native } } } */
diff --git a/gcc/testsuite/gcc.target/loongarch/func-call-medium-4.c b/gcc/testsuite/gcc.target/loongarch/func-call-medium-4.c
deleted file mode 100644
index f9dc12feaf54..000000000000
--- a/gcc/testsuite/gcc.target/loongarch/func-call-medium-4.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* { dg-do compile } */
-/* { dg-options "-mabi=lp64d -O0 -fno-pic -fno-plt -mno-explicit-relocs -mtls-dialect=trad -mcmodel=medium" } */
-/* { dg-final { scan-assembler "test:.*la\.global\t.*g\n\tjirl" } } */
-/* { dg-final { scan-assembler "test1:.*la\.local\t.*f\n\tjirl" } } */
-/* { dg-final { scan-assembler "test2:.*la\.local\t.*l\n\tjirl" } } */
-/* { dg-final { scan-assembler "test3:.*la\.global\t.*\_\_tls\_get\_addr" { target tls_native } } } */
-
-extern void g (void);
-void
-f (void)
-{}
-
-static void
-l (void)
-{}
-
-void
-test (void)
-{
-  g ();
-}
-
-void
-test1 (void)
-{
-  f ();
-}
-
-void
-test2 (void)
-{
-  l ();
-}
-
-__attribute__ ((tls_model ("global-dynamic"))) __thread int a;
-
-void
-test3 (void)
-{
-  a = 10;
-}
diff --git a/gcc/testsuite/gcc.target/loongarch/tls-extreme-macro.c b/gcc/testsuite/gcc.target/loongarch/tls-extreme-macro.c
index 4adda4202fdd..7f6160e1f662 100644
--- a/gcc/testsuite/gcc.target/loongarch/tls-extreme-macro.c
+++ b/gcc/testsuite/gcc.target/loongarch/tls-extreme-macro.c
@@ -1,9 +1,9 @@
 /* { dg-do compile } */
-/* { dg-options "-march=loongarch64 -mabi=lp64d -O2 -mcmodel=extreme -mtls-dialect=trad -fno-plt -mexplicit-relocs=none" } */
-/* { dg-final { scan-assembler "test_le:.*la.tls.le\t\\\$r\[0-9\]+,\\\.L" { target tls_native } } } */
-/* { dg-final { scan-assembler "test_ie:.*la.tls.ie\t\\\$r\[0-9\]+,\\\$r\[0-9\]+,\\\.L" { target tls_native } } } */
-/* { dg-final { scan-assembler "test_ld:.*la.tls.ld\t\\\$r\[0-9\]+,\\\$r\[0-9\]+,\\\.L.*la.global\t\\\$r\[0-9\]+,\\\$r\[0-9\]+,__tls_get_addr" { target tls_native } } } */
-/* { dg-final { scan-assembler "test_le:.*la.tls.gd\t\\\$r\[0-9\]+,\\\$r\[0-9\]+,\\\.L.*la.global\t\\\$r\[0-9\]+,\\\$r\[0-9\]+,__tls_get_addr" { target tls_native } } } */
+/* { dg-options "-march=loongarch64 -mabi=lp64d -O2 -mcmodel=extreme -mtls-dialect=trad -fno-plt -mexplicit-relocs=none -fPIC" } */
+/* { dg-final { scan-assembler "test_le:.*la.tls.le\t\\\$r\[0-9\]+,c" { target tls_native } } } */
+/* { dg-final { scan-assembler "test_ie:.*la.tls.ie\t\\\$r\[0-9\]+,\\\$r\[0-9\]+,d" { target tls_native } } } */
+/* { dg-final { scan-assembler "test_ld:.*la.tls.ld\t\\\$r\[0-9\]+,\\\$r\[0-9\]+,e.*la.global\t\\\$r\[0-9\]+,\\\$r\[0-9\]+,__tls_get_addr" { target tls_native } } } */
+/* { dg-final { scan-assembler "test_le:.*la.tls.gd\t\\\$r\[0-9\]+,\\\$r\[0-9\]+,f.*la.global\t\\\$r\[0-9\]+,\\\$r\[0-9\]+,__tls_get_addr" { target tls_native } } } */
 
 __thread int c __attribute__ ((tls_model ("local-exec")));
 __thread int d __attribute__ ((tls_model ("initial-exec")));
diff --git a/gcc/testsuite/gcc.target/loongarch/tls-gd-noplt.c b/gcc/testsuite/gcc.target/loongarch/tls-gd-noplt.c
index dfa1bf53c92e..610262a7783f 100644
--- a/gcc/testsuite/gcc.target/loongarch/tls-gd-noplt.c
+++ b/gcc/testsuite/gcc.target/loongarch/tls-gd-noplt.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-O0 -fno-plt -mcmodel=normal -mtls-dialect=trad -mexplicit-relocs" } */
+/* { dg-options "-O0 -fno-plt -mcmodel=normal -mtls-dialect=trad -mexplicit-relocs -fPIC" } */
 /* { dg-final { scan-assembler "pcalau12i\t.*%got_pc_hi20\\(__tls_get_addr\\)\n\tld\.d.*%got_pc_lo12\\(__tls_get_addr\\)" { target tls_native } } } */
 
 __attribute__ ((tls_model ("global-dynamic"))) __thread int a;


More information about the Gcc-cvs mailing list