LTO and other test failures on trunk

Martin Sebor msebor@gmail.com
Mon Jun 11 19:23:00 GMT 2018


On 06/11/2018 12:34 PM, David Malcolm wrote:
> On Mon, 2018-06-11 at 12:19 -0600, Martin Sebor wrote:
>> I've been noticing a number of failures in LTO (and some other)
>> tests in my x86_64-builds most of which don't appear in results
>> reported on gcc-testresults (all those on lines that start with
>> with the '!' below) and that I don't recall seeing before.
>>
>> The LTO tests seem to fail with errors like the one below:
>>
>> /usr/bin/ld: /tmp/ccIaufZk.lto.o: plugin needed to handle lto object
>> FAIL: g++.dg/lto/pr64043 cp_lto_pr64043_0.o-cp_lto_pr64043_0.o link,
>> -flto -std=c++11
>>
>> Has something changed in how GCC should be configured or built
>> or what version of Binutils it needs for these tests to pass?
>> My builds run on Fedora 25 with Binutils 2.26.1-1.fc25.
>>
>> Thanks
>> Martin
>>
>>     FAIL: gcc.dg/noncompile/pr55976-1.c (7: -14)
>> !  FAIL: gcc.dg/tree-prof/val-prof-1.c (1: +1)
>>     FAIL: g++.dg/guality/pr55665.C (1)
>> !  FAIL: g++.dg/lto/20091002-1 (1: +1)
>> !  FAIL: g++.dg/lto/pr64043 (1: +1)
>> !  FAIL: g++.dg/lto/pr65193 (1: +1)
>> !  FAIL: g++.dg/lto/pr65302 (1: +1)
>> !  FAIL: g++.dg/lto/pr65316 (1: +1)
>> !  FAIL: g++.dg/lto/pr65549 (2: +2)
>> !  FAIL: g++.dg/lto/pr66180 (1: +1)
>> !  FAIL: g++.dg/lto/pr66705 (1: +1)
>> !  FAIL: g++.dg/lto/pr68057 (4: +4)
>> !  FAIL: g++.dg/lto/pr69077 (1: +1)
>> !  FAIL: g++.dg/lto/pr69133 (1: +1)
>> !  FAIL: g++.dg/lto/pr69137 (1: +1)
>> !  FAIL: g++.dg/lto/pr79000 (1: +1)
>> !  FAIL: g++.dg/lto/pr81940 (1: +1)
>> !  FAIL: g++.dg/lto/pr85176 (1: +1)
>>     FAIL: g++.dg/pr80481.C (3: -6)
>> !  FAIL: gfortran.dg/lto/pr79108 (1: +1)
>> !  FAIL: ./index0-out.go (1: +1)
>> !  FAIL: jit.dg/test-compile-to-assembler.c, (1: +1)
>> !  FAIL: jit.dg/test-compile-to-object.c, (1: +1)
>
> I don't know about the LTO issues, but what are the jit.dg failures
> that you're seeing?

The jit failures look like they're all caused by errors like
the one below:

FAIL: test-compile-to-assembler.c.exe killed: 11694 exp5 0 0 CHILDKILLED 
SIGSEGV {segmentation violation}

Besides those above, there are a large number of others.  I didn't
know those we jit tests until I looked at the jit log.  The full
list is below.

