This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[rs6000] Don't emit libcall notes around TLS address
- From: Steven Bosscher <stevenb at suse dot de>
- To: gcc-patches at gcc dot gnu dot org
- Cc: dje at gcc dot gnu dot org
- Date: Sat, 11 Jun 2005 16:30:49 +0200
- Subject: [rs6000] Don't emit libcall notes around TLS address
Hi,
I asked on IRC if David knows why the rs6000 port emits libcall notes
around TLS addresses in some cases. He did not know, so I removed the
notes and bootstrapped/tested on powerpc{,64}-unknown-linux-gnu. There
were no regressions.
Does this look OK for mainline?
Gr.
Steven
* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Do
not emit libcall notes.
Index: config/rs6000/rs6000.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/rs6000/rs6000.c,v
retrieving revision 1.840
diff -u -3 -p -r1.840 rs6000.c
--- config/rs6000/rs6000.c 10 Jun 2005 01:44:59 -0000 1.840
+++ config/rs6000/rs6000.c 10 Jun 2005 23:16:29 -0000
@@ -2852,7 +2852,7 @@ rs6000_legitimize_tls_address (rtx addr,
else
{
rtx tempLR, tmp3, mem;
- rtx first, last;
+ rtx last;
tempLR = gen_reg_rtx (Pmode);
tmp1 = gen_reg_rtx (Pmode);
@@ -2860,17 +2860,13 @@ rs6000_legitimize_tls_address (rtx addr,
tmp3 = gen_reg_rtx (Pmode);
mem = gen_const_mem (Pmode, tmp1);
- first = emit_insn (gen_load_toc_v4_PIC_1b (tempLR, gsym));
+ emit_insn (gen_load_toc_v4_PIC_1b (tempLR, gsym));
emit_move_insn (tmp1, tempLR);
emit_move_insn (tmp2, mem);
emit_insn (gen_addsi3 (tmp3, tmp1, tmp2));
last = emit_move_insn (got, tmp3);
REG_NOTES (last) = gen_rtx_EXPR_LIST (REG_EQUAL, gsym,
REG_NOTES (last));
- REG_NOTES (first) = gen_rtx_INSN_LIST (REG_LIBCALL, last,
- REG_NOTES (first));
- REG_NOTES (last) = gen_rtx_INSN_LIST (REG_RETVAL, first,
- REG_NOTES (last));
}
}
}