http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53076

             Bug #: 53076
           Summary: [4.8 Regression]: gcc.dg/torture/builtin-explog-1.c,
                    gcc.dg/torture/builtin-power-1.c at -O0 soft-float
                    newlib
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Keywords: wrong-code
          Severity: normal
          Priority: P3
         Component: regression
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: h...@gcc.gnu.org
                CC: wschm...@gcc.gnu.org
              Host: x86_64-unknown-linux-gnu
            Target: cris-axis-elf


These tests previously passed, now they fail.
A patch in the revision range (last_known_working:first_known_failing)
186623:186630
exposed or caused these regressions.  Since then they fail as follows:

Running /tmp/hpautotest-gcc1/gcc/gcc/testsuite/gcc.dg/torture/dg-torture.exp
...
FAIL: gcc.dg/torture/builtin-explog-1.c  -O0  (test for excess errors)
FAIL: gcc.dg/torture/builtin-power-1.c  -O0  (test for excess errors)

The messages in gcc.log are similar:

Executing on host: /tmp/hpautotest-gcc1/cris-elf/gccobj/gcc/xgcc
-B/tmp/hpautotest-gcc1/cris-elf/gccobj/gcc/
/tmp/hpautotest-gcc1/gcc/gcc/testsuite/gcc.dg/torture/builtin-explog-1.c 
-fno-diagnostics-show-caret   -O0  -ffast-math   -isystem
/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./newlib/targ-include -isystem
/tmp/hpautotest-gcc1/gcc/newlib/libc/include
-B/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./libgloss/cris/
-L/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./libgloss/cris
-L/tmp/hpautotest-gcc1/gcc/libgloss/cris 
-B/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./newlib/
-L/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/./newlib -sim3  -lm   -o
builtin-explog-1.exe    (timeout = 300)
/tmp/cc0ahpu0.o: In function `test':
builtin-explog-1.c:(.text+0x156): undefined reference to
`link_failure_cbrt_exp'
builtin-explog-1.c:(.text+0x28a): undefined reference to
`link_failure_cbrt_exp2'
builtin-explog-1.c:(.text+0x372): undefined reference to `exp10l'
builtin-explog-1.c:(.text+0x39e): undefined reference to `exp10l'
builtin-explog-1.c:(.text+0x3be): undefined reference to
`link_failure_cbrt_exp10'
builtin-explog-1.c:(.text+0x4a6): undefined reference to `pow10l'
builtin-explog-1.c:(.text+0x4d2): undefined reference to `pow10l'
builtin-explog-1.c:(.text+0x4f2): undefined reference to
`link_failure_cbrt_pow10'

and for the other test:

builtin-power-1.c:(.text+0x178): undefined reference to `link_failure_pow_sqrt'
builtin-power-1.c:(.text+0x32a): undefined reference to `link_failure_pow_cbrt'
builtin-power-1.c:(.text+0x4e8): undefined reference to `link_failure_sqrt_pow'
builtin-power-1.c:(.text+0x6ae): undefined reference to `link_failure_cbrt_pow'


cris-elf is a soft-float newlib target and I guess the new code and/or
test-cases are making invalid assumptions on what math functions are available;
one or both need to be gated on their availability.

Author of suspect patch in revision range CC:ed.

Reply via email to