* [Bug middle-end/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
@ 2012-12-10 9:43 ` rguenth at gcc dot gnu.org
2012-12-11 11:34 ` jakub at gcc dot gnu.org
` (10 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-12-10 9:43 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |ice-on-valid-code
Priority|P3 |P1
Target Milestone|--- |4.8.0
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug middle-end/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
2012-12-10 9:43 ` [Bug middle-end/55630] " rguenth at gcc dot gnu.org
@ 2012-12-11 11:34 ` jakub at gcc dot gnu.org
2012-12-11 23:50 ` danglin at gcc dot gnu.org
` (9 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jakub at gcc dot gnu.org @ 2012-12-11 11:34 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-12-11 11:34:16 UTC ---
Can't reproduce with a cross compiler, not even 32-bit HWI one.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug middle-end/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
2012-12-10 9:43 ` [Bug middle-end/55630] " rguenth at gcc dot gnu.org
2012-12-11 11:34 ` jakub at gcc dot gnu.org
@ 2012-12-11 23:50 ` danglin at gcc dot gnu.org
2012-12-12 0:12 ` danglin at gcc dot gnu.org
` (8 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: danglin at gcc dot gnu.org @ 2012-12-11 23:50 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
John David Anglin <danglin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target|hppa2.0w-hp-hpux11.11 |hppa*-*-* (32-bit)
Host|hppa2.0w-hp-hpux11.11 |hppa*-*-* (32-bit)
Build|hppa2.0w-hp-hpux11.11 |hppa*-*-* (32-bit)
--- Comment #2 from John David Anglin <danglin at gcc dot gnu.org> 2012-12-11 23:50:06 UTC ---
Have backtrace on linux:
Compiler executable checksum: 2471c145ed09407ba32da95e98d20f8f
/home/dave/gnu/gcc/gcc/gcc/testsuite/g++.dg/pr48660.C: In member function
‘virtu
al val<2> Derived::_ZTv0_n16_NK7Derived4get2Ev() const’:
/home/dave/gnu/gcc/gcc/gcc/testsuite/g++.dg/pr48660.C:16:18: internal compiler
e
rror: in simplify_subreg, at simplify-rtx.c:5682
0x6f3353 simplify_subreg(machine_mode, rtx_def*, machine_mode, unsigned int)
../../gcc/gcc/simplify-rtx.c:5682
0x6f3707 simplify_gen_subreg(machine_mode, rtx_def*, machine_mode, unsigned
int)
../../gcc/gcc/simplify-rtx.c:5906
0x473c83 operand_subword_force(rtx_def*, unsigned int, machine_mode)
../../gcc/gcc/emit-rtl.c:1441
0x4a3f83 copy_blkmode_to_reg(machine_mode, tree_node*)
../../gcc/gcc/expr.c:2256
0x4a7d6b expand_assignment(tree_node*, tree_node*, bool)
../../gcc/gcc/expr.c:4924
0x3bb26f expand_call_stmt
../../gcc/gcc/cfgexpand.c:2113
0x3bb26f expand_gimple_stmt_1
../../gcc/gcc/cfgexpand.c:2153
0x3bb26f expand_gimple_stmt
../../gcc/gcc/cfgexpand.c:2305
0x3bcd7f expand_gimple_tailcall
../../gcc/gcc/cfgexpand.c:2352
0x3bcd7f expand_gimple_basic_block
../../gcc/gcc/cfgexpand.c:4061
0x3be11f gimple_expand_cfg
../../gcc/gcc/cfgexpand.c:4603
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug middle-end/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
` (2 preceding siblings ...)
2012-12-11 23:50 ` danglin at gcc dot gnu.org
@ 2012-12-12 0:12 ` danglin at gcc dot gnu.org
2012-12-12 1:01 ` danglin at gcc dot gnu.org
` (7 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: danglin at gcc dot gnu.org @ 2012-12-12 0:12 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
--- Comment #3 from John David Anglin <danglin at gcc dot gnu.org> 2012-12-12 00:12:13 UTC ---
Breakpoint 1, simplify_subreg (outermode=SImode, op=0x40660c70,
innermode=BLKmode, byte=0) at ../../gcc/gcc/simplify-rtx.c:5682
5682 gcc_assert (innermode != BLKmode);
(gdb) cond 2 op==0x40660c70
(gdb) bt
#0 simplify_subreg (outermode=SImode, op=0x40660c70, innermode=BLKmode,
byte=0) at ../../gcc/gcc/simplify-rtx.c:5682
#1 0x0074dc18 in simplify_gen_subreg (outermode=SImode, op=0x40660c70,
innermode=BLKmode, byte=0) at ../../gcc/gcc/simplify-rtx.c:5906
#2 0x0049dd78 in operand_subword (op=0x40660c70, offset=7,
validate_address=0, mode=BLKmode) at ../../gcc/gcc/emit-rtl.c:1428
#3 0x0049ddc0 in operand_subword_force (op=0x40660c70, offset=0, mode=BLKmode)
at ../../gcc/gcc/emit-rtl.c:1441
#4 0x004cc7e4 in copy_blkmode_to_reg (mode=HImode, src=<optimized out>)
at ../../gcc/gcc/expr.c:2256
#5 0x004d5514 in expand_assignment (to=0x4063d870, from=0x4065e680,
nontemporal=false) at ../../gcc/gcc/expr.c:4924
#6 0x003e1d84 in expand_call_stmt (stmt=0x406609f0)
at ../../gcc/gcc/cfgexpand.c:2113
#7 expand_gimple_stmt_1 (stmt=0x406609f0) at ../../gcc/gcc/cfgexpand.c:2153
#8 expand_gimple_stmt (stmt=0x406609f0) at ../../gcc/gcc/cfgexpand.c:2305
#9 0x003e26a4 in expand_gimple_tailcall (bb=0xc02a98, stmt=0xbf1284,
can_fallthru=0x24) at ../../gcc/gcc/cfgexpand.c:2352
#10 0x003e402c in expand_gimple_basic_block (bb=0x4064aa00,
disable_tail_calls=<optimized out>) at ../../gcc/gcc/cfgexpand.c:4061
#11 0x003e6f4c in gimple_expand_cfg () at ../../gcc/gcc/cfgexpand.c:4603
#12 0x006a6714 in execute_one_pass (pass=0x1) at ../../gcc/gcc/passes.c:2335
#13 0x006a6b7c in execute_pass_list (pass=0xd81050)
---Type <return> to continue, or q <return> to quit---
at ../../gcc/gcc/passes.c:2383
#14 0x0040caf0 in expand_function (node=0x4062f738)
at ../../gcc/gcc/cgraphunit.c:1641
#15 0x0040d394 in cgraph_process_new_functions ()
at ../../gcc/gcc/cgraphunit.c:335
#16 0x0040eda0 in compile () at ../../gcc/gcc/cgraphunit.c:2047
#17 0x0040f210 in finalize_compilation_unit ()
at ../../gcc/gcc/cgraphunit.c:2120
#18 0x001decb0 in cp_write_global_declarations ()
at ../../gcc/gcc/cp/decl2.c:4292
#19 0x0076b1c8 in compile_file () at ../../gcc/gcc/toplev.c:559
#20 0x0076d3c4 in do_compile () at ../../gcc/gcc/toplev.c:1878
#21 toplev_main (argc=16, argv=0xfbf02024) at ../../gcc/gcc/toplev.c:1954
#22 0x00b317e8 in main (argc=<optimized out>, argv=<optimized out>)
at ../../gcc/gcc/main.c:36
(gdb) p innermode
$4 = BLKmode
(gdb) p debug_rtx (op)
(reg:HI 105)
$5 = void
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug middle-end/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
` (3 preceding siblings ...)
2012-12-12 0:12 ` danglin at gcc dot gnu.org
@ 2012-12-12 1:01 ` danglin at gcc dot gnu.org
2012-12-12 1:12 ` danglin at gcc dot gnu.org
` (6 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: danglin at gcc dot gnu.org @ 2012-12-12 1:01 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
--- Comment #4 from John David Anglin <danglin at gcc dot gnu.org> 2012-12-12 01:00:59 UTC ---
Introduced between 192625 and 192884.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug middle-end/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
` (4 preceding siblings ...)
2012-12-12 1:01 ` danglin at gcc dot gnu.org
@ 2012-12-12 1:12 ` danglin at gcc dot gnu.org
2012-12-12 3:58 ` danglin at gcc dot gnu.org
` (5 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: danglin at gcc dot gnu.org @ 2012-12-12 1:12 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
--- Comment #5 from John David Anglin <danglin at gcc dot gnu.org> 2012-12-12 01:12:06 UTC ---
dave@mx3210:~/gnu/gcc/objdir/gcc$ ./xgcc -B./ -v
Reading specs from ./specs
COLLECT_GCC=./xgcc
COLLECT_LTO_WRAPPER=./lto-wrapper
Target: hppa-linux-gnu
Configured with: ../gcc/configure --with-gnu-as --with-gnu-ld --enable-shared
--enable-multiarch --with-multiarch-defaults=hppa-linux-gnu
--enable-linker-build-id --build=hppa-linux-gnu --host=hppa-linux-gnu
--target=hppa-linux-gnu --prefix=/home/dave/opt/gnu/gcc/gcc-4.8
--with-local-prefix=/home/dave/opt/gnu --enable-threads=posix
--enable-__cxa_atexit --build=hppa-linux-gnu --enable-clocale=gnu
--enable-java-gc=boehm
--enable-languages=c,c++,objc,fortran,obj-c++,java,ada,lto
Thread model: posix
gcc version 4.8.0 20121211 (experimental) [trunk revision 194379] (GCC)
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug middle-end/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
` (5 preceding siblings ...)
2012-12-12 1:12 ` danglin at gcc dot gnu.org
@ 2012-12-12 3:58 ` danglin at gcc dot gnu.org
2012-12-13 9:40 ` ebotcazou at gcc dot gnu.org
` (4 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: danglin at gcc dot gnu.org @ 2012-12-12 3:58 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
--- Comment #6 from John David Anglin <danglin at gcc dot gnu.org> 2012-12-12 03:58:29 UTC ---
Introduced by the following commit:
Author: ebotcazou
Date: Sat Oct 20 21:00:23 2012
New Revision: 192641
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=192641
Log:
PR rtl-optimization/54315
* calls.c (expand_call): Don't deal specifically with BLKmode values
returned in naked registers.
* expr.h (copy_blkmode_from_reg): Adjust prototype.
* expr.c (copy_blkmode_from_reg): Rename first parameter into TARGET and
make it required. Assert that SRCREG hasn't BLKmode. Add a couple of
short-circuits for common cases and be prepared for sub-word registers.
(expand_assignment): Call copy_blkmode_from_reg for BLKmode values
returned in naked registers.
(store_expr): Likewise.
(store_field): Likewise.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/calls.c
trunk/gcc/expr.c
trunk/gcc/expr.h
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug middle-end/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
` (6 preceding siblings ...)
2012-12-12 3:58 ` danglin at gcc dot gnu.org
@ 2012-12-13 9:40 ` ebotcazou at gcc dot gnu.org
2012-12-13 10:15 ` ebotcazou at gcc dot gnu.org
` (3 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2012-12-13 9:40 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2012-12-13
CC| |ebotcazou at gcc dot
| |gnu.org
Ever Confirmed|0 |1
--- Comment #7 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-12-13 09:39:39 UTC ---
Weird. I convinced myself when I wrote this that the PA couldn't make use of
the copy_blkmode_from_reg path anymore because it wraps everything in a
PARALLEL, so I mainly tested it on the MIPS instead. In any case, confirmed
with a cross.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug middle-end/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
` (7 preceding siblings ...)
2012-12-13 9:40 ` ebotcazou at gcc dot gnu.org
@ 2012-12-13 10:15 ` ebotcazou at gcc dot gnu.org
2012-12-16 9:47 ` [Bug rtl-optimization/55630] " ebotcazou at gcc dot gnu.org
` (2 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2012-12-13 10:15 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
CC|ebotcazou at gcc dot |
|gnu.org |
AssignedTo|unassigned at gcc dot |ebotcazou at gcc dot
|gnu.org |gnu.org
--- Comment #8 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-12-13 10:15:22 UTC ---
Fixing.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug rtl-optimization/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
` (8 preceding siblings ...)
2012-12-13 10:15 ` ebotcazou at gcc dot gnu.org
@ 2012-12-16 9:47 ` ebotcazou at gcc dot gnu.org
2012-12-16 10:04 ` ebotcazou at gcc dot gnu.org
2012-12-16 10:05 ` ebotcazou at gcc dot gnu.org
11 siblings, 0 replies; 13+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2012-12-16 9:47 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|middle-end |rtl-optimization
--- Comment #9 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-12-16 09:46:57 UTC ---
Recategorizing.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug rtl-optimization/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
` (9 preceding siblings ...)
2012-12-16 9:47 ` [Bug rtl-optimization/55630] " ebotcazou at gcc dot gnu.org
@ 2012-12-16 10:04 ` ebotcazou at gcc dot gnu.org
2012-12-16 10:05 ` ebotcazou at gcc dot gnu.org
11 siblings, 0 replies; 13+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2012-12-16 10:04 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
--- Comment #10 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-12-16 10:02:43 UTC ---
Author: ebotcazou
Date: Sun Dec 16 10:02:37 2012
New Revision: 194530
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=194530
Log:
PR rtl-optimization/55630
* expr.c (expand_assignment): Do not call copy_blkmode_to_reg to move
BLKmode return values to the return register.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/expr.c
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug rtl-optimization/55630] [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error)
2012-12-09 16:31 [Bug middle-end/55630] New: [4.8 Regression] FAIL: g++.dg/pr48660.C -std=c++98 (internal compiler error) danglin at gcc dot gnu.org
` (10 preceding siblings ...)
2012-12-16 10:04 ` ebotcazou at gcc dot gnu.org
@ 2012-12-16 10:05 ` ebotcazou at gcc dot gnu.org
11 siblings, 0 replies; 13+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2012-12-16 10:05 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55630
Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
--- Comment #11 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-12-16 10:04:59 UTC ---
.
^ permalink raw reply [flat|nested] 13+ messages in thread