https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68028

            Bug ID: 68028
           Summary: Compilation error "lto1: error: target attribute or
                    pragma changes single precision floating point", with
                    "-flto" on different variant of powerpc like
                    -mcpu=e6500, 8540, 8548, e500mc, e500mc64, e5500. With
                    gcc-5.2.0 while with 4.9.3 it is working fine.
           Product: gcc
           Version: 5.2.0
            Status: UNCONFIRMED
          Severity: blocker
          Priority: P3
         Component: lto
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ranjan.amit8 at gmail dot com
  Target Milestone: ---

Created attachment 36547
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=36547&action=edit
gdb debug log (LOG5gdb-6-error)

Test-Case:-
$cat test.c
        #include<stdio.h>
        int main()
        {
                printf("Good\n");
                return 0;
        }


$ ./powerpc-pc-linux-gcc -flto test.c -mcpu=e6500
In function âmainâ:
lto1: warning: compilation : main_target_opt = 1
lto1: error: target attribute or pragma changes single precision floating point
lto1: error: target attribute or pragma changes double precision floating point
lto-wrapper: fatal error: ./powerpc-pc-linux-gcc returned 1 exit status
                        compilation terminated.
/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/bin/ld:
lto-wrapper failed
collect2: error: ld returned 1 exit status


Complete :-

$ ./powerpc-pc-linux-gcc -flto test.c -mcpu=e6500 --save-temps -v
Using built-in specs.
COLLECT_GCC=./powerpc-pc-linux-gcc
COLLECT_LTO_WRAPPER=/opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/lto-wrapper
Target: powerpc-pc-linux
Configured with: ../gcc-5.2.0/configure --prefix=/opt/2cross
--build=x86_64-pc-linux --host=x86_64-pc-linux --target=powerpc-pc-linux
--disable-silent-rules --disable-dependency-tracking
--program-prefix=powerpc-pc-linux- --with-gnu-ld --enable-shared
--enable-languages=c,c++ --enable-threads=posix --enable-multilib --enable-c99
--enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch
--without-local-prefix --enable-lto --enable-libssp --disable-bootstrap
--disable-libmudflap --with-system-zlib --with-linker-hash-style=gnu
--enable-linker-build-id --with-ppl=no --with-cloog=no
--enable-checking=release --enable-cheaders=c_global --with-long-double-128
--enable-poison-system-directories --enable-nls --enable-__cxa_atexit :
(reconfigured) ../gcc-5.2.0/configure --prefix=/opt/2cross
--build=x86_64-pc-linux --host=x86_64-pc-linux --target=powerpc-pc-linux
--disable-silent-rules --disable-dependency-tracking
--program-prefix=powerpc-pc-linux- --with-gnu-ld --enable-shared
--enable-languages=c,c++ --enable-threads=posix --enable-multilib --enable-c99
--enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch
--without-local-prefix --enable-lto --enable-libssp --disable-bootstrap
--disable-libmudflap --with-system-zlib --with-linker-hash-style=gnu
--enable-linker-build-id --with-ppl=no --with-cloog=no
--enable-checking=release --enable-cheaders=c_global --with-long-double-128
--enable-poison-system-directories --enable-nls --enable-__cxa_atexit
Thread model: posix
gcc version 5.2.0 (GCC)
COLLECT_GCC_OPTIONS='-flto' '-mcpu=e6500' '-save-temps' '-v'
 /opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/cc1 -E -quiet -v -imultilib .
-imultiarch powerpc-linux-gnu -D__unix__ -D__gnu_linux__ -D__linux__ -Dunix
-D__unix -Dlinux -D__linux -Asystem=linux -Asystem=unix -Asystem=posix test.c
-mcpu=e6500 -flto -fpch-preprocess -o test.i
ignoring nonexistent directory
"/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/sys-include"
#include "..." search starts here:
#include <...> search starts here:
 /opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/include
 /opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/include-fixed

/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/include
End of search list.
COLLECT_GCC_OPTIONS='-flto' '-mcpu=e6500' '-save-temps' '-v'
 /opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/cc1 -fpreprocessed test.i
-quiet -dumpbase test.c -mcpu=e6500 -auxbase test -version -flto -o test.s
GNU C11 (GCC) version 5.2.0 (powerpc-pc-linux)
        compiled by GNU C version 4.8.3 20140911 (Red Hat 4.8.3-7), GMP version
6.0.0, MPFR version 3.1.3, MPC version 1.0.3
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU C11 (GCC) version 5.2.0 (powerpc-pc-linux)
        compiled by GNU C version 4.8.3 20140911 (Red Hat 4.8.3-7), GMP version
6.0.0, MPFR version 3.1.3, MPC version 1.0.3
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: a731f13b92b5f0a8db41dce6b3a414e5
COLLECT_GCC_OPTIONS='-flto' '-mcpu=e6500' '-save-temps' '-v'
 /opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/bin/as
