From 3c5f0425ac3b879f9df2a331dd65c1be78b85f1f Mon Sep 17 00:00:00 2001 From: Iain Sandoe Date: Wed, 8 Jul 2015 16:56:46 +0000 Subject: [PATCH] re PR target/66523 (the new clang-based assembler in Xcode 7 on 10.11 fails on libobjc/NXConstStr.m) 2015-07-08 Iain Sandoe PR target/66523 * config/darwin.c (darwin_mark_decl_preserved): Exclude 'L' label names from preservation. From-SVN: r225565 --- gcc/ChangeLog | 6 ++++++ gcc/config/darwin.c | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9d19711adf6..6f6084c9338 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-07-08 Iain Sandoe + + PR target/66523 + * config/darwin.c (darwin_mark_decl_preserved): Exclude 'L' label names from + preservation. + 2015-07-08 Vladimir Makarov PR middle-end/66334 diff --git a/gcc/config/darwin.c b/gcc/config/darwin.c index ec4048d75ff..ad703283e60 100644 --- a/gcc/config/darwin.c +++ b/gcc/config/darwin.c @@ -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); -- 2.30.2