diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1994-03-16 09:07:29 -0500 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1994-03-16 09:07:29 -0500 |
commit | f8eb03658ea5b282968f62e641d490f6de6a8540 (patch) | |
tree | 84de252a86862d8bedf31a4b932aced18de5d711 /gcc | |
parent | bc69bfacd48428c3fe9aab1924b9b7dbb9041dff (diff) | |
download | gcc-f8eb03658ea5b282968f62e641d490f6de6a8540.zip gcc-f8eb03658ea5b282968f62e641d490f6de6a8540.tar.gz gcc-f8eb03658ea5b282968f62e641d490f6de6a8540.tar.bz2 |
(FUNCTION_PROLOGUE): Load sb through r0 if TARGET_REGPARM is false.
From-SVN: r6797
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/ns32k/ns32k.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/gcc/config/ns32k/ns32k.h b/gcc/config/ns32k/ns32k.h index c3d0621..dee0b06 100644 --- a/gcc/config/ns32k/ns32k.h +++ b/gcc/config/ns32k/ns32k.h @@ -601,8 +601,16 @@ enum reg_class { NO_REGS, GENERAL_REGS, FLOAT_REGS, GEN_AND_FP_REGS, if (flag_pic && current_function_uses_pic_offset_table) \ { \ fprintf (FILE, "\tsprd sb,tos\n"); \ - fprintf (FILE, "\taddr _GLOBAL_OFFSET_TABLE_(pc),tos\n"); \ - fprintf (FILE, "\tlprd sb,tos\n"); \ + if (TARGET_REGPARM) \ + { \ + fprintf (FILE, "\taddr _GLOBAL_OFFSET_TABLE_(pc),tos\n"); \ + fprintf (FILE, "\tlprd sb,tos\n"); \ + } \ + else \ + { \ + fprintf (FILE, "\taddr _GLOBAL_OFFSET_TABLE_(pc),r0\n"); \ + fprintf (FILE, "\tlprd sb,r0\n"); \ + } \ } \ } |