-v -me6500 -many -mbig -o test.o test.s
GNU assembler version 2.24 (powerpc-pc-linux) using BFD version (GNU Binutils)
2.24
COMPILER_PATH=/opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/:/opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/:/opt/2cross/libexec/gcc/powerpc-pc-linux/:/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/:/opt/2cross/lib/gcc/powerpc-pc-linux/:/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/bin/
LIBRARY_PATH=/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/:/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/lib/
COLLECT_GCC_OPTIONS='-flto' '-mcpu=e6500' '-save-temps' '-v'
 /opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/collect2 -plugin
/opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/liblto_plugin.so
-plugin-opt=/opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/lto-wrapper
-plugin-opt=-fresolution=test.res -plugin-opt=-pass-through=-lgcc
-plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc
-plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -flto
--build-id --eh-frame-hdr --hash-style=gnu -V -m elf32ppclinux -dynamic-linker
/lib/ld.so.1
/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/lib/crt1.o
/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/lib/crti.o
/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/crtbegin.o
-L/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0
-L/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/lib
test.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s
--no-as-needed /opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/crtend.o
/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/lib/crtn.o
GNU ld (GNU Binutils) 2.24
  Supported emulations:
   elf32ppclinux
   elf32ppc
   elf32ppcsim
   elf64ppc
./powerpc-pc-linux-gcc @/tmp/ccDYN3RI
Using built-in specs.
COLLECT_GCC=./powerpc-pc-linux-gcc
Target: powerpc-pc-linux
Configured with: ../gcc-5.2.0/configure --prefix=/opt/2cross
--build=x86_64-pc-linux --host=x86_64-pc-linux --target=powerpc-pc-linux
--disable-silent-rules --disable-dependency-tracking
--program-prefix=powerpc-pc-linux- --with-gnu-ld --enable-shared
--enable-languages=c,c++ --enable-threads=posix --enable-multilib --enable-c99
--enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch
--without-local-prefix --enable-lto --enable-libssp --disable-bootstrap
--disable-libmudflap --with-system-zlib --with-linker-hash-style=gnu
--enable-linker-build-id --with-ppl=no --with-cloog=no
--enable-checking=release --enable-cheaders=c_global --with-long-double-128
--enable-poison-system-directories --enable-nls --enable-__cxa_atexit :
(reconfigured) ../gcc-5.2.0/configure --prefix=/opt/2cross
--build=x86_64-pc-linux --host=x86_64-pc-linux --target=powerpc-pc-linux
--disable-silent-rules --disable-dependency-tracking
--program-prefix=powerpc-pc-linux- --with-gnu-ld --enable-shared
--enable-languages=c,c++ --enable-threads=posix --enable-multilib --enable-c99
--enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch
--without-local-prefix --enable-lto --enable-libssp --disable-bootstrap
--disable-libmudflap --with-system-zlib --with-linker-hash-style=gnu
--enable-linker-build-id --with-ppl=no --with-cloog=no
--enable-checking=release --enable-cheaders=c_global --with-long-double-128
--enable-poison-system-directories --enable-nls --enable-__cxa_atexit
Thread model: posix
gcc version 5.2.0 (GCC)
COLLECT_GCC_OPTIONS='-c' '-fmath-errno' '-fsigned-zeros' '-ftrapping-math'
'-fno-trapv' '-fno-strict-overflow' '-fno-openmp' '-fno-openacc' '-mcpu=e6500'
'-mcpu=e6500' '-save-temps' '-v'
'-fltrans-output-list=/tmp/cctzqXsp.ltrans.out' '-fwpa' '-fresolution=test.res'
 /opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/lto1 -quiet -dumpbase test.o
-mcpu=e6500 -mcpu=e6500 -auxbase test -version -fmath-errno -fsigned-zeros
-ftrapping-math -fno-trapv -fno-strict-overflow -fno-openmp -fno-openacc
-fltrans-output-list=/tmp/cctzqXsp.ltrans.out -fwpa -fresolution=test.res
@/tmp/cccUVo0o
GNU GIMPLE (GCC) version 5.2.0 (powerpc-pc-linux)
        compiled by GNU C version 4.8.3 20140911 (Red Hat 4.8.3-7), GMP version
6.0.0, MPFR version 3.1.3, MPC version 1.0.3
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU GIMPLE (GCC) version 5.2.0 (powerpc-pc-linux)
        compiled by GNU C version 4.8.3 20140911 (Red Hat 4.8.3-7), GMP version
