public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2
@ 2009-03-20 3:02 eric dot niebler at gmail dot com
2009-03-20 3:03 ` [Bug c++/39509] " eric dot niebler at gmail dot com
` (21 more replies)
0 siblings, 22 replies; 23+ messages in thread
From: eric dot niebler at gmail dot com @ 2009-03-20 3:02 UTC (permalink / raw)
To: gcc-bugs
When attached code is compiled with "g++ -01 -x c++ main.i" the result executes
file. When compiled with -O2 it segfaults with "pure virtual function call".
This may be a case of an overeager optimization.
--
Summary: bad optimization(?) pure virtual function call with -O2
Product: gcc
Version: 4.3.2
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: eric dot niebler at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug c++/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
@ 2009-03-20 3:03 ` eric dot niebler at gmail dot com
2009-03-20 4:04 ` eric dot niebler at gmail dot com
` (20 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: eric dot niebler at gmail dot com @ 2009-03-20 3:03 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from eric dot niebler at gmail dot com 2009-03-20 03:03 -------
Created an attachment (id=17501)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17501&action=view)
tarred, gzipped preprocessed c++ source file
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug c++/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
2009-03-20 3:03 ` [Bug c++/39509] " eric dot niebler at gmail dot com
@ 2009-03-20 4:04 ` eric dot niebler at gmail dot com
2009-04-16 20:55 ` [Bug middle-end/39509] " pinskia at gcc dot gnu dot org
` (19 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: eric dot niebler at gmail dot com @ 2009-03-20 4:04 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from eric dot niebler at gmail dot com 2009-03-20 04:04 -------
Additional information: adding "__attribute__((noinline))" to the constructor
for xpression_adaptor (line 82452) makes the problem go away. Definitely looks
like an optimization problem to me.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
2009-03-20 3:03 ` [Bug c++/39509] " eric dot niebler at gmail dot com
2009-03-20 4:04 ` eric dot niebler at gmail dot com
@ 2009-04-16 20:55 ` pinskia at gcc dot gnu dot org
2009-04-21 1:11 ` eric dot niebler at gmail dot com
` (18 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2009-04-16 20:55 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from pinskia at gcc dot gnu dot org 2009-04-16 20:54 -------
What target are you compiling on? I could not link this on i686-darwin:
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_Rep::_S_create(unsigned int, unsigned int, std::allocator<char> const&)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::reserve(unsigned int)
___assert_fail
Can you give the output of gcc -v ?
--
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |WAITING
Component|c++ |middle-end
Keywords| |wrong-code
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (2 preceding siblings ...)
2009-04-16 20:55 ` [Bug middle-end/39509] " pinskia at gcc dot gnu dot org
@ 2009-04-21 1:11 ` eric dot niebler at gmail dot com
2009-05-11 11:16 ` jwakely dot gcc at gmail dot com
` (17 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: eric dot niebler at gmail dot com @ 2009-04-21 1:11 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from eric dot niebler at gmail dot com 2009-04-21 01:10 -------
I'm sorry to say that I no longer have access to the Linux machine on which I
gcc-4.3 installed. I have only my windows laptop now, and I can't for the life
of me get gcc-4.3 working under cygwin. I can, however, refer you to the
original bug report, filed against a library in Boost:
https://svn.boost.org/trac/boost/ticket/2655
For reference, here is the source code (requires Boost to be in the path, but
uses the header-only parts of Boost and so does not require you to build or
link to any part of Boost).
{{{
#include <string>
#include <boost/xpressive/xpressive_static.hpp>
using std::string;
namespace xpr = boost::xpressive;
int main()
{
string text = "at";
xpr::sregex r1 = xpr::as_xpr('a');
xpr::sregex r2 = 'b' >> r1;
xpr::sregex r3 = r2 | r1;
xpr::regex_replace(text, r3, string(""));
return 0;
}
}}}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (3 preceding siblings ...)
2009-04-21 1:11 ` eric dot niebler at gmail dot com
@ 2009-05-11 11:16 ` jwakely dot gcc at gmail dot com
2009-05-11 11:23 ` jwakely dot gcc at gmail dot com
` (16 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: jwakely dot gcc at gmail dot com @ 2009-05-11 11:16 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from jwakely dot gcc at gmail dot com 2009-05-11 11:15 -------
I can reproduce this on x86_64-unknown-linux-gnu at -O2 with 4.3.2 and
4.5-20090402 snapshot, and at -O3 with 4.2.2
I can't reproduce it with 4.1.2
--
jwakely dot gcc at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jwakely dot gcc at gmail dot
| |com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (4 preceding siblings ...)
2009-05-11 11:16 ` jwakely dot gcc at gmail dot com
@ 2009-05-11 11:23 ` jwakely dot gcc at gmail dot com
2009-05-11 12:03 ` rguenth at gcc dot gnu dot org
` (15 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: jwakely dot gcc at gmail dot com @ 2009-05-11 11:23 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from jwakely dot gcc at gmail dot com 2009-05-11 11:23 -------
I was using Boost 1.37.0 with:
Using built-in specs.
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-4.5-20090402/configure
--prefix=/dev/shm/wakelyjo/insroot/4.5-20090402 --enable-languages=c,c++
--disable-bootstrap --disable-checking --with-gmp=/dev/shm/wakelyjo/stage
--with-mpfr=/dev/shm/wakelyjo/stage
Thread model: posix
gcc version 4.5.0 20090402 (experimental) (GCC)
and
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../gcc-4.3.2/configure --prefix=/opt/gcc/32-bit/4.3.2
--enable-languages=c,c++,fortran,objc,obj-c++ --with-gnu-as
--with-as=/opt/binutils/32-bit/2.18/bin/as --with-gnu-ld
--with-ld=/opt/binutils/32-bit/2.18/bin/ld --with-gmp=/var/tmp/stage
--with-mpfr=/var/tmp/stage --build=i686-pc-linux-gnu --with-arch=pentium4
--enable-shared --enable-threads=posix --enable-nls --enable-libstdcxx-debug
--enable-__cxa_atexit
Thread model: posix
gcc version 4.3.2 (GCC)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (5 preceding siblings ...)
2009-05-11 11:23 ` jwakely dot gcc at gmail dot com
@ 2009-05-11 12:03 ` rguenth at gcc dot gnu dot org
2009-05-11 12:04 ` rguenth at gcc dot gnu dot org
` (14 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-05-11 12:03 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from rguenth at gcc dot gnu dot org 2009-05-11 12:03 -------
Created an attachment (id=17852)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17852&action=view)
unincluded testcase
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (6 preceding siblings ...)
2009-05-11 12:03 ` rguenth at gcc dot gnu dot org
@ 2009-05-11 12:04 ` rguenth at gcc dot gnu dot org
2009-05-11 12:42 ` jwakely dot gcc at gmail dot com
` (13 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-05-11 12:04 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from rguenth at gcc dot gnu dot org 2009-05-11 12:04 -------
4.1 and 4.2 cannot compile the testcase.
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |NEW
Ever Confirmed|0 |1
Known to fail| |4.3.3
Last reconfirmed|0000-00-00 00:00:00 |2009-05-11 12:04:41
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (7 preceding siblings ...)
2009-05-11 12:04 ` rguenth at gcc dot gnu dot org
@ 2009-05-11 12:42 ` jwakely dot gcc at gmail dot com
2009-05-11 12:45 ` rguenther at suse dot de
` (12 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: jwakely dot gcc at gmail dot com @ 2009-05-11 12:42 UTC (permalink / raw)
To: gcc-bugs
------- Comment #9 from jwakely dot gcc at gmail dot com 2009-05-11 12:42 -------
The testcase will have included lots of code from Boost headers conditionally
based on __GNUC__ etc. so it's not surprising it doesn't compile with 4.1 or
4.2
If wanted I can produce an unincluded version using 4.1 and 4.2, but I assume
there's no point as those branches are closed.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (8 preceding siblings ...)
2009-05-11 12:42 ` jwakely dot gcc at gmail dot com
@ 2009-05-11 12:45 ` rguenther at suse dot de
2009-05-11 13:09 ` jwakely dot gcc at gmail dot com
` (11 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: rguenther at suse dot de @ 2009-05-11 12:45 UTC (permalink / raw)
To: gcc-bugs
------- Comment #10 from rguenther at suse dot de 2009-05-11 12:44 -------
Subject: Re: bad optimization(?) pure virtual function
call with -O2
On Mon, 11 May 2009, jwakely dot gcc at gmail dot com wrote:
> ------- Comment #9 from jwakely dot gcc at gmail dot com 2009-05-11 12:42 -------
> The testcase will have included lots of code from Boost headers conditionally
> based on __GNUC__ etc. so it's not surprising it doesn't compile with 4.1 or
> 4.2
>
> If wanted I can produce an unincluded version using 4.1 and 4.2, but I assume
> there's no point as those branches are closed.
Right. I was trying to check if this is a regression or not.
Richard.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (9 preceding siblings ...)
2009-05-11 12:45 ` rguenther at suse dot de
@ 2009-05-11 13:09 ` jwakely dot gcc at gmail dot com
2009-05-11 13:11 ` rguenther at suse dot de
` (10 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: jwakely dot gcc at gmail dot com @ 2009-05-11 13:09 UTC (permalink / raw)
To: gcc-bugs
------- Comment #11 from jwakely dot gcc at gmail dot com 2009-05-11 13:09 -------
It does seem to be a regression. I preprocessed the program in comment 4 with
GCC version 4.1.2 20071124 (Red Hat 4.1.2-42), then ran uninclude to produce a
standalone testcase and compiled it with different versions of GCC
GCC 4.1.1 (FSF) at -O3 doesn't call the pure virtual.
GCC 4.1.2 (Red Hat) at -O3 doesn't call the pure virtual.
GCC 4.2.2 (FSF) at -O3 calls the pure virtual.
GCC 4.3.2 (FSF) can't compile the program (again, due to Boost's heavy use of
preprocessor checks)
Do you want that unincluded testcase attached?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] [4.3/4.4/4.5 Regression] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (11 preceding siblings ...)
2009-05-11 13:11 ` rguenther at suse dot de
@ 2009-05-11 13:11 ` rguenth at gcc dot gnu dot org
2009-05-12 18:56 ` jakub at gcc dot gnu dot org
` (8 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-05-11 13:11 UTC (permalink / raw)
To: gcc-bugs
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Known to fail|4.3.3 |4.2.4 4.3.3 4.4.0
Known to work| |4.1.1
Summary|bad optimization(?) pure |[4.3/4.4/4.5 Regression] bad
|virtual function call with -|optimization(?) pure virtual
|O2 |function call with -O2
Target Milestone|--- |4.3.4
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (10 preceding siblings ...)
2009-05-11 13:09 ` jwakely dot gcc at gmail dot com
@ 2009-05-11 13:11 ` rguenther at suse dot de
2009-05-11 13:11 ` [Bug middle-end/39509] [4.3/4.4/4.5 Regression] " rguenth at gcc dot gnu dot org
` (9 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: rguenther at suse dot de @ 2009-05-11 13:11 UTC (permalink / raw)
To: gcc-bugs
------- Comment #12 from rguenther at suse dot de 2009-05-11 13:10 -------
Subject: Re: bad optimization(?) pure virtual function
call with -O2
On Mon, 11 May 2009, jwakely dot gcc at gmail dot com wrote:
> ------- Comment #11 from jwakely dot gcc at gmail dot com 2009-05-11 13:09 -------
> It does seem to be a regression. I preprocessed the program in comment 4 with
> GCC version 4.1.2 20071124 (Red Hat 4.1.2-42), then ran uninclude to produce a
> standalone testcase and compiled it with different versions of GCC
>
> GCC 4.1.1 (FSF) at -O3 doesn't call the pure virtual.
> GCC 4.1.2 (Red Hat) at -O3 doesn't call the pure virtual.
> GCC 4.2.2 (FSF) at -O3 calls the pure virtual.
> GCC 4.3.2 (FSF) can't compile the program (again, due to Boost's heavy use of
> preprocessor checks)
>
> Do you want that unincluded testcase attached?
No, that's enough info.
Richard.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] [4.3/4.4/4.5 Regression] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (12 preceding siblings ...)
2009-05-11 13:11 ` [Bug middle-end/39509] [4.3/4.4/4.5 Regression] " rguenth at gcc dot gnu dot org
@ 2009-05-12 18:56 ` jakub at gcc dot gnu dot org
2009-05-12 19:06 ` jakub at gcc dot gnu dot org
` (7 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: jakub at gcc dot gnu dot org @ 2009-05-12 18:56 UTC (permalink / raw)
To: gcc-bugs
------- Comment #13 from jakub at gcc dot gnu dot org 2009-05-12 18:56 -------
In 4.4.0/x86_64-linux at -O2 at least the problem seems to be that in:
_ZNK5boost9xpressive6detail17xpression_adaptorINS1_16static_xpressionINS1_17alternate_matcherINS1_15alternates_listINS3_INS1_13regex_matcherIN9__gnu_cxx17__normal_iteratorIPKcSsEEEENS3_INS1_21alternate_end_matcherENS1_7no_nextEEEEENS5_ISG_NS_6fusion3nilEEEEENS0_16cpp_regex_traitsIcEEEENS3_INS1_11end_matcherESE_EEEENS1_12matchable_exISB_EEE5matchERNS1_11match_stateISB_EE
adaptor is destructed before the push_context_match call. In *.optimized dump
we have:
<bb 9>:
adaptor.D.166953._vptr.matchable =
&_ZTVN5boost9xpressive6detail17xpression_adaptorINS_17reference_wrapperIKNS1_17stacked_xpressionINS1
_16static_xpressionINS1_11end_matcherENS1_7no_nextEEENS5_INS1_21alternate_end_matcherES7_EEEEEENS1_9matchableIN9__gnu_cxx17__normal_itera
torIPKcSsEEEEEE[2];
adaptor.xpr_.t_ = (const struct stacked_xpression *) (const struct
stacked_xpression &) &this->xpr_.D.142582.alternates_.D.142415.cdr.D
.142229.car.next_;
adaptor.D.166953._vptr.matchable =
&_ZTVN5boost9xpressive6detail9matchableIN9__gnu_cxx17__normal_iteratorIPKcSsEEEE[2];
D.187198 = push_context_match
(&this->xpr_.D.142582.alternates_.D.142415.cdr.D.142229.car.D.142156.impl_,
state, &adaptor.D.166953);
goto <bb 11>;
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] [4.3/4.4/4.5 Regression] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (13 preceding siblings ...)
2009-05-12 18:56 ` jakub at gcc dot gnu dot org
@ 2009-05-12 19:06 ` jakub at gcc dot gnu dot org
2009-05-12 19:34 ` jakub at gcc dot gnu dot org
` (6 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: jakub at gcc dot gnu dot org @ 2009-05-12 19:06 UTC (permalink / raw)
To: gcc-bugs
------- Comment #14 from jakub at gcc dot gnu dot org 2009-05-12 19:06 -------
In *.pre it still looks correct:
adaptor.D.166953._vptr.matchable =
&_ZTVN5boost9xpressive6detail17xpression_adaptorINS_17reference_wrapperIKNS1_17stacked_xpressionINS1
_16static_xpressionINS1_11end_matcherENS1_7no_nextEEENS5_INS1_21alternate_end_matcherES7_EEEEEENS1_9matchableIN9__gnu_cxx17__normal_itera
torIPKcSsEEEEEE[2];
adaptor.xpr_.t_ = D.187226_39;
D.187223_40 =
&this_1(D)->xpr_.D.142582.alternates_.D.142415.cdr.D.142229.car.D.142156.impl_;
D.187198_41 = push_context_match (D.187223_40, state_4(D),
&adaptor.D.166953);
and
adaptor.D.166953._vptr.matchable =
&_ZTVN5boost9xpressive6detail17xpression_adaptorINS_17reference_wrapperIKNS1_17stacked_xpressionINS1
_16static_xpressionINS1_11end_matcherENS1_7no_nextEEENS5_INS1_21alternate_end_matcherES7_EEEEEENS1_9matchableIN9__gnu_cxx17__normal_itera
torIPKcSsEEEEEE[2];
adaptor.xpr_.t_ = D.187218_33;
D.187221_34 =
&this_1(D)->xpr_.D.142582.alternates_.D.142415.car.D.142156.impl_;
D.187216_35 = push_context_match (D.187221_34, state_4(D),
&adaptor.D.166953);
but *.sink already breaks the first push_context_match call:
D.187227_38 =
&this_1(D)->xpr_.D.142582.alternates_.D.142415.cdr.D.142229.car.next_;
D.187226_39 = (const struct stacked_xpression &) D.187227_38;
adaptor.D.166953._vptr.matchable =
&_ZTVN5boost9xpressive6detail17xpression_adaptorINS_17reference_wrapperIKNS1_17stacked_xpressionINS1
_16static_xpressionINS1_11end_matcherENS1_7no_nextEEENS5_INS1_21alternate_end_matcherES7_EEEEEENS1_9matchableIN9__gnu_cxx17__normal_itera
torIPKcSsEEEEEE[2];
adaptor.xpr_.t_ = D.187226_39;
D.187223_40 =
&this_1(D)->xpr_.D.142582.alternates_.D.142415.cdr.D.142229.car.D.142156.impl_;
adaptor.D.166953._vptr.matchable =
&_ZTVN5boost9xpressive6detail9matchableIN9__gnu_cxx17__normal_iteratorIPKcSsEEEE[2];
D.187198_41 = push_context_match (D.187223_40, state_4(D),
&adaptor.D.166953);
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] [4.3/4.4/4.5 Regression] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (14 preceding siblings ...)
2009-05-12 19:06 ` jakub at gcc dot gnu dot org
@ 2009-05-12 19:34 ` jakub at gcc dot gnu dot org
2009-05-21 10:36 ` rguenth at gcc dot gnu dot org
` (5 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: jakub at gcc dot gnu dot org @ 2009-05-12 19:34 UTC (permalink / raw)
To: gcc-bugs
------- Comment #15 from jakub at gcc dot gnu dot org 2009-05-12 19:34 -------
Ah, there are two different adaptor variables after inlining, so this might as
well be a dup of PR39604.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] [4.3/4.4/4.5 Regression] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (15 preceding siblings ...)
2009-05-12 19:34 ` jakub at gcc dot gnu dot org
@ 2009-05-21 10:36 ` rguenth at gcc dot gnu dot org
2009-08-04 12:48 ` rguenth at gcc dot gnu dot org
` (4 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-05-21 10:36 UTC (permalink / raw)
To: gcc-bugs
------- Comment #16 from rguenth at gcc dot gnu dot org 2009-05-21 10:35 -------
Which means it should work with -fno-tree-sink.
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
BugsThisDependsOn| |39604
Priority|P3 |P2
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] [4.3/4.4/4.5 Regression] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (16 preceding siblings ...)
2009-05-21 10:36 ` rguenth at gcc dot gnu dot org
@ 2009-08-04 12:48 ` rguenth at gcc dot gnu dot org
2009-12-16 20:19 ` rguenth at gcc dot gnu dot org
` (3 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-08-04 12:48 UTC (permalink / raw)
To: gcc-bugs
------- Comment #17 from rguenth at gcc dot gnu dot org 2009-08-04 12:29 -------
GCC 4.3.4 is being released, adjusting target milestone.
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.3.4 |4.3.5
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] [4.3/4.4/4.5 Regression] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (17 preceding siblings ...)
2009-08-04 12:48 ` rguenth at gcc dot gnu dot org
@ 2009-12-16 20:19 ` rguenth at gcc dot gnu dot org
2009-12-16 20:20 ` rguenth at gcc dot gnu dot org
` (2 subsequent siblings)
21 siblings, 0 replies; 23+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-12-16 20:19 UTC (permalink / raw)
To: gcc-bugs
------- Comment #18 from rguenth at gcc dot gnu dot org 2009-12-16 20:18 -------
*** Bug 42394 has been marked as a duplicate of this bug. ***
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |Troy dot Runkel at mathworks
| |dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] [4.3/4.4/4.5 Regression] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (18 preceding siblings ...)
2009-12-16 20:19 ` rguenth at gcc dot gnu dot org
@ 2009-12-16 20:20 ` rguenth at gcc dot gnu dot org
2010-03-08 22:50 ` pinskia at gcc dot gnu dot org
2010-05-22 19:00 ` [Bug middle-end/39509] [4.3/4.4/4.5/4.6 " rguenth at gcc dot gnu dot org
21 siblings, 0 replies; 23+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-12-16 20:20 UTC (permalink / raw)
To: gcc-bugs
------- Comment #19 from rguenth at gcc dot gnu dot org 2009-12-16 20:19 -------
PR42394 has a smaller testcase (but it doesn't fail with trunk). It works
with -fno-tree-sink.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] [4.3/4.4/4.5 Regression] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (19 preceding siblings ...)
2009-12-16 20:20 ` rguenth at gcc dot gnu dot org
@ 2010-03-08 22:50 ` pinskia at gcc dot gnu dot org
2010-05-22 19:00 ` [Bug middle-end/39509] [4.3/4.4/4.5/4.6 " rguenth at gcc dot gnu dot org
21 siblings, 0 replies; 23+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2010-03-08 22:50 UTC (permalink / raw)
To: gcc-bugs
------- Comment #20 from pinskia at gcc dot gnu dot org 2010-03-08 22:50 -------
*** Bug 39604 has been marked as a duplicate of this bug. ***
--
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |sandra at codesourcery dot
| |com
Bug 39509 depends on bug 39604, which changed state.
Bug 39604 Summary: [4.3/4.4/4.5 Regression] tree-ssa-sink breaks stack layout
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39604
What |Old Value |New Value
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |DUPLICATE
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
* [Bug middle-end/39509] [4.3/4.4/4.5/4.6 Regression] bad optimization(?) pure virtual function call with -O2
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
` (20 preceding siblings ...)
2010-03-08 22:50 ` pinskia at gcc dot gnu dot org
@ 2010-05-22 19:00 ` rguenth at gcc dot gnu dot org
21 siblings, 0 replies; 23+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-05-22 19:00 UTC (permalink / raw)
To: gcc-bugs
------- Comment #21 from rguenth at gcc dot gnu dot org 2010-05-22 18:13 -------
GCC 4.3.5 is being released, adjusting target milestone.
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.3.5 |4.3.6
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509
^ permalink raw reply [flat|nested] 23+ messages in thread
end of thread, other threads:[~2010-05-22 18:31 UTC | newest]
Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-03-20 3:02 [Bug c++/39509] New: bad optimization(?) pure virtual function call with -O2 eric dot niebler at gmail dot com
2009-03-20 3:03 ` [Bug c++/39509] " eric dot niebler at gmail dot com
2009-03-20 4:04 ` eric dot niebler at gmail dot com
2009-04-16 20:55 ` [Bug middle-end/39509] " pinskia at gcc dot gnu dot org
2009-04-21 1:11 ` eric dot niebler at gmail dot com
2009-05-11 11:16 ` jwakely dot gcc at gmail dot com
2009-05-11 11:23 ` jwakely dot gcc at gmail dot com
2009-05-11 12:03 ` rguenth at gcc dot gnu dot org
2009-05-11 12:04 ` rguenth at gcc dot gnu dot org
2009-05-11 12:42 ` jwakely dot gcc at gmail dot com
2009-05-11 12:45 ` rguenther at suse dot de
2009-05-11 13:09 ` jwakely dot gcc at gmail dot com
2009-05-11 13:11 ` rguenther at suse dot de
2009-05-11 13:11 ` [Bug middle-end/39509] [4.3/4.4/4.5 Regression] " rguenth at gcc dot gnu dot org
2009-05-12 18:56 ` jakub at gcc dot gnu dot org
2009-05-12 19:06 ` jakub at gcc dot gnu dot org
2009-05-12 19:34 ` jakub at gcc dot gnu dot org
2009-05-21 10:36 ` rguenth at gcc dot gnu dot org
2009-08-04 12:48 ` rguenth at gcc dot gnu dot org
2009-12-16 20:19 ` rguenth at gcc dot gnu dot org
2009-12-16 20:20 ` rguenth at gcc dot gnu dot org
2010-03-08 22:50 ` pinskia at gcc dot gnu dot org
2010-05-22 19:00 ` [Bug middle-end/39509] [4.3/4.4/4.5/4.6 " rguenth at gcc dot gnu dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).