| To: | Franck Bui-Huu <vagabon.xyz@gmail.com> |
|---|---|
| Subject: | Re: [RFC] Add __initbss section |
| From: | Ralf Baechle <ralf@linux-mips.org> |
| Date: | Mon, 15 Oct 2007 17:01:09 +0100 |
| Cc: | "Maciej W. Rozycki" <macro@linux-mips.org>, Geert Uytterhoeven <geert@linux-m68k.org>, linux-mips <linux-mips@linux-mips.org> |
| In-reply-to: | <47127110.4060206@gmail.com> |
| Original-recipient: | rfc822;linux-mips@linux-mips.org |
| References: | <470DF25E.60009@gmail.com> <20071011124410.GA17202@linux-mips.org> <47127110.4060206@gmail.com> |
| Sender: | linux-mips-bounce@linux-mips.org |
| User-agent: | Mutt/1.5.14 (2007-02-12) |
On Sun, Oct 14, 2007 at 09:42:08PM +0200, Franck Bui-Huu wrote: > > .exit.data and .exit.text may reference each other. __exit functions > > generally get compiled into .exit.text but some constructs such as jump > > tables for switch() constructs may be compiled into address tables which > > gcc unfortunately will put into .rodata, so .rodata will end up > > referencing function addresses in .exit.text which makes ld unhappy if > > .exit.text was discarded. So until this is fixed in gcc we can't > > discard exit code, unfortunately. > > > > Thanks for the details. > > I actually don't see any point to move these tables in .rodata since > they're part of the code... As I recall the argumentation was they should go there because that section can be marked no-exec. Which isn't terribly useful on MIPS where only very few processors have the no-exec capability. Anyway, I guess it takes somebody to cook a patch :-) Ralf |
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: [Qemu-devel] QEMU/MIPS & dyntick kernel, Ralf Baechle |
|---|---|
| Next by Date: | Re: -git mips defconfig compile error, Maciej W. Rozycki |
| Previous by Thread: | Re: [RFC] Add __initbss section, Franck Bui-Huu |
| Next by Thread: | Re: [RFC] Add __initbss section, Franck Bui-Huu |
| Indexes: | [Date] [Thread] [Top] [All Lists] |