http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31490
--- Comment #24 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-02-03 19:12:11 UTC --- Author: jakub Date: Thu Feb 3 19:12:07 2011 New Revision: 169804 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169804 Log: PR middle-end/31490 * output.h (SECTION_RELRO): Define. (SECTION_MACH_DEP): Adjust. (get_variable_section): New prototype. * varpool.c (varpool_finalize_named_section_flags): New function. (varpool_assemble_pending_decls): Call it. * cgraph.h (varpool_finalize_named_section_flags): New prototype. * cgraphunit.c (cgraph_output_in_order): Call varpool_finalize_named_section_flags. * varasm.c (get_section): Allow section flags conflicts between relro and read-only sections if the section hasn't been declared yet. Set SECTION_OVERRIDE after diagnosing section type conflict. (get_variable_section): No longer static. (default_section_type_flags): Use SECTION_WRITE | SECTION_RELRO for readonly sections that need relocations. (decl_readonly_section_1): New function. (decl_readonly_section): Use it. Revert: 2010-11-17 Dinar Temirbulatov <dtemirbula...@gmail.com> Steve Ellcey <s...@cup.hp.com> PR middle-end/31490 * varasm.c (categorize_decl_for_section): Ignore reloc_rw_mask if section attribute used. * gcc.dg/pr31490-2.c: New test. * gcc.dg/pr31490-3.c: New test. * gcc.dg/pr31490-4.c: New test. Added: trunk/gcc/testsuite/gcc.dg/pr31490-2.c trunk/gcc/testsuite/gcc.dg/pr31490-3.c trunk/gcc/testsuite/gcc.dg/pr31490-4.c Modified: trunk/gcc/ChangeLog trunk/gcc/cgraph.h trunk/gcc/cgraphunit.c trunk/gcc/output.h trunk/gcc/testsuite/ChangeLog trunk/gcc/varasm.c trunk/gcc/varpool.c