From 48b1580ecc131e1a05995216d9cdf30bd05c17bd Mon Sep 17 00:00:00 2001 From: Vladimir Makarov Date: Mon, 21 Jun 1999 09:42:51 +0000 Subject: [PATCH] elf.h (BSS_SECTION_ASM_OP, [...]): Add the macros. Mon Jun 21 12:27:17 1999 Vladimir Makarov * config/mips/elf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): Add the macros. * config/m68k/m68kelf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): Ditto. * config/sh/sh.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): Ditto. * config/arm/telf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): Ditto. From-SVN: r27659 --- gcc/ChangeLog | 14 ++++++++++++++ gcc/config/arm/telf.h | 24 ++++++++++++++++++++++++ gcc/config/m68k/m68kelf.h | 24 ++++++++++++++++++++++++ gcc/config/mips/elf.h | 24 ++++++++++++++++++++++++ gcc/config/sh/sh.h | 24 ++++++++++++++++++++++++ 5 files changed, 110 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6a02178dd87..f7d6aee1adc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,17 @@ +Mon Jun 21 12:27:17 1999 Vladimir Makarov + + * config/mips/elf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): + Add the macros. + + * config/m68k/m68kelf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): + Ditto. + + * config/sh/sh.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): + Ditto. + + * config/arm/telf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): + Ditto. + Mon Jun 21 14:58:42 1999 Nick Clifton * config/arm/arm.h: Add cpp support for ARM920 and ARM920T cpu diff --git a/gcc/config/arm/telf.h b/gcc/config/arm/telf.h index 3e14a5f8442..a7740caa64a 100644 --- a/gcc/config/arm/telf.h +++ b/gcc/config/arm/telf.h @@ -105,6 +105,30 @@ extern int arm_structure_size_boundary; #define USER_LABEL_PREFIX "" +/* If defined, a C expression whose value is a string containing the + assembler operation to identify the following data as + uninitialized global data. If not defined, and neither + `ASM_OUTPUT_BSS' nor `ASM_OUTPUT_ALIGNED_BSS' are defined, + uninitialized global data will be output in the data section if + `-fno-common' is passed, otherwise `ASM_OUTPUT_COMMON' will be + used. */ +#ifndef BSS_SECTION_ASM_OP +#define BSS_SECTION_ASM_OP ".section\t.bss" +#endif + +/* Like `ASM_OUTPUT_BSS' except takes the required alignment as a + separate, explicit argument. If you define this macro, it is used + in place of `ASM_OUTPUT_BSS', and gives you more flexibility in + handling the required alignment of the variable. The alignment is + specified as the number of bits. + + Try to use function `asm_output_aligned_bss' defined in file + `varasm.c' when defining this macro. */ +#ifndef ASM_OUTPUT_ALIGNED_BSS +#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \ + asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN) +#endif + /* Don't know how to order these. UNALIGNED_WORD_ASM_OP is in dwarf2.out. */ #define UNALIGNED_WORD_ASM_OP ".4byte" diff --git a/gcc/config/m68k/m68kelf.h b/gcc/config/m68k/m68kelf.h index 88dfc3db9a2..ce874149da3 100644 --- a/gcc/config/m68k/m68kelf.h +++ b/gcc/config/m68k/m68kelf.h @@ -275,3 +275,27 @@ extern int switch_table_difference_label_flag; #undef STARTFILE_SPEC #define STARTFILE_SPEC "crtbegin.o%s" + +/* If defined, a C expression whose value is a string containing the + assembler operation to identify the following data as + uninitialized global data. If not defined, and neither + `ASM_OUTPUT_BSS' nor `ASM_OUTPUT_ALIGNED_BSS' are defined, + uninitialized global data will be output in the data section if + `-fno-common' is passed, otherwise `ASM_OUTPUT_COMMON' will be + used. */ +#ifndef BSS_SECTION_ASM_OP +#define BSS_SECTION_ASM_OP ".section\t.bss" +#endif + +/* Like `ASM_OUTPUT_BSS' except takes the required alignment as a + separate, explicit argument. If you define this macro, it is used + in place of `ASM_OUTPUT_BSS', and gives you more flexibility in + handling the required alignment of the variable. The alignment is + specified as the number of bits. + + Try to use function `asm_output_aligned_bss' defined in file + `varasm.c' when defining this macro. */ +#ifndef ASM_OUTPUT_ALIGNED_BSS +#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \ + asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN) +#endif diff --git a/gcc/config/mips/elf.h b/gcc/config/mips/elf.h index 53af0469076..43f92e81969 100644 --- a/gcc/config/mips/elf.h +++ b/gcc/config/mips/elf.h @@ -90,6 +90,30 @@ do { \ #define TYPE_ASM_OP ".type" #define SIZE_ASM_OP ".size" +/* If defined, a C expression whose value is a string containing the + assembler operation to identify the following data as + uninitialized global data. If not defined, and neither + `ASM_OUTPUT_BSS' nor `ASM_OUTPUT_ALIGNED_BSS' are defined, + uninitialized global data will be output in the data section if + `-fno-common' is passed, otherwise `ASM_OUTPUT_COMMON' will be + used. */ +#ifndef BSS_SECTION_ASM_OP +#define BSS_SECTION_ASM_OP ".section\t.bss" +#endif + +/* Like `ASM_OUTPUT_BSS' except takes the required alignment as a + separate, explicit argument. If you define this macro, it is used + in place of `ASM_OUTPUT_BSS', and gives you more flexibility in + handling the required alignment of the variable. The alignment is + specified as the number of bits. + + Try to use function `asm_output_aligned_bss' defined in file + `varasm.c' when defining this macro. */ +#ifndef ASM_OUTPUT_ALIGNED_BSS +#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \ + asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN) +#endif + /* These macros generate the special .type and .size directives which are used to set the corresponding fields of the linker symbol table entries in an ELF object file under SVR4. These macros also output diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h index 23c315f09c7..e8ea3e49cfd 100644 --- a/gcc/config/sh/sh.h +++ b/gcc/config/sh/sh.h @@ -1759,6 +1759,30 @@ dtors_section() \ } \ } +/* If defined, a C expression whose value is a string containing the + assembler operation to identify the following data as + uninitialized global data. If not defined, and neither + `ASM_OUTPUT_BSS' nor `ASM_OUTPUT_ALIGNED_BSS' are defined, + uninitialized global data will be output in the data section if + `-fno-common' is passed, otherwise `ASM_OUTPUT_COMMON' will be + used. */ +#ifndef BSS_SECTION_ASM_OP +#define BSS_SECTION_ASM_OP ".section\t.bss" +#endif + +/* Like `ASM_OUTPUT_BSS' except takes the required alignment as a + separate, explicit argument. If you define this macro, it is used + in place of `ASM_OUTPUT_BSS', and gives you more flexibility in + handling the required alignment of the variable. The alignment is + specified as the number of bits. + + Try to use function `asm_output_aligned_bss' defined in file + `varasm.c' when defining this macro. */ +#ifndef ASM_OUTPUT_ALIGNED_BSS +#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \ + asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN) +#endif + /* Define this so that jump tables go in same section as the current function, which could be text or it could be a user defined section. */ #define JUMP_TABLES_IN_TEXT_SECTION 1 -- 2.30.2