This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/46916] gcc.dg/torture/stackalign/non-local-goto-[1,2].c ICEs compiler due to r167727
- From: "iains at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 15 Dec 2010 13:25:36 +0000
- Subject: [Bug middle-end/46916] gcc.dg/torture/stackalign/non-local-goto-[1,2].c ICEs compiler due to r167727
- Auto-submitted: auto-generated
- References: <bug-46916-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46916
--- Comment #57 from Iain Sandoe <iains at gcc dot gnu.org> 2010-12-15 13:25:07 UTC ---
(In reply to comment #56)
> I wonder why we need to add those +DEF_SECTION fields?
> I think the infinite recursion problem should be fixed by dropping the whole
> machinery on selecting sections.
nothing to do with the recursion - that's solved early in this thread ---
-- we need a coalesced section to match each non-coalesced one.
since "darwin_function_section()" is called quite frequently, it seemed more
efficient to pre-declare the sections rather than keep finding them from
matching against a named section.
[ the key change is that there need to be coalesced sections for the DECL_WEAK
() -- I am not strongly saying the sections need to be pre-declared - if you
think that named sections would be better]
we would need :
if (exit && freq != NODE_FREQUENCY_UNLIKELY_EXECUTED)
return (DECL_WEAK (decl))
? get_named_text_section (decl,
"__TEXT,__exit_coal,coalesced,pure_instructions", "_exit_coal");
: get_named_text_section (decl,
"__TEXT,__exit,regular,pure_instructions", "_exit");
.. or some more efficient equivalent.
> With the darwin bits alone, do we get clear run except for the two partition
> tests?
tests are running ... looking OK so far,
... but we have a serious problem with dsymutil && || debug for "-O3 -g".
Still needs examining as to why...