From d9e4e4f5c7d21a023980292a3f967ecdb4775f4d Mon Sep 17 00:00:00 2001 From: Stan Shebs Date: Tue, 11 Jan 2005 20:45:59 +0000 Subject: rs6000.c (machopic_output_stub): Issue ldu instead of lwzu if 64-bit -mdynamic-no-pic. * config/rs6000/rs6000.c (machopic_output_stub): Issue ldu instead of lwzu if 64-bit -mdynamic-no-pic. From-SVN: r93198 --- gcc/ChangeLog | 5 +++++ gcc/config/rs6000/rs6000.c | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0cbe799..ded748b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-01-11 Stan Shebs + + * config/rs6000/rs6000.c (machopic_output_stub): Issue + ldu instead of lwzu if 64-bit -mdynamic-no-pic. + 2005-01-11 Andrew Pinski PR target/18761 diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 48aff29..6b609e9 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -17610,7 +17610,9 @@ machopic_output_stub (FILE *file, const char *symb, const char *stub) fprintf (file, "\t.indirect_symbol %s\n", symbol_name); fprintf (file, "\tlis r11,ha16(%s)\n", lazy_ptr_name); - fprintf (file, "\tlwzu r12,lo16(%s)(r11)\n", lazy_ptr_name); + fprintf (file, "\t%s r12,lo16(%s)(r11)\n", + (TARGET_64BIT ? "ldu" : "lwzu"), + lazy_ptr_name); fprintf (file, "\tmtctr r12\n"); fprintf (file, "\tbctr\n"); } -- cgit v1.1