On Tue, Apr 24, 2012 at 7:55 PM, John David Anglin <dave.anglin@xxxxxxxx> wrote: > On 15-Apr-12, at 11:00 AM, Carlos O'Donell wrote: > >> When compiling glibc on magnum with gcc-4.6 I get an odd failure about >> section type conflicts. > > > > After discussing the issue with Jakub Jelinek, it appears the bug is caused > by placing > function labels (plabels) in the constant pool. Interesting. > PA has done this for longer > than I can > remember, but it doesn't appear necessary. As you know, only ia64 and pa > use plabels. Yes, we both rely on the plabel code in glibc. > This causes the setting of default flags for .data.rel.ro which conflict > with those needed > for _rtld_global_ro in the dynamic linker. The problem doesn't have > anything directly > to do with the handling of the variable _rtld_global_ro. This was what was > confusing > me as everything seemed generic. Me too. > I am testing a fix. Your testcase compiles successfully with the fix. Excellent! > The issue is incredibly subtle. I would guess it was just a matter of luck > that other targets > aren't affected given that the code in rtld.c is not exactly exactly kosher > from GCC POV. The dynamic linker isn't exactly kosher :-) Cheers, Carlos. -- To unsubscribe from this list: send the line "unsubscribe linux-parisc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html