diff options
Diffstat (limited to 'gcc/config/rs6000/rs6000.c')
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 78f0a14..d7d94ef 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -193,7 +193,7 @@ static GTY(()) int common_mode_defined; /* Label number of label created for -mrelocatable, to call to so we can get the address of the GOT section */ -int rs6000_pic_labelno; +static int rs6000_pic_labelno; #ifdef USING_ELFOS_H /* Which abi to adhere to */ @@ -18898,7 +18898,8 @@ rs6000_emit_load_toc_table (int fromprolog) char buf[30]; rtx lab, tmp1, tmp2, got; - ASM_GENERATE_INTERNAL_LABEL (buf, "LCF", rs6000_pic_labelno); + lab = gen_label_rtx (); + ASM_GENERATE_INTERNAL_LABEL (buf, "L", CODE_LABEL_NUMBER (lab)); lab = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (buf)); if (flag_pic == 2) got = gen_rtx_SYMBOL_REF (Pmode, toc_label_name); @@ -18911,8 +18912,7 @@ rs6000_emit_load_toc_table (int fromprolog) tmp2 = gen_reg_rtx (Pmode); } emit_insn (gen_load_toc_v4_PIC_1 (lab)); - emit_move_insn (tmp1, - gen_rtx_REG (Pmode, LR_REGNO)); + emit_move_insn (tmp1, gen_rtx_REG (Pmode, LR_REGNO)); emit_insn (gen_load_toc_v4_PIC_3b (tmp2, tmp1, got, lab)); emit_insn (gen_load_toc_v4_PIC_3c (dest, tmp2, got, lab)); } @@ -18939,8 +18939,7 @@ rs6000_emit_load_toc_table (int fromprolog) symL = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (buf)); emit_insn (gen_load_toc_v4_PIC_1 (symF)); - emit_move_insn (dest, - gen_rtx_REG (Pmode, LR_REGNO)); + emit_move_insn (dest, gen_rtx_REG (Pmode, LR_REGNO)); emit_insn (gen_load_toc_v4_PIC_2 (temp0, dest, symL, symF)); } else |