diff options
author | Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> | 2016-04-26 10:06:16 +0000 |
---|---|---|
committer | Rainer Orth <ro@gcc.gnu.org> | 2016-04-26 10:06:16 +0000 |
commit | b2eb4ed5aa837132cb46375a5facab6d0e7453c6 (patch) | |
tree | 6a96a7402ecf753faa8bc79527b942906023d5f3 /gcc/varasm.c | |
parent | ec1a9e7dab4b1bf244056f355fc8364b5ccf2009 (diff) | |
download | gcc-b2eb4ed5aa837132cb46375a5facab6d0e7453c6.zip gcc-b2eb4ed5aa837132cb46375a5facab6d0e7453c6.tar.gz gcc-b2eb4ed5aa837132cb46375a5facab6d0e7453c6.tar.bz2 |
Support .lbss etc. sections with Solaris as (PR target/59407)
PR target/59407
* config/i386/i386.c (SECTION_LARGE): Define.
(x86_64_elf_select_section): Set it for large data/bss sections.
Only clear SECTION_WRITE for .lrodata.
(x86_64_elf_section_type_flags): Set SECTION_LARGE for large
data/bss sections.
* config/i386/sol2.h (MACH_DEP_SECTION_ASM_FLAG): Define.
* varasm.c (default_elf_asm_named_section): Grow flagchars.
[MACH_DEP_SECTION_ASM_FLAG] Emit MACH_DEP_SECTION_ASM_FLAG for
SECTION_MACH_DEP.
* doc/tm.texi.in (Sections, MACH_DEP_SECTION_ASM_FLAG): Describe.
* doc/tm.texi: Regenerate.
From-SVN: r235434
Diffstat (limited to 'gcc/varasm.c')
-rw-r--r-- | gcc/varasm.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/varasm.c b/gcc/varasm.c index d71defa..c7ed06e 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -6238,7 +6238,7 @@ void default_elf_asm_named_section (const char *name, unsigned int flags, tree decl) { - char flagchars[10], *f = flagchars; + char flagchars[11], *f = flagchars; /* If we have already declared this section, we can use an abbreviated form to switch back to it -- unless this section is @@ -6271,6 +6271,10 @@ default_elf_asm_named_section (const char *name, unsigned int flags, *f++ = TLS_SECTION_ASM_FLAG; if (HAVE_COMDAT_GROUP && (flags & SECTION_LINKONCE)) *f++ = 'G'; +#ifdef MACH_DEP_SECTION_ASM_FLAG + if (flags & SECTION_MACH_DEP) + *f++ = MACH_DEP_SECTION_ASM_FLAG; +#endif *f = '\0'; fprintf (asm_out_file, "\t.section\t%s,\"%s\"", name, flagchars); |