From 468e8dba6af6ffa93b44ae6899a326515d2670f6 Mon Sep 17 00:00:00 2001 From: David Edelsohn Date: Mon, 26 Nov 2001 20:35:23 -0500 Subject: [PATCH] more minimal-toc tweaking of output_mi_thunk. From-SVN: r47367 --- gcc/config/rs6000/rs6000.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index b2ff972a714..bf7626ffc5b 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -8184,9 +8184,15 @@ output_mi_thunk (file, thunk_fndecl, delta, function) assemble_name (file, fname); putc ('\n', file); text_section (); + if (TARGET_MINIMAL_TOC) + asm_fprintf (file, (TARGET_32BIT) + ? "\t{l|lwz} %s,%s(%s)\n" : "\tld %s,%s(%s)\n", r12, + TARGET_ELF ? ".LCTOC0@toc" : ".LCTOC..1", toc); asm_fprintf (file, (TARGET_32BIT) ? "\t{l|lwz} %s," : "\tld %s,", r12); assemble_name (file, buf); - asm_fprintf (file, "(%s)\n", reg_names[2]); + if (TARGET_ELF && TARGET_MINIMAL_TOC) + fputs ("-(.LCTOC1)", file); + asm_fprintf (file, "(%s)\n", TARGET_MINIMAL_TOC ? r12 : toc); asm_fprintf (file, (TARGET_32BIT) ? "\t{l|lwz} %s,0(%s)\n" : "\tld %s,0(%s)\n", r0, r12); -- 2.30.2