public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/55339] New: Generated code hangs with -O2 on Linux ppc
@ 2012-11-15 11:24 anton.katilin at gmail dot com
2012-11-15 11:28 ` [Bug c++/55339] " anton.katilin at gmail dot com
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: anton.katilin at gmail dot com @ 2012-11-15 11:24 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55339
Bug #: 55339
Summary: Generated code hangs with -O2 on Linux ppc
Classification: Unclassified
Product: gcc
Version: 4.7.2
Status: UNCONFIRMED
Severity: critical
Priority: P3
Component: c++
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: anton.katilin@gmail.com
Please find attached a test program and _compile.sh to compile it.
_compile.sh produces 2 output files: test-O2.bin and test-O1.bin, compiled with
-O2 and -O1 respectively.
test-O1.bin works just fine:
$ ./test-O1.bin
entering...
exception caught, as expected
OK
$
test-O1.bin hangs:
$ ./test-O2.bin
entering...
<hangs forever at this point...>
$ g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/opt/gcc-4.7.2/libexec/gcc/powerpc64-unknown-linux-gnu/4.7.2/lto-wrapper
Target: powerpc64-unknown-linux-gnu
Configured with: ../gcc-4.7.2/configure --prefix=/opt/gcc-4.7.2
--enable-threads=posix --disable-libunwind-exceptions --with-system-zlib
--enable-__cxa_atexit --enable-languages=c,c++ --enable-multilib
Thread model: posix
gcc version 4.7.2 (GCC)
$ uname -a
Linux localhost.localdomain 2.6.29-3.ydl61.3 #1 SMP Thu Jun 25 12:22:41 EDT
2009 ppc64 ppc64 ppc64 GNU/Linux
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug c++/55339] Generated code hangs with -O2 on Linux ppc
2012-11-15 11:24 [Bug c++/55339] New: Generated code hangs with -O2 on Linux ppc anton.katilin at gmail dot com
@ 2012-11-15 11:28 ` anton.katilin at gmail dot com
2012-11-15 11:35 ` [Bug c++/55339] C++ code compiled with -O2 on Linux ppc hangs in runtime paolo.carlini at oracle dot com
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: anton.katilin at gmail dot com @ 2012-11-15 11:28 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55339
--- Comment #1 from anton.katilin at gmail dot com 2012-11-15 11:28:32 UTC ---
Compile with:
-------------------------------------
export PATH=/opt/gcc-4.7.2/bin:$PATH
g++ -m32 -fPIC -O2 *.cpp -o test-O2.bin
g++ -m32 -fPIC -O1 *.cpp -o test-O1.bin
Please find the source code of the test below.
-------------------------------------
Test.cpp
-------------------------------------
#include <stdio.h>
#include "Foo.h"
int main() {
try {
printf("entering...\n");
fflush(stdout);
YS(-1); // will throw exception
printf("must never reach\n");
}
catch (int) {
printf("exception caught, as expected\n");
}
printf("OK\n");
return 0;
}
-------------------------------------
Foo.h
-------------------------------------
#pragma once
void foo();
void checkPositive(int);
class YS {
public:
YS(int capacity) {
checkPositive(capacity);
}
~YS() {
foo();
}
};
void throwException(const YS&);
-------------------------------------
Foo.cpp
-------------------------------------
#include "Foo.h"
void foo() {
}
void checkPositive(int v) {
if (v <= 0) {
throwException(10);
}
}
void throwException(const YS&) {
throw int(1);
}
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug c++/55339] C++ code compiled with -O2 on Linux ppc hangs in runtime
2012-11-15 11:24 [Bug c++/55339] New: Generated code hangs with -O2 on Linux ppc anton.katilin at gmail dot com
2012-11-15 11:28 ` [Bug c++/55339] " anton.katilin at gmail dot com
@ 2012-11-15 11:35 ` paolo.carlini at oracle dot com
2012-11-15 14:35 ` anton.katilin at gmail dot com
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: paolo.carlini at oracle dot com @ 2012-11-15 11:35 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55339
Paolo Carlini <paolo.carlini at oracle dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Severity|critical |normal
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug c++/55339] C++ code compiled with -O2 on Linux ppc hangs in runtime
2012-11-15 11:24 [Bug c++/55339] New: Generated code hangs with -O2 on Linux ppc anton.katilin at gmail dot com
2012-11-15 11:28 ` [Bug c++/55339] " anton.katilin at gmail dot com
2012-11-15 11:35 ` [Bug c++/55339] C++ code compiled with -O2 on Linux ppc hangs in runtime paolo.carlini at oracle dot com
@ 2012-11-15 14:35 ` anton.katilin at gmail dot com
2012-11-15 18:06 ` [Bug target/55339] " pinskia at gcc dot gnu.org
2012-11-16 17:44 ` anton.katilin at gmail dot com
4 siblings, 0 replies; 6+ messages in thread
From: anton.katilin at gmail dot com @ 2012-11-15 14:35 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55339
--- Comment #2 from anton.katilin at gmail dot com 2012-11-15 14:35:12 UTC ---
An update:
There is no problem when linking statically, i.e. if we do
g++ -m32 -fPIC -O2 *.cpp -static-libstdc++ -static-libgcc -o test-O2.bin
instead of
g++ -m32 -fPIC -O2 *.cpp -o test-O2.bin
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug target/55339] C++ code compiled with -O2 on Linux ppc hangs in runtime
2012-11-15 11:24 [Bug c++/55339] New: Generated code hangs with -O2 on Linux ppc anton.katilin at gmail dot com
` (2 preceding siblings ...)
2012-11-15 14:35 ` anton.katilin at gmail dot com
@ 2012-11-15 18:06 ` pinskia at gcc dot gnu.org
2012-11-16 17:44 ` anton.katilin at gmail dot com
4 siblings, 0 replies; 6+ messages in thread
From: pinskia at gcc dot gnu.org @ 2012-11-15 18:06 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55339
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target| |powerpc-linux-gnu
Component|c++ |target
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> 2012-11-15 18:06:08 UTC ---
>--disable-libunwind-exceptions
Why did you do that? Though it should not matter for PPC.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug target/55339] C++ code compiled with -O2 on Linux ppc hangs in runtime
2012-11-15 11:24 [Bug c++/55339] New: Generated code hangs with -O2 on Linux ppc anton.katilin at gmail dot com
` (3 preceding siblings ...)
2012-11-15 18:06 ` [Bug target/55339] " pinskia at gcc dot gnu.org
@ 2012-11-16 17:44 ` anton.katilin at gmail dot com
4 siblings, 0 replies; 6+ messages in thread
From: anton.katilin at gmail dot com @ 2012-11-16 17:44 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55339
--- Comment #4 from anton.katilin at gmail dot com 2012-11-16 17:44:16 UTC ---
> Why did you do that?
We copied the configuration of gcc 4.1.2 available on the system (Yellow Dog
Linux) out of the box. It had been configured with
--disable-libunwind-exceptions
By the way, the problem is not reproducible with that gcc 4.1.2.
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-11-16 17:44 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-11-15 11:24 [Bug c++/55339] New: Generated code hangs with -O2 on Linux ppc anton.katilin at gmail dot com
2012-11-15 11:28 ` [Bug c++/55339] " anton.katilin at gmail dot com
2012-11-15 11:35 ` [Bug c++/55339] C++ code compiled with -O2 on Linux ppc hangs in runtime paolo.carlini at oracle dot com
2012-11-15 14:35 ` anton.katilin at gmail dot com
2012-11-15 18:06 ` [Bug target/55339] " pinskia at gcc dot gnu.org
2012-11-16 17:44 ` anton.katilin at gmail dot com
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).