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. 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.
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.
I am testing a fix. Your testcase compiles successfully with the fix.
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.
Regards,
Dave
--
John David Anglin dave.anglin@xxxxxxxx
--
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