* [Bug middle-end/53106] [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build
2012-04-24 21:49 [Bug middle-end/53106] New: [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build hjl.tools at gmail dot com
@ 2012-04-24 21:50 ` hjl.tools at gmail dot com
2012-04-24 23:13 ` hjl.tools at gmail dot com
` (9 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hjl.tools at gmail dot com @ 2012-04-24 21:50 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53106
--- Comment #1 from H.J. Lu <hjl.tools at gmail dot com> 2012-04-24 21:50:20 UTC ---
On Linux/ia32, 447.dealII failed to build:
g++ -m32 -c -o fe_raviart_thomas.o -DSPEC_CPU -DNDEBUG -Iinclude
-DBOOST_DISABLE_THREADS -Ddeal_II_dimension=3 -O3 -funroll-loops -msse2
-mfpmath=sse -ffast-math fe_raviart_thomas.cc
fe_raviart_thomas.cc:2004:51: error: caller edge frequency 3943 does not match
BB frequency 390
template class FE_RaviartThomas<deal_II_dimension>;
^
_ZNSt14_Bit_referenceaSEb.part.9/2392 (std::_Bit_reference&
std::_Bit_reference::_ZNSt14_Bit_referenceaSEb.part.9()) @0x2aaaae94e4e0
Type: function
Visibility: prevailing_def_ironly visibility_specified artificial
previous sharing asm name: 3263
References:
Referring:
Function std::_Bit_reference&
std::_Bit_reference::_ZNSt14_Bit_referenceaSEb.part.9()/2392 is inline copy in
std::_Bit_reference& std::_Bit_reference::operator=(bool)/273
Availability: local
Function flags: analyzed body local finalized
Called by: _ZNSt14_Bit_referenceaSEb/273 (3.94 per call) (inlined)
Calls:
fe_raviart_thomas.cc:2004:51: internal compiler error: verify_cgraph_node
failed
template class FE_RaviartThomas<deal_II_dimension>;
^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug middle-end/53106] [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build
2012-04-24 21:49 [Bug middle-end/53106] New: [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build hjl.tools at gmail dot com
2012-04-24 21:50 ` [Bug middle-end/53106] " hjl.tools at gmail dot com
@ 2012-04-24 23:13 ` hjl.tools at gmail dot com
2012-04-24 23:13 ` hjl.tools at gmail dot com
` (8 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hjl.tools at gmail dot com @ 2012-04-24 23:13 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53106
--- Comment #3 from H.J. Lu <hjl.tools at gmail dot com> 2012-04-24 23:13:19 UTC ---
Testcase
[hjl@gnu-35 delta]$ cat testcase.cc
#include <vector>
template <int dim>
class FiniteElement
{
public:
FiniteElement ( const std::vector<std::vector<bool> > &nonzero_components);
};
template <int dim>
class FE_RaviartThomas : public FiniteElement<dim>
{
public:
FE_RaviartThomas (const unsigned int p);
static std::vector<bool>
get_ria_vector (const unsigned int degree);
};
template <int dim>
FE_RaviartThomas<dim>::FE_RaviartThomas (const unsigned int degree)
:
FiniteElement<dim> ( std::vector<std::vector<bool> >(1))
{
}
template <int dim>
std::vector<bool>
FE_RaviartThomas<dim>::get_ria_vector (const unsigned int degree)
{
std::vector<bool> ret_val(degree,false);
for (unsigned int i = 0 ; i < degree ; ++i)
ret_val[i] = true;
return ret_val;
}
template class FE_RaviartThomas<3>;
[hjl@gnu-35 delta]$
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug middle-end/53106] [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build
2012-04-24 21:49 [Bug middle-end/53106] New: [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build hjl.tools at gmail dot com
2012-04-24 21:50 ` [Bug middle-end/53106] " hjl.tools at gmail dot com
2012-04-24 23:13 ` hjl.tools at gmail dot com
@ 2012-04-24 23:13 ` hjl.tools at gmail dot com
2012-04-25 11:05 ` rguenth at gcc dot gnu.org
` (7 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hjl.tools at gmail dot com @ 2012-04-24 23:13 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53106
--- Comment #2 from H.J. Lu <hjl.tools at gmail dot com> 2012-04-24 23:12:19 UTC ---
[hjl@gnu-35 delta]$ /export/gnu/import/git/gcc-test-spec/usr/bin/gcc -mx32 -O3
-S testcase.cc
testcase.cc:31:35: error: caller edge frequency 3943 does not match BB
frequency 390
template class FE_RaviartThomas<3>;
^
_ZNSt14_Bit_referenceaSEb.part.2/256 (std::_Bit_reference&
std::_Bit_reference::_ZNSt14_Bit_referenceaSEb.part.2()) @0x7ffff112ed68
Type: function
Visibility: prevailing_def_ironly visibility_specified artificial
References:
Referring:
Function std::_Bit_reference&
std::_Bit_reference::_ZNSt14_Bit_referenceaSEb.part.2()/256 is inline copy in
std::_Bit_reference& std::_Bit_reference::operator=(bool)/26
Availability: local
Function flags: analyzed body local finalized
Called by: _ZNSt14_Bit_referenceaSEb/26 (3.94 per call) (inlined)
Calls:
testcase.cc:31:35: internal compiler error: verify_cgraph_node failed
template class FE_RaviartThomas<3>;
^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
[hjl@gnu-35 delta]$ /export/gnu/import/git/gcc-test-spec/usr/bin/gcc -m32 -O3
-S testcase.cc
testcase.cc:31:35: error: caller edge frequency 3943 does not match BB
frequency 390
template class FE_RaviartThomas<3>;
^
_ZNSt14_Bit_referenceaSEb.part.2/256 (std::_Bit_reference&
std::_Bit_reference::_ZNSt14_Bit_referenceaSEb.part.2()) @0x7ffff112ed68
Type: function
Visibility: prevailing_def_ironly visibility_specified artificial
References:
Referring:
Function std::_Bit_reference&
std::_Bit_reference::_ZNSt14_Bit_referenceaSEb.part.2()/256 is inline copy in
std::_Bit_reference& std::_Bit_reference::operator=(bool)/26
Availability: local
Function flags: analyzed body local finalized
Called by: _ZNSt14_Bit_referenceaSEb/26 (3.94 per call) (inlined)
Calls:
testcase.cc:31:35: internal compiler error: verify_cgraph_node failed
template class FE_RaviartThomas<3>;
^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
[hjl@gnu-35 delta]$
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug middle-end/53106] [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build
2012-04-24 21:49 [Bug middle-end/53106] New: [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build hjl.tools at gmail dot com
` (2 preceding siblings ...)
2012-04-24 23:13 ` hjl.tools at gmail dot com
@ 2012-04-25 11:05 ` rguenth at gcc dot gnu.org
2012-04-25 14:35 ` hubicka at gcc dot gnu.org
` (6 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-04-25 11:05 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53106
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |4.8.0
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug middle-end/53106] [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build
2012-04-24 21:49 [Bug middle-end/53106] New: [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build hjl.tools at gmail dot com
` (3 preceding siblings ...)
2012-04-25 11:05 ` rguenth at gcc dot gnu.org
@ 2012-04-25 14:35 ` hubicka at gcc dot gnu.org
2012-04-25 14:39 ` hjl.tools at gmail dot com
` (5 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu.org @ 2012-04-25 14:35 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53106
Jan Hubicka <hubicka at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |ASSIGNED
Last reconfirmed| |2012-04-25
AssignedTo|unassigned at gcc dot |hubicka at gcc dot gnu.org
|gnu.org |
Ever Confirmed|0 |1
--- Comment #4 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-04-25 14:34:15 UTC ---
Thanks for the testcase!
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug middle-end/53106] [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build
2012-04-24 21:49 [Bug middle-end/53106] New: [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build hjl.tools at gmail dot com
` (4 preceding siblings ...)
2012-04-25 14:35 ` hubicka at gcc dot gnu.org
@ 2012-04-25 14:39 ` hjl.tools at gmail dot com
2012-04-25 16:12 ` hubicka at gcc dot gnu.org
` (4 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hjl.tools at gmail dot com @ 2012-04-25 14:39 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53106
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |UNCONFIRMED
Ever Confirmed|1 |0
--- Comment #5 from H.J. Lu <hjl.tools at gmail dot com> 2012-04-25 14:38:47 UTC ---
On Linux/x86-64, with
-O3 -funroll-loops -ffast-math -fwhole-program -flto=jobserver
-fuse-linker-plugin
403.gcc, 483.xalancbmk, 447.dealII, 453.povray, 454.calculix and
465.tonto fail with similar error message.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug middle-end/53106] [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build
2012-04-24 21:49 [Bug middle-end/53106] New: [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build hjl.tools at gmail dot com
` (5 preceding siblings ...)
2012-04-25 14:39 ` hjl.tools at gmail dot com
@ 2012-04-25 16:12 ` hubicka at gcc dot gnu.org
2012-04-25 16:22 ` hubicka at gcc dot gnu.org
` (3 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu.org @ 2012-04-25 16:12 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53106
--- Comment #6 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-04-25 16:11:43 UTC ---
This is previously latent bug in frequency verification. We check that
frequencies of edges match frequencies of basic block. This check is disabled
when function is inline, because then the frequencies of edges are scaled to
the same base as in the outer function.
Now what happens is that the function gets cloned, then the original version
gets fully inlined and finally becomes unreachable. We however need to keep
function body around and thus remove_unreachable_nodes turns the inline clone
back to offline re-enabling the check that finally fires.
I am not sure how we got around this problem previously. I am doiuble
checking.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug middle-end/53106] [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build
2012-04-24 21:49 [Bug middle-end/53106] New: [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build hjl.tools at gmail dot com
` (6 preceding siblings ...)
2012-04-25 16:12 ` hubicka at gcc dot gnu.org
@ 2012-04-25 16:22 ` hubicka at gcc dot gnu.org
2012-05-03 15:17 ` wschmidt at gcc dot gnu.org
` (2 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu.org @ 2012-04-25 16:22 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53106
--- Comment #7 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-04-25 16:21:03 UTC ---
Actually we make the node unanalyzed in this case. There is one misupdated
place. I am testing the following patch.
Index: ipa.c
===================================================================
--- ipa.c (revision 186827)
+++ ipa.c (working copy)
@@ -262,7 +262,8 @@ cgraph_remove_unreachable_nodes (bool be
for (next = cgraph (node->symbol.same_comdat_group);
next != node;
next = cgraph (next->symbol.same_comdat_group))
- if (!pointer_set_insert (reachable, next))
+ if (!next->global.inlined_to
+ && !pointer_set_insert (reachable, next))
enqueue_cgraph_node (next, &first, reachable);
}
}
@@ -276,7 +277,7 @@ cgraph_remove_unreachable_nodes (bool be
{
bool noninline = node->clone_of->symbol.decl !=
node->symbol.decl;
node = node->clone_of;
- if (noninline && !pointer_set_insert (reachable, node) &&
!node->symbol.aux)
+ if (noninline && !pointer_set_contains (reachable, node) &&
!node->symbol.aux)
{
enqueue_cgraph_node (node, &first, reachable);
break;
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug middle-end/53106] [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build
2012-04-24 21:49 [Bug middle-end/53106] New: [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build hjl.tools at gmail dot com
` (7 preceding siblings ...)
2012-04-25 16:22 ` hubicka at gcc dot gnu.org
@ 2012-05-03 15:17 ` wschmidt at gcc dot gnu.org
2012-05-03 19:19 ` hubicka at gcc dot gnu.org
2012-09-07 11:28 ` rguenth at gcc dot gnu.org
10 siblings, 0 replies; 12+ messages in thread
From: wschmidt at gcc dot gnu.org @ 2012-05-03 15:17 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53106
--- Comment #8 from William J. Schmidt <wschmidt at gcc dot gnu.org> 2012-05-03 15:16:39 UTC ---
FWIW, I verified that Honza's proposed patch fixes the build problems for
483.xlancbmk and 32-bit 447.dealII on powerpc-linux. Any ETA for getting this
committed?
Thanks,
Bill
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug middle-end/53106] [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build
2012-04-24 21:49 [Bug middle-end/53106] New: [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build hjl.tools at gmail dot com
` (8 preceding siblings ...)
2012-05-03 15:17 ` wschmidt at gcc dot gnu.org
@ 2012-05-03 19:19 ` hubicka at gcc dot gnu.org
2012-09-07 11:28 ` rguenth at gcc dot gnu.org
10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu.org @ 2012-05-03 19:19 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53106
--- Comment #9 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-05-03 19:18:56 UTC ---
Author: hubicka
Date: Thu May 3 19:18:51 2012
New Revision: 187114
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=187114
Log:
PR middle-end/53106
* ipa.c (cgraph_remove_unreachable_nodes): Fix handling of clones.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ipa.c
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug middle-end/53106] [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build
2012-04-24 21:49 [Bug middle-end/53106] New: [4.8 Regression] Benchmarks in SPEC CPU 2006 failed to build hjl.tools at gmail dot com
` (9 preceding siblings ...)
2012-05-03 19:19 ` hubicka at gcc dot gnu.org
@ 2012-09-07 11:28 ` rguenth at gcc dot gnu.org
10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-09-07 11:28 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53106
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |FIXED
--- Comment #10 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-09-07 11:27:41 UTC ---
Fixed I presume.
^ permalink raw reply [flat|nested] 12+ messages in thread