diff options
Diffstat (limited to 'gcc/except.c')
-rw-r--r-- | gcc/except.c | 6 |
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); |