On Thu, 24 Oct 2024, Joseph Myers wrote: > 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. OK to commit? > > * gcc.dg/simulate-thread/simulate-thread.h > (simulate_thread_wrapper_final_verify): Mark noinline.
Linaro CI reported regressions for this on arm-linux-gnueabihf: | FAIL: gcc.dg/simulate-thread/atomic-load-longlong.c -O2 -g thread simulation test | FAIL: gcc.dg/simulate-thread/atomic-load-longlong.c -O3 -g thread simulation test Examining the logs shows they are "Testcase exceeded maximum instruction count threshold", and that there is already such a failure the Linaro CI is considering expected for the -O0 test and for several other simulate-thread tests. Thus, I propose that we do not consider the failures reported by Linaro CI as something to block this testsuite patch (which still needs review, as does my -std=gnu17 patch for gcc.dg/pr114115.c) but rather as a reasonable consequence of adding a noinline attribute to a test that already seems marginal on this target system for whether it can complete within the resource limits. -- Joseph S. Myers josmy...@redhat.com