aboutsummaryrefslogtreecommitdiff
path: root/gcc/except.c
diff options
context:
space:
mode:
authorRichard Earnshaw <rearnsha@arm.com>2003-11-14 10:44:08 +0000
committerRichard Earnshaw <rearnsha@gcc.gnu.org>2003-11-14 10:44:08 +0000
commit86bdf07137d6ee9d7bf300bace373d64c3097c5f (patch)
treeb98346d06e69d441d6ef027b1cec9cc505a7e255 /gcc/except.c
parent6f5f24812b7dc0ffcd1a78ba213305572e946de6 (diff)
downloadgcc-86bdf07137d6ee9d7bf300bace373d64c3097c5f.zip
gcc-86bdf07137d6ee9d7bf300bace373d64c3097c5f.tar.gz
gcc-86bdf07137d6ee9d7bf300bace373d64c3097c5f.tar.bz2
* except.c (sjlj_emit_function_enter): Mark internal label as LOCAL.
From-SVN: r73598
Diffstat (limited to 'gcc/except.c')
-rw-r--r--gcc/except.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/except.c b/gcc/except.c
index edbcda1..5958eae 100644
--- a/gcc/except.c
+++ b/gcc/except.c
@@ -2047,8 +2047,12 @@ sjlj_emit_function_enter (rtx dispatch_label)
if (cfun->uses_eh_lsda)
{
char buf[20];
+ rtx sym;
+
ASM_GENERATE_INTERNAL_LABEL (buf, "LLSDA", current_function_funcdef_no);
- emit_move_insn (mem, gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (buf)));
+ sym = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (buf));
+ SYMBOL_REF_FLAGS (sym) = SYMBOL_FLAG_LOCAL;
+ emit_move_insn (mem, sym);
}
else
emit_move_insn (mem, const0_rtx);