pdp11-protos.h (pdp11_asm_output_var): Declare.
* config/pdp11/pdp11-protos.h (pdp11_asm_output_var): Declare. * config/pdp11/pdp11.c (pdp11_asm_output_var): New function. * config/pdp11/pdp11.h (ASM_OUTPUT_ALIGNED_COMMON, ASM_OUTPUT_ALIGNED_LOCAL): New macros. (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Delete. From-SVN: r168333
This commit is contained in:
parent
712959e93e
commit
dad6bca98a
4 changed files with 27 additions and 10 deletions
|
@ -1,3 +1,11 @@
|
|||
2010-12-29 Paul Koning <ni1d@arrl.net>
|
||||
|
||||
* config/pdp11/pdp11-protos.h (pdp11_asm_output_var): Declare.
|
||||
* config/pdp11/pdp11.c (pdp11_asm_output_var): New function.
|
||||
* config/pdp11/pdp11.h (ASM_OUTPUT_ALIGNED_COMMON,
|
||||
ASM_OUTPUT_ALIGNED_LOCAL): New macros.
|
||||
(ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Delete.
|
||||
|
||||
2010-12-30 Joern Rennecke <amylaar@spamcop.net>
|
||||
|
||||
PR target/47129
|
||||
|
|
|
@ -44,3 +44,4 @@ extern enum reg_class pdp11_regno_reg_class (int);
|
|||
#endif /* RTX_CODE */
|
||||
|
||||
extern void output_ascii (FILE *, const char *, int);
|
||||
extern void pdp11_asm_output_var (FILE *, const char *, int, int, bool);
|
||||
|
|
|
@ -715,6 +715,19 @@ output_ascii (FILE *file, const char *p, int size)
|
|||
}
|
||||
|
||||
|
||||
void
|
||||
pdp11_asm_output_var (FILE *file, const char *name, int size,
|
||||
int align, bool global)
|
||||
{
|
||||
if (align > 8)
|
||||
fprintf (file, "\n\t.even\n");
|
||||
fprintf (file, ".globl ");
|
||||
assemble_name (file, name);
|
||||
fprintf (file, "\n");
|
||||
assemble_name (file, name);
|
||||
fprintf (file, ": .=.+ %#ho\n", (unsigned short)size);
|
||||
}
|
||||
|
||||
void
|
||||
print_operand_address (FILE *file, register rtx addr)
|
||||
{
|
||||
|
|
|
@ -648,20 +648,15 @@ extern struct rtx_def *cc0_reg_rtx;
|
|||
/* This says how to output an assembler line
|
||||
to define a global common symbol. */
|
||||
|
||||
#define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED) \
|
||||
( fprintf ((FILE), ".globl "), \
|
||||
assemble_name ((FILE), (NAME)), \
|
||||
fprintf ((FILE), "\n"), \
|
||||
assemble_name ((FILE), (NAME)), \
|
||||
fprintf ((FILE), ": .=.+ %#ho\n", (unsigned short)(ROUNDED)) \
|
||||
)
|
||||
#define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGN) \
|
||||
pdp11_asm_output_var (FILE, NAME, SIZE, ALIGN, true)
|
||||
|
||||
|
||||
/* This says how to output an assembler line
|
||||
to define a local common symbol. */
|
||||
|
||||
#define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED) \
|
||||
( assemble_name ((FILE), (NAME)), \
|
||||
fprintf ((FILE), ":\t.=.+ %#ho\n", (unsigned short)(ROUNDED)))
|
||||
#define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGN) \
|
||||
pdp11_asm_output_var (FILE, NAME, SIZE, ALIGN, false)
|
||||
|
||||
/* Print operand X (an rtx) in assembler syntax to file FILE.
|
||||
CODE is a letter or dot (`z' in `%z0') or 0 if no letter was specified.
|
||||
|
|
Loading…
Add table
Reference in a new issue