re PR target/66523 (the new clang-based assembler in Xcode 7 on 10.11 fails on libobj...
authorIain Sandoe <iain@codesourcery.com>
Wed, 8 Jul 2015 16:56:46 +0000 (16:56 +0000)
committerMike Stump <mrs@gcc.gnu.org>
Wed, 8 Jul 2015 16:56:46 +0000 (16:56 +0000)
2015-07-08  Iain Sandoe  <iain@codesourcery.com>

PR target/66523
* config/darwin.c (darwin_mark_decl_preserved): Exclude 'L' label names from
preservation.

From-SVN: r225565

gcc/ChangeLog
gcc/config/darwin.c

index 9d19711adf6d3a481e9929238f1e1a6ef923c5cb..6f6084c9338ff131e1a85bf53f3cb9de686b9881 100644 (file)
@@ -1,3 +1,9 @@
+2015-07-08  Iain Sandoe  <iain@codesourcery.com>
+
+       PR target/66523
+       * config/darwin.c (darwin_mark_decl_preserved): Exclude 'L' label names from
+       preservation.
+
 2015-07-08  Vladimir Makarov  <vmakarov@redhat.com>
 
        PR middle-end/66334
index ec4048d75ffdd4dd64ec5eb29e8775cba29a29df..ad703283e609274fb291411e3d3400467ea6904a 100644 (file)
@@ -1229,6 +1229,11 @@ darwin_encode_section_info (tree decl, rtx rtl, int first ATTRIBUTE_UNUSED)
 void
 darwin_mark_decl_preserved (const char *name)
 {
+  /* Actually we shouldn't mark any local symbol this way, but for now
+     this only happens with ObjC meta-data.  */
+  if (darwin_label_is_anonymous_local_objc_name (name))
+    return;
+
   fprintf (asm_out_file, "\t.no_dead_strip ");
   assemble_name (asm_out_file, name);
   fputc ('\n', asm_out_file);