]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
testsuite: Use noinline in gcc.dg/simulate-thread/simulate-thread.h
authorJoseph Myers <josmyers@redhat.com>
Thu, 31 Oct 2024 17:01:09 +0000 (17:01 +0000)
committerJoseph Myers <josmyers@redhat.com>
Thu, 31 Oct 2024 17:01:09 +0000 (17:01 +0000)
Among the changes of test results with a -std=gnu23 default were two
tests changing from PASS to UNSUPPORTED:

UNSUPPORTED: gcc.dg/simulate-thread/speculative-store.c   -O2 -g  thread simulation test
UNSUPPORTED: gcc.dg/simulate-thread/speculative-store.c   -O3 -g  thread simulation test

It appears that functions defined with () becoming prototyped affects
inlining, and changing the code to use (void) allows UNSUPPORTED
results to be reproduced with -std=gnu17.  Add __attribute__
((noinline)) on one more function to avoid the UNSUPPORTED results;
some of the tests in this directory already have such an attribute on
some functions.

Tested for x86_64-pc-linux-gnu.

* gcc.dg/simulate-thread/simulate-thread.h
(simulate_thread_wrapper_final_verify): Mark noinline.

gcc/testsuite/gcc.dg/simulate-thread/simulate-thread.h

index 22c05084ee74e469c2e6e02f35038ec78b402ea8..b582220694e57d5ccc8ead220163007b35b13d0c 100644 (file)
@@ -116,7 +116,7 @@ simulate_thread_wrapper_other_threads()
 
 /* If the test case defines HOSTILE_PAUSE_ERROR, then the test case
    will fail execution if it had a hostile pause.  */
-int
+__attribute__ ((noinline)) int
 simulate_thread_wrapper_final_verify ()
 {
   int ret = simulate_thread_final_verify ();