diff options
author | Alan Modra <amodra@bigpond.net.au> | 2005-04-19 07:07:11 +0000 |
---|---|---|
committer | Alan Modra <amodra@gcc.gnu.org> | 2005-04-19 16:37:11 +0930 |
commit | 1334b570e3beacd306e15e50ff7e7fe58cfe419b (patch) | |
tree | ceac57f12d408669e06bae8d10da8e29f4fafff9 /gcc | |
parent | 4821f3090c0edaacc5f2730ac79d30612ec6b4b6 (diff) | |
download | gcc-1334b570e3beacd306e15e50ff7e7fe58cfe419b.zip gcc-1334b570e3beacd306e15e50ff7e7fe58cfe419b.tar.gz gcc-1334b570e3beacd306e15e50ff7e7fe58cfe419b.tar.bz2 |
re PR target/21098 (.note.GNU-stack emitted)
PR target/21098
* config/rs6000/rs6000.c (rs6000_elf_end_indicate_exec_stack): New.
* config/rs6000/linux64.h (TARGET_ASM_FILE_END): Use the above.
From-SVN: r98390
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/rs6000/linux64.h | 4 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 8 |
3 files changed, 16 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a716177..4dfe83b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2005-04-19 Alan Modra <amodra@bigpond.net.au> + + PR target/21098 + * config/rs6000/rs6000.c (rs6000_elf_end_indicate_exec_stack): New. + * config/rs6000/linux64.h (TARGET_ASM_FILE_END): Use the above. + 2005-04-19 Alexandre Oliva <aoliva@redhat.com> * tree-cfg.c (dump_function_to_file): Use cfun info only if it diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h index 2cfabb6..f9a5bd2 100644 --- a/gcc/config/rs6000/linux64.h +++ b/gcc/config/rs6000/linux64.h @@ -1,6 +1,6 @@ /* Definitions of target machine for GNU compiler, for 64 bit PowerPC linux. - Copyright (C) 2000, 2001, 2002, 2003, 2004 + Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This file is part of GCC. @@ -552,7 +552,7 @@ while (0) #undef DRAFT_V4_STRUCT_RET #define DRAFT_V4_STRUCT_RET (!TARGET_64BIT) -#define TARGET_ASM_FILE_END file_end_indicate_exec_stack +#define TARGET_ASM_FILE_END rs6000_elf_end_indicate_exec_stack #define TARGET_HAS_F_SETLKW diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 1559f0d..8ab5ef7 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -642,6 +642,7 @@ static void rs6000_file_start (void); static unsigned int rs6000_elf_section_type_flags (tree, const char *, int); static void rs6000_elf_asm_out_constructor (rtx, int); static void rs6000_elf_asm_out_destructor (rtx, int); +static void rs6000_elf_end_indicate_exec_stack (void) ATTRIBUTE_UNUSED; static void rs6000_elf_select_section (tree, int, unsigned HOST_WIDE_INT); static void rs6000_elf_unique_section (tree, int); static void rs6000_elf_select_rtx_section (enum machine_mode, rtx, @@ -16652,6 +16653,13 @@ rs6000_elf_declare_function_name (FILE *file, const char *name, tree decl) } ASM_OUTPUT_LABEL (file, name); } + +static void +rs6000_elf_end_indicate_exec_stack (void) +{ + if (TARGET_32BIT) + file_end_indicate_exec_stack (); +} #endif #if TARGET_XCOFF |