summaryrefslogtreecommitdiff
path: root/gcc/except.c
diff options
context:
space:
mode:
authorrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>2003-11-14 10:44:08 +0000
committerrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>2003-11-14 10:44:08 +0000
commit134c13b50e992928dc775de96b4325ecffa239b1 (patch)
treeb98346d06e69d441d6ef027b1cec9cc505a7e255 /gcc/except.c
parent068c4becbe4c31df913091a4c0c10ffa2a797460 (diff)
downloadgcc-134c13b50e992928dc775de96b4325ecffa239b1.tar.gz
* except.c (sjlj_emit_function_enter): Mark internal label as LOCAL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73598 138bc75d-0d04-0410-961f-82ee72b054a4
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 edbcda10cf4..5958eae290f 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);