This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/32552] Runtime failure in SPEC CPU2000 benchmark fma3d and applu
- From: "wilson at specifix dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 2 Jul 2007 18:34:14 -0000
- Subject: [Bug target/32552] Runtime failure in SPEC CPU2000 benchmark fma3d and applu
- References: <bug-32552-13468@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from wilson at specifix dot com 2007-07-02 18:34 -------
Subject: Re: Runtime failure in SPEC CPU2000 benchmark
fma3d and applu
On Sat, 2007-06-30 at 02:10 +0000, zadeck at naturalbridge dot com
> and then define ARCH_DOES_NOT_USE_DWARF2 in the right place in the ia-64.
We do use DWARF2 debug info, just not DWARF2 unwind info. So this name
is a little misleading. However, this does sound like a good idea.
There is already a macro TARGET_UNWIND_INFO that we should be able to
use for this. This is defined for targets that have their own
non-DWARF2 unwind info format. This is defined by only 2 targets: IA-64
and ARM BPABI. The change you suggested would be safe for IA-64. I
don't know about ARM BPABI. I know ARM BPABI has its own unwind info
format, but don't know any details.
The ARM case is strange. It is setting both DWARF2_UNWIND_INFO and
TARGET_UNWIND_INFO. This seems broken to me, as it means we may emit
two different kinds of unwind info. This conflicts with the original
IA-64 usage of this macro, which wants only the one non-DWARF2 unwind
info. However, this means that disabling the defaults.h code for
DWARF2_UNWIND_INFO will have no effect for arm as it already sets
DWARF2_UNWIND_INFO, so this should be OK. I will have to build an ARM
target and check to see what is really happening here.
I looked a bit more at what happens if DWARF2_UNWIND_INFO is defined to
0. There are a number of targets that already do this, and the docs say
that this disables use of dwarf2 unwind info, but enables use of dwarf
frame info for the debugger. But the dwarf2 frame info is redundant for
IA-64 because we already have frame info in the IA-64 unwind info, and
the debugger already knows how to use this frame info. Unfortunately,
the docs say that defining TARGET_UNWIND_INFO is supposed to generate
dwarf2 frame info for the debugger. So this will not work for IA-64 as
currently documented.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32552