From ef7a142481ce34ebd533e9f9f9c8da4e5ec01fcf Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Sat, 19 Aug 1995 17:19:42 -0400 Subject: [PATCH] (output_prolog): Fixup code to set stack pointer if stack size > 32k. From-SVN: r10252 --- gcc/config/rs6000/rs6000.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 481a18fb88d..0502dab9672 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -2538,11 +2538,12 @@ output_prolog (file, size) reg_names[1], - info->total_size, reg_names[1]); else { + int neg_size = - info->total_size; asm_fprintf (file, "\t{liu|lis} %s,%d\n\t{oril|ori} %s,%s,%d\n", - reg_names[0], (info->total_size >> 16) & 0xffff, - reg_names[0], reg_names[0], info->total_size & 0xffff); + reg_names[0], (neg_size >> 16) & 0xffff, + reg_names[0], reg_names[0], neg_size & 0xffff); asm_fprintf (file, - (TARGET_64BIT) ? "\tstdux %s,%s,%s\n" : "\tstwux %s,%s,%s\n", + (TARGET_64BIT) ? "\tstdux %s,%s,%s\n" : "\t{stux|stwux} %s,%s,%s\n", reg_names[1], reg_names[1], reg_names[0]); } } -- 2.30.2