6.0.0, MPFR version 3.1.3, MPC version 1.0.3
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
COMPILER_PATH=/opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/:/opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/:/opt/2cross/libexec/gcc/powerpc-pc-linux/:/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/:/opt/2cross/lib/gcc/powerpc-pc-linux/:/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/bin/:/opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/:/opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/:/opt/2cross/libexec/gcc/powerpc-pc-linux/:/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/:/opt/2cross/lib/gcc/powerpc-pc-linux/:/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/bin/
LIBRARY_PATH=/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/:/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/lib/
COLLECT_GCC_OPTIONS='-c' '-fmath-errno' '-fsigned-zeros' '-ftrapping-math'
'-fno-trapv' '-fno-strict-overflow' '-fno-openmp' '-fno-openacc' '-mcpu=e6500'
'-mcpu=e6500' '-save-temps' '-v'
'-fltrans-output-list=/tmp/cctzqXsp.ltrans.out' '-fwpa' '-fresolution=test.res'
[Leaving LTRANS /tmp/cctzqXsp.ltrans.out]
./powerpc-pc-linux-gcc @/tmp/cc5niuo2
Using built-in specs.
COLLECT_GCC=./powerpc-pc-linux-gcc
Target: powerpc-pc-linux
Configured with: ../gcc-5.2.0/configure --prefix=/opt/2cross
--build=x86_64-pc-linux --host=x86_64-pc-linux --target=powerpc-pc-linux
--disable-silent-rules --disable-dependency-tracking
--program-prefix=powerpc-pc-linux- --with-gnu-ld --enable-shared
--enable-languages=c,c++ --enable-threads=posix --enable-multilib --enable-c99
--enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch
--without-local-prefix --enable-lto --enable-libssp --disable-bootstrap
--disable-libmudflap --with-system-zlib --with-linker-hash-style=gnu
--enable-linker-build-id --with-ppl=no --with-cloog=no
--enable-checking=release --enable-cheaders=c_global --with-long-double-128
--enable-poison-system-directories --enable-nls --enable-__cxa_atexit :
(reconfigured) ../gcc-5.2.0/configure --prefix=/opt/2cross
--build=x86_64-pc-linux --host=x86_64-pc-linux --target=powerpc-pc-linux
--disable-silent-rules --disable-dependency-tracking
--program-prefix=powerpc-pc-linux- --with-gnu-ld --enable-shared
--enable-languages=c,c++ --enable-threads=posix --enable-multilib --enable-c99
--enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch
--without-local-prefix --enable-lto --enable-libssp --disable-bootstrap
--disable-libmudflap --with-system-zlib --with-linker-hash-style=gnu
--enable-linker-build-id --with-ppl=no --with-cloog=no
--enable-checking=release --enable-cheaders=c_global --with-long-double-128
--enable-poison-system-directories --enable-nls --enable-__cxa_atexit
Thread model: posix
gcc version 5.2.0 (GCC)
COLLECT_GCC_OPTIONS='-c' '-fmath-errno' '-fsigned-zeros' '-ftrapping-math'
'-fno-trapv' '-fno-strict-overflow' '-fno-openmp' '-fno-openacc' '-mcpu=e6500'
'-mcpu=e6500' '-save-temps' '-v'
'-fltrans-output-list=/tmp/cctzqXsp.ltrans.out' '-fltrans' '-o'
'/tmp/cctzqXsp.ltrans0.ltrans.o'
 /opt/2cross/libexec/gcc/powerpc-pc-linux/5.2.0/lto1 -quiet -dumpbase
cctzqXsp.ltrans0.o -mcpu=e6500 -mcpu=e6500 -auxbase-strip
/tmp/cctzqXsp.ltrans0.ltrans.o -version -fmath-errno -fsigned-zeros
-ftrapping-math -fno-trapv -fno-strict-overflow -fno-openmp -fno-openacc
-fltrans-output-list=/tmp/cctzqXsp.ltrans.out -fltrans @/tmp/ccWS3nIr -o
cctzqXsp.ltrans0.s
GNU GIMPLE (GCC) version 5.2.0 (powerpc-pc-linux)
        compiled by GNU C version 4.8.3 20140911 (Red Hat 4.8.3-7), GMP version
6.0.0, MPFR version 3.1.3, MPC version 1.0.3
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU GIMPLE (GCC) version 5.2.0 (powerpc-pc-linux)
        compiled by GNU C version 4.8.3 20140911 (Red Hat 4.8.3-7), GMP version
6.0.0, MPFR version 3.1.3, MPC version 1.0.3
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
In function âmainâ:
lto1: error: target attribute or pragma changes single precision floating point
lto1: error: target attribute or pragma changes double precision floating point
lto-wrapper: fatal error: ./powerpc-pc-linux-gcc returned 1 exit status
compilation terminated.
[Leaving LTRANS /tmp/cc5niuo2]
[Leaving LTRANS /tmp/cctzqXsp.ltrans0.o]
/opt/2cross/lib/gcc/powerpc-pc-linux/5.2.0/../../../../powerpc-pc-linux/bin/ld:
lto-wrapper failed
collect2: error: ld returned 1 exit status

Reply via email to