On 10/29/24 11:29 AM, Joseph Myers wrote:
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.
Agreed.
jeff

Reply via email to