]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
spu.c (TARGET_SECTION_TYPE_FLAGS): Define.
authorUlrich Weigand <uweigand@de.ibm.com>
Mon, 2 Mar 2009 19:38:26 +0000 (19:38 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Mon, 2 Mar 2009 19:38:26 +0000 (19:38 +0000)
* config/spu/spu.c (TARGET_SECTION_TYPE_FLAGS): Define.
(spu_section_type_flags): New function.

From-SVN: r144551

gcc/ChangeLog
gcc/config/spu/spu.c

index 04bfd8f95d3a561c71ed56f462bdb5cd28cd2940..f6c5d16ec4085fb3ac581d36803360f36fdfffe6 100644 (file)
@@ -1,3 +1,8 @@
+2009-03-02  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * config/spu/spu.c (TARGET_SECTION_TYPE_FLAGS): Define.
+       (spu_section_type_flags): New function.
+
 2009-02-28  Martin Jambor  <mjambor@suse.cz>
 
        Backport from mainline:
index ad4e2ec7adec3360ad654dc9e3a1471c304c768e..b6e47533401f9d1a1afe62e99c285c9c49ed4585 100644 (file)
@@ -142,6 +142,7 @@ static int spu_builtin_vectorization_cost (bool);
 static bool spu_vector_alignment_reachable (const_tree, bool);
 static int spu_sms_res_mii (struct ddg *g);
 static void asm_file_start (void);
+static unsigned int spu_section_type_flags (tree, const char *, int);
 
 extern const char *reg_names[];
 rtx spu_compare_op0, spu_compare_op1;
@@ -325,6 +326,9 @@ const struct attribute_spec spu_attribute_table[];
 #undef TARGET_ASM_FILE_START
 #define TARGET_ASM_FILE_START asm_file_start
 
+#undef TARGET_SECTION_TYPE_FLAGS
+#define TARGET_SECTION_TYPE_FLAGS spu_section_type_flags
+
 struct gcc_target targetm = TARGET_INITIALIZER;
 
 void
@@ -6220,3 +6224,13 @@ asm_file_start (void)
   default_file_start ();
 }
 
+/* Implement targetm.section_type_flags.  */
+static unsigned int
+spu_section_type_flags (tree decl, const char *name, int reloc)
+{
+  /* .toe needs to have type @nobits.  */
+  if (strcmp (name, ".toe") == 0)
+    return SECTION_BSS;
+  return default_section_type_flags (decl, name, reloc);
+}
+