aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSriraman Tallam <tmsriram@google.com>2011-09-27 17:52:13 +0000
committerSriraman Tallam <tmsriram@gcc.gnu.org>2011-09-27 17:52:13 +0000
commit4c345757e00b62047a02d4f1349f31104aa07bd8 (patch)
treef93cf1efed9c204307bc2d34f93f0589ef302b84
parent8e8af9b74d52e494d10772b03d31d3f3238098dc (diff)
downloadgcc-4c345757e00b62047a02d4f1349f31104aa07bd8.zip
gcc-4c345757e00b62047a02d4f1349f31104aa07bd8.tar.gz
gcc-4c345757e00b62047a02d4f1349f31104aa07bd8.tar.bz2
output.h (SECTION_EXCLUDE): New macro.
2011-09-27 Sriraman Tallam <tmsriram@google.com> * output.h (SECTION_EXCLUDE): New macro. * varasm.c (default_elf_asm_named_section): Check for SECTION_EXCLUDE. From-SVN: r179288
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/output.h1
-rw-r--r--gcc/varasm.c2
3 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ab85f50..e130ad0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2011-09-27 Sriraman Tallam <tmsriram@google.com>
+
+ * output.h (SECTION_EXCLUDE): New macro.
+ * varasm.c (default_elf_asm_named_section): Check for
+ SECTION_EXCLUDE.
+
2011-09-27 Richard Sandiford <rdsandiford@googlemail.com>
* fwprop.c (forward_propagate_and_simplify): After checking
diff --git a/gcc/output.h b/gcc/output.h
index 6b7c4b8..661b623 100644
--- a/gcc/output.h
+++ b/gcc/output.h
@@ -443,6 +443,7 @@ extern void no_asm_to_stream (FILE *);
#define SECTION_COMMON 0x800000 /* contains common data */
#define SECTION_RELRO 0x1000000 /* data is readonly after relocation processing */
#define SECTION_MACH_DEP 0x2000000 /* subsequent bits reserved for target */
+#define SECTION_EXCLUDE 0x4000000 /* discarded by the linker */
/* This SECTION_STYLE is used for unnamed sections that we can switch
to using a special assembler directive. */
diff --git a/gcc/varasm.c b/gcc/varasm.c
index e83bebb..9eb7295 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -6159,6 +6159,8 @@ default_elf_asm_named_section (const char *name, unsigned int flags,
if (!(flags & SECTION_DEBUG))
*f++ = 'a';
+ if (flags & SECTION_EXCLUDE)
+ *f++ = 'e';
if (flags & SECTION_WRITE)
*f++ = 'w';
if (flags & SECTION_CODE)