[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2018-04-24 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #12 from Martin Liška  ---
I can confirm it's resolved. Thanks!

[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2018-04-23 Thread bergner at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

Peter Bergner  changed:

   What|Removed |Added

 CC||bergner at gcc dot gnu.org

--- Comment #11 from Peter Bergner  ---
Is this fixed so we mark it as RESOLVED / FIXED ???

[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2018-04-13 Thread vmakarov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

--- Comment #10 from Vladimir Makarov  ---
Author: vmakarov
Date: Fri Apr 13 22:55:16 2018
New Revision: 259379

URL: https://gcc.gnu.org/viewcvs?rev=259379=gcc=rev
Log:
2018-04-13  Vladimir Makarov  

PR rtl-optimization/79916
* config/rs6000/rs6000.c (rs6000_emit_move): Use assigned hard
regs (if any) to define how to gnerate SD moves when LRA is in
progress.

2018-04-13  Vladimir Makarov  

PR rtl-optimization/79916
* gcc.target/powerpc/pr79916.c: New.


Added:
trunk/gcc/testsuite/gcc.target/powerpc/pr79916.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/rs6000/rs6000.c
trunk/gcc/testsuite/ChangeLog

[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2018-04-12 Thread vmakarov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

--- Comment #9 from Vladimir Makarov  ---
I've reproduced one test bug on my machine by using:

./cc1 -I. ../../gcc/gcc/testsuite/gcc.dg/dfp/pr41049.c
-fno-expensive-optimizations --param ira-max-conflict-table-size=0 -mpopcntd
-O3

I think the fix can be probably in rs6000 machine-dependent code related to LRA
and fixing it needs to know LRA very well.  So I'll be working on it.

[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2018-04-09 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

Martin Liška  changed:

   What|Removed |Added

 CC||segher at gcc dot gnu.org

--- Comment #8 from Martin Liška  ---
Segher, can you please try to reproduce these?

[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2018-04-09 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

--- Comment #7 from Martin Liška  ---
I still believe it's valid, now I'm able to reproduce that on gcc112 machine in
compile farm:

$ ./xg++ -v
Using built-in specs.
COLLECT_GCC=./xg++
Target: powerpc64le-unknown-linux-gnu
Configured with: ../configure --prefix=/home/marxin/bin/gcc
--enable-languages=c,c++,fortran --disable-bootstrap
Thread model: posix
gcc version 8.0.1 20180328 (experimental) (GCC) 

$ ./xg++ -B.
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/return-6_x.C
-mno-popcntd -Og
during RTL pass: reload
In file included from
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/return-6_x.C:7:
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/return_x.h: In
function ‘void testitd32()’:
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/return_x.h:84:1:
internal compiler error: Max. number of generated reload insns per insn is
achieved (90)

 }
 ^
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/return_x.h:86:1:
note: in expansion of macro ‘T’
 T(d32, dec32, (dec32)1.5DF);
 ^
0x10f3aa57 lra_constraints(bool)
../../gcc/lra-constraints.c:4822
0x10f1768b lra(_IO_FILE*)
../../gcc/lra.c:2420
0x10e9008b do_reload
../../gcc/ira.c:5465
0x10e90913 execute
../../gcc/ira.c:5649

Apart from that I see some other very similar issues:

$ ./xgcc -B.
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/return-1_x.C
-mno-popcntd -O1
during RTL pass: reload
In file included from
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/return-1_x.C:5:
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/return_x.h: In
function ‘void testitd32()’:
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/return_x.h:84:1:
internal compiler error: Max. number of generated reload insns per insn is
achieved (90)

 }
 ^
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/return_x.h:86:1:
note: in expansion of macro ‘T’
 T(d32, dec32, (dec32)1.5DF);
 ^
0x10f3aa57 lra_constraints(bool)
../../gcc/lra-constraints.c:4822
0x10f1768b lra(_IO_FILE*)
../../gcc/lra.c:2420
0x10e9008b do_reload
../../gcc/ira.c:5465
0x10e90913 execute
../../gcc/ira.c:5649

$ ./xgcc -B. /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/dfp/pr41049.c
-fno-expensive-optimizations --param ira-max-conflict-table-size=0 -mno-popcntd
-O3
during RTL pass: reload
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/dfp/pr41049.c: In function
‘zeroes_32’:
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/dfp/pr41049.c:205:1: internal
compiler error: Max. number of generated reload insns per insn is achieved (90)

 }
 ^
0x10bc897b lra_constraints(bool)
../../gcc/lra-constraints.c:4822
0x10ba55af lra(_IO_FILE*)
../../gcc/lra.c:2420
0x10b1dfaf do_reload
../../gcc/ira.c:5465
0x10b1e837 execute
../../gcc/ira.c:5649

$ ./xgcc -B.
/home/marxin/Programming/gcc/gcc/testsuite/c-c++-common/dfp/convert-bfp-4.c
-mno-popcntd -Og
during RTL pass: reload
/home/marxin/Programming/gcc/gcc/testsuite/c-c++-common/dfp/convert-bfp-4.c: In
function ‘convert_t_sdsf_pinf’:
/home/marxin/Programming/gcc/gcc/testsuite/c-c++-common/dfp/convert-bfp-4.c:13:1:
internal compiler error: Max. number of generated reload insns per insn is
achieved (90)

 CONVERT_INF_ALL (t);
 ^~~
0x10bc897b lra_constraints(bool)
../../gcc/lra-constraints.c:4822
0x10ba55af lra(_IO_FILE*)
../../gcc/lra.c:2420
0x10b1dfaf do_reload
../../gcc/ira.c:5465
0x10b1e837 execute
../../gcc/ira.c:5649

$ ./xgcc -B.
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/pass-6_x.C
-mno-powerpc-gfxopt -Og
during RTL pass: reload
In file included from
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/pass-6_x.C:7:
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/pass_x.h: In
function ‘void testitd32()’:
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/pass_x.h:145:1:
internal compiler error: Max. number of generated reload insns per insn is
achieved (90)

 }
 ^
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/pass_x.h:147:1:
note: in expansion of macro ‘T’
 T(d32, dec32, (dec32)1.5DF)
 ^
0x10f3aa57 lra_constraints(bool)
../../gcc/lra-constraints.c:4822
0x10f1768b lra(_IO_FILE*)
../../gcc/lra.c:2420
0x10e9008b do_reload
../../gcc/ira.c:5465
0x10e90913 execute
../../gcc/ira.c:5649

[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2017-03-08 Thread vmakarov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

--- Comment #6 from Vladimir Makarov  ---
I still can not reproduce it but I hope the fix for PR 79949 will be also a fix
for this PR.

[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2017-03-07 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

--- Comment #5 from Martin Liška  ---
That's strange, cc1plus command line has nothing special as I can see:

$ 
/home/marxin/BIG/buildbot/slave/install/gcc-dda535fd9490e3e8f31bacc6678e0c734ff59212/bin/../lib/gcc/ppc64le-linux-gnu/7.0.1/cc1plus
-quiet -v -iprefix
/home/marxin/BIG/buildbot/slave/install/gcc-dda535fd9490e3e8f31bacc6678e0c734ff59212/bin/../lib64/gcc/ppc64le-linux-gnu/7.0.1/
-D_GNU_SOURCE -D__unix__ -D__gnu_linux__ -D__linux__ -Dunix -D__unix -Dlinux
-D__linux -Asystem=linux -Asystem=unix -Asystem=posix
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/compat/decimal/return-6_x.C
-quiet -dumpbase return-6_x.C -mno-popcntd -auxbase return-6_x -Og -version -o
/tmp/ccsVo0KI.s

[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2017-03-07 Thread bernds at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

--- Comment #4 from Bernd Schmidt  ---
I also have trouble reproducing this. Rather than the g++ commandline, please
post what is passed to cc1plus.

[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2017-03-07 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

--- Comment #3 from Martin Liška  ---
Btw. GCC 5 and GCC 6 work fine.

[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2017-03-07 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

--- Comment #2 from Martin Liška  ---
There's how I created the cross-compiler:

$ configure --target=ppc64le-linux-gnu
--with-as=/usr/bin/powerpc64le-suse-linux-as --disable-bootstrap

$ ppc64le-linux-gnu-g++ -v
...
gcc version 7.0.1 20170307 (experimental) (GCC)

[Bug rtl-optimization/79916] ICE in Max. number of generated reload insns per insn is achieved (90)

2017-03-06 Thread vmakarov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79916

--- Comment #1 from Vladimir Makarov  ---
Sorry, I can not reproduce the bug.  I built a cross-compiler configured as
--target=ppc64le-linux-gnu on today trunk.