From cf860dc275f081171bca36a1df471417307b7922 Mon Sep 17 00:00:00 2001 From: Naohiko Shimizu Date: Sun, 13 Oct 2002 01:38:01 +0900 Subject: [PATCH] pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant. * pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant. (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise. * pdp11.c (pdp11_output_function_prologue): 0%o -> %#o. (pdp11_output_function_epilogue, output_ascii): Likewise. (output_addr_const_pdp11): Likewise. * pdp11.md (movdi): Use offsetable memory for floating store. (lshrsi3, negsi2): Delete irrelevant comment. From-SVN: r58087 --- gcc/ChangeLog | 10 ++++++++++ gcc/config/pdp11/pdp11.c | 18 +++++++++--------- gcc/config/pdp11/pdp11.h | 6 +++--- gcc/config/pdp11/pdp11.md | 6 +++--- 4 files changed, 25 insertions(+), 15 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f6b949c85be..4a292ecdacd 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2002-10-12 Naohiko Shimizu + + * pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant. + (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise. + * pdp11.c (pdp11_output_function_prologue): 0%o -> %#o. + (pdp11_output_function_epilogue, output_ascii): Likewise. + (output_addr_const_pdp11): Likewise. + * pdp11.md (movdi): Use offsetable memory for floating store. + (lshrsi3, negsi2): Delete irrelevant comment. + 2002-10-11 Geoffrey Keating * cse.c (mention_regs): Set SUBREG_TICKED to the register number, diff --git a/gcc/config/pdp11/pdp11.c b/gcc/config/pdp11/pdp11.c index 038b89878e1..a7066bdffb7 100644 --- a/gcc/config/pdp11/pdp11.c +++ b/gcc/config/pdp11/pdp11.c @@ -137,7 +137,7 @@ pdp11_output_function_prologue (stream, size) { fprintf (stream, "\t/*abuse empty parameter slot for locals!*/\n"); if (size > 2) - fprintf(stream, "\tsub $0%o, sp\n", size - 2); + fprintf(stream, "\tsub $%#o, sp\n", size - 2); } } @@ -178,7 +178,7 @@ pdp11_output_function_prologue (stream, size) /* make frame */ if (fsize) - fprintf (stream, "\tsub $0%o, sp\n", fsize); + fprintf (stream, "\tsub $%#o, sp\n", fsize); /* save CPU registers */ for (regno = 0; regno < 8; regno++) @@ -280,7 +280,7 @@ pdp11_output_function_epilogue (stream, size) /* change fp -> r5 due to the compile error on libgcc2.c */ for (i =7 ; i >= 0 ; i--) if (regs_ever_live[i] && ! call_used_regs[i]) - fprintf(stream, "\tmov 0%o(r5), %s\n",(-fsize-2*j--)&0xffff, reg_names[i]); + fprintf(stream, "\tmov %#o(r5), %s\n",(-fsize-2*j--)&0xffff, reg_names[i]); /* get ACs */ via_ac = FIRST_PSEUDO_REGISTER -1; @@ -298,7 +298,7 @@ pdp11_output_function_epilogue (stream, size) && regs_ever_live[i] && ! call_used_regs[i]) { - fprintf(stream, "\tldd 0%o(r5), %s\n", (-fsize-k)&0xffff, reg_names[i]); + fprintf(stream, "\tldd %#o(r5), %s\n", (-fsize-k)&0xffff, reg_names[i]); k -= 8; } @@ -309,7 +309,7 @@ pdp11_output_function_epilogue (stream, size) if (! LOAD_FPU_REG_P(via_ac)) abort(); - fprintf(stream, "\tldd 0%o(r5), %s\n", (-fsize-k)&0xffff, reg_names[via_ac]); + fprintf(stream, "\tldd %#o(r5), %s\n", (-fsize-k)&0xffff, reg_names[via_ac]); fprintf(stream, "\tstd %s, %s\n", reg_names[via_ac], reg_names[i]); k -= 8; } @@ -351,7 +351,7 @@ pdp11_output_function_epilogue (stream, size) fprintf(stream, "\tmov (sp)+, %s\n", reg_names[i]); if (fsize) - fprintf((stream), "\tadd $0%o, sp\n", (fsize)&0xffff); + fprintf((stream), "\tadd $%#o, sp\n", (fsize)&0xffff); } fprintf (stream, "\trts pc\n"); @@ -818,7 +818,7 @@ output_ascii (file, p, size) register int c = p[i]; if (c < 0) c += 256; - fprintf (file, "0%o", c); + fprintf (file, "%#o", c); if (i < size - 1) putc (',', file); } @@ -1549,7 +1549,7 @@ output_addr_const_pdp11 (file, x) case CONST_INT: /* Should we check for constants which are too big? Maybe cutting them off to 16 bits is OK? */ - fprintf (file, "0%ho", (unsigned short) INTVAL (x)); + fprintf (file, "%#ho", (unsigned short) INTVAL (x)); break; case CONST: @@ -1565,7 +1565,7 @@ output_addr_const_pdp11 (file, x) if (CONST_DOUBLE_HIGH (x)) abort (); /* Should we just silently drop the high part? */ else - fprintf (file, "0%ho", (unsigned short) CONST_DOUBLE_LOW (x)); + fprintf (file, "%#ho", (unsigned short) CONST_DOUBLE_LOW (x)); } else /* We can't handle floating point constants; diff --git a/gcc/config/pdp11/pdp11.h b/gcc/config/pdp11/pdp11.h index 96ebf521776..a30dde72966 100644 --- a/gcc/config/pdp11/pdp11.h +++ b/gcc/config/pdp11/pdp11.h @@ -1107,7 +1107,7 @@ fprintf (FILE, "$help$: . = .+8 ; space for tmp moves!\n") \ } #define ASM_OUTPUT_SKIP(FILE,SIZE) \ - fprintf (FILE, "\t.=.+ %o\n", (SIZE)) + fprintf (FILE, "\t.=.+ %#ho\n", (unsigned short)(SIZE)) /* This says how to output an assembler line to define a global common symbol. */ @@ -1117,7 +1117,7 @@ fprintf (FILE, "$help$: . = .+8 ; space for tmp moves!\n") \ assemble_name ((FILE), (NAME)), \ fprintf ((FILE), "\n"), \ assemble_name ((FILE), (NAME)), \ - fprintf ((FILE), ": .=.+ %o\n", (ROUNDED)) \ + fprintf ((FILE), ": .=.+ %#ho\n", (unsigned short)(ROUNDED)) \ ) /* This says how to output an assembler line @@ -1125,7 +1125,7 @@ fprintf (FILE, "$help$: . = .+8 ; space for tmp moves!\n") \ #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED) \ ( assemble_name ((FILE), (NAME)), \ - fprintf ((FILE), ":\t.=.+ %o\n", (ROUNDED))) + fprintf ((FILE), ":\t.=.+ %#ho\n", (unsigned short)(ROUNDED))) /* Store in OUTPUT a string (made with alloca) containing an assembler-name for a local static variable named NAME. diff --git a/gcc/config/pdp11/pdp11.md b/gcc/config/pdp11/pdp11.md index 2b8747fd057..fae4907bf83 100644 --- a/gcc/config/pdp11/pdp11.md +++ b/gcc/config/pdp11/pdp11.md @@ -621,7 +621,7 @@ ;; Move instructions (define_insn "movdi" - [(set (match_operand:DI 0 "general_operand" "=g,rm,m") + [(set (match_operand:DI 0 "general_operand" "=g,rm,o") (match_operand:DI 1 "general_operand" "m,r,a"))] "" "* return output_move_quad (operands);" @@ -1395,7 +1395,7 @@ (lshiftrt:SI (match_operand:SI 1 "general_operand" "0") (const_int 1)))] "" -{ /* Here we trust that operands don't overlap */ +{ rtx lateoperands[2]; @@ -1614,7 +1614,7 @@ [(set (match_operand:SI 0 "register_operand" "=r") (neg:SI (match_operand:SI 1 "general_operand" "0")))] "" -{ /* Here we trust that operands don't overlap */ +{ rtx lateoperands[2]; -- 2.30.2