!  FAIL: jit.dg/test-compile-to-assembler.c, (1: +1)
!  FAIL: jit.dg/test-compile-to-object.c, (1: +1)
!  FAIL: output-of-test-compile-to-assembler.c.s (1: +1)
!  FAIL: output-of-test-compile-to-dynamic-library.c.so (1: +1)
!  FAIL: output-of-test-compile-to-executable.c.exe (2: +2)
!  FAIL: output-of-test-compile-to-object.c.o (1: +1)
!  FAIL: test-accessing-struct.c.exe (1: +1)
!  FAIL: test-accessing-union.c.exe (1: +1)
!  FAIL: test-alignment.cc.exe (1: +1)
!  FAIL: test-alignment.c.exe (1: +1)
!  FAIL: test-arith-overflow.c.exe (1: +1)
!  FAIL: test-array-as-pointer.c.exe (1: +1)
!  FAIL: test-arrays.c.exe (1: +1)
!  FAIL: test-autovectorize.c.exe (1: +1)
!  FAIL: test-benchmark.c.exe (1: +1)
!  FAIL: test-calling-external-function.c.exe (1: +1)
!  FAIL: test-calling-function-ptr.c.exe (1: +1)
!  FAIL: test-combination.c.exe (1: +1)
!  FAIL: test-compile-to-assembler.c.exe (1: +1)
!  FAIL: test-compile-to-dynamic-library.c.exe (1: +1)
!  FAIL: test-compile-to-executable.c.exe (1: +1)
!  FAIL: test-compile-to-object.c.exe (1: +1)
!  FAIL: test-compound-assignment.c.exe (1: +1)
!  FAIL: test-constants.c.exe (1: +1)
!  FAIL: test-debug-strings.c.exe (1: +1)
!  FAIL: test-dot-product.c.exe (1: +1)
!  FAIL: test-empty.c.exe (1: +1)
!  FAIL: test-error-array-bounds.c.exe (1: +1)
!  FAIL: test-error-gcc_jit_timer_pop-mismatch.c.exe (1: +1)
!  FAIL: test-error-gcc_jit_timer_pop-too-many.c.exe (1: +1)
!  FAIL: test-error-impossible-must-tail-call.c.exe (1: +1)
!  FAIL: test-error-pr63969-missing-driver.c.exe (1: +1)
!  FAIL: test-expressions.c.exe (1: +1)
!  FAIL: test-extra-options.c.exe (1: +1)
!  FAIL: test-factorial.c.exe (1: +1)
!  FAIL: test-factorial-must-tail-call.c.exe (1: +1)
!  FAIL: test-fibonacci.c.exe (1: +1)
!  FAIL: test-functions.c.exe (1: +1)
!  FAIL: test-hello-world.c.exe (1: +1)
!  FAIL: test-linked-list.c.exe (1: +1)
!  FAIL: test-long-names.c.exe (1: +1)
!  FAIL: test-nested-contexts.c.exe (1: +1)
!  FAIL: test-nested-loops.c.exe (1: +1)
!  FAIL: test-operator-overloading.cc.exe (1: +1)
!  FAIL: test-pr66700-observing-write-through-ptr.c.exe (1: +1)
!  FAIL: test-pr66779.c.exe (1: +1)
!  FAIL: test-quadratic.cc.exe (1: +1)
!  FAIL: test-quadratic.c.exe (1: +1)
!  FAIL: test-reading-struct.c.exe (1: +1)
!  FAIL: test-returning-function-ptr.c.exe (1: +1)
!  FAIL: test-string-literal.c.exe (1: +1)
!  FAIL: test-sum-of-squares.c.exe (1: +1)
!  FAIL: test-switch.cc.exe (1: +1)
!  FAIL: test-switch.c.exe (1: +1)
!  FAIL: test-threads.c.exe (1: +1)
!  FAIL: test-types.c.exe (1: +1)
!  FAIL: test-using-global.c.exe (1: +1)
!  FAIL: test-validly-unreachable-block.c.exe (1: +1)
!  FAIL: test-vector-rvalues.cc.exe (1: +1)
!  FAIL: test-vector-types.cc.exe (1: +1)
!  FAIL: test-volatile.c.exe (1: +1)
!  FAIL: toyvm.cc.exe (1: +1)
!  FAIL: toyvm.c.exe (1: +1)
!  FAIL: verify-dynamic-library.c.exe (1: +1)

Martin

PS I run the test suite on tor with -j96 in case that helps.
I've been using -j96 for at least a couple of GCC releases
with no issues.  The only thing that might have changed is
that lately there is sometimes another parallel build running
on the machine quite often.  It runs as root so I don't know
for sure who it belongs to.  My guess is some automation.



More information about the Gcc mailing list