From 8c8b21e4f737fdf0e75fcc4a414eee0d4ce56113 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Thu, 14 Nov 2013 19:28:43 +0100 Subject: [PATCH] re PR sanitizer/59122 (libsanitizer merge from upstream r191666 causes duplicate symbol errors) PR sanitizer/59122 * asan.c (asan_emit_stack_protection): Ensure -fsection-anchors isn't confused by the artificial decl. From-SVN: r204801 --- gcc/ChangeLog | 6 ++++++ gcc/asan.c | 3 +++ 2 files changed, 9 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 307ac548e56..8d0d89352f6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2013-11-14 Jakub Jelinek + + PR sanitizer/59122 + * asan.c (asan_emit_stack_protection): Ensure -fsection-anchors + isn't confused by the artificial decl. + 2013-11-14 Ulrich Weigand * config/rs6000/rs6000.c (rs6000_emit_prologue): Do not place a diff --git a/gcc/asan.c b/gcc/asan.c index 9b6f96872ec..a3fb51fa8db 100644 --- a/gcc/asan.c +++ b/gcc/asan.c @@ -1002,6 +1002,9 @@ asan_emit_stack_protection (rtx base, HOST_WIDE_INT *offsets, tree *decls, TREE_STATIC (decl) = 1; TREE_PUBLIC (decl) = 0; TREE_USED (decl) = 1; + DECL_INITIAL (decl) = decl; + TREE_ASM_WRITTEN (decl) = 1; + TREE_ASM_WRITTEN (id) = 1; emit_move_insn (mem, expand_normal (build_fold_addr_expr (decl))); shadow_base = expand_binop (Pmode, lshr_optab, base, GEN_INT (ASAN_SHADOW_SHIFT), -- 2.30.2