From 449241ba08a5bc328cfefe0ee8136ec59d58ff7b Mon Sep 17 00:00:00 2001 From: Bob Wilson Date: Mon, 27 Nov 2006 20:14:52 +0000 Subject: [PATCH] bfd/ * elf32-xtensa.c (elf_xtensa_special_sections): Add .xtensa.info. gas/ * config/tc-xtensa.c (XSHAL_ABI): Add default definition. (directive_state): Disable scheduling by default. (xtensa_add_config_info): New. (xtensa_end): Call xtensa_add_config_info. gas/testsuite/ * gas/elf/section2.e-xtensa: New file. * gas/elf/elf.exp: Use it. include/ * xtensa-config.h (XSHAL_ABI): New. (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New. ld/ * emultempl/xtensaelf.em (XSHAL_ABI): Add default definition. (replace_insn_sec_with_prop_sec): Use bfd_make_section_with_flags. Delete redundant code to set sections flags and alignment. (xt_config_info_unpack_and_check, check_xtensa_info): New. (elf_xtensa_after_open): Iterate over input statements instead of link_info.input_bfds. (elf_xtensa_before_allocation): Likewise. Call check_xtensa_info for each input, and write a new .xtensa.info section in the output. --- bfd/ChangeLog | 4 ++++ bfd/elf32-xtensa.c | 1 + include/ChangeLog | 5 +++++ include/xtensa-config.h | 11 ++++++++++- 4 files changed, 20 insertions(+), 1 deletion(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 40171519b0..03338f8dfb 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,7 @@ +2006-11-27 Bob Wilson + + * elf32-xtensa.c (elf_xtensa_special_sections): Add .xtensa.info. + 2006-11-24 H.J. Lu * elf.c (IS_SECTION_IN_INPUT_SEGMENT): New. diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c index 59ed4ba322..bb1983025f 100644 --- a/bfd/elf32-xtensa.c +++ b/bfd/elf32-xtensa.c @@ -9801,6 +9801,7 @@ static const struct bfd_elf_special_section elf_xtensa_special_sections[] = { STRING_COMMA_LEN (".fini.literal"), 0, SHT_PROGBITS, SHF_ALLOC + SHF_EXECINSTR }, { STRING_COMMA_LEN (".init.literal"), 0, SHT_PROGBITS, SHF_ALLOC + SHF_EXECINSTR }, { STRING_COMMA_LEN (".literal"), 0, SHT_PROGBITS, SHF_ALLOC + SHF_EXECINSTR }, + { STRING_COMMA_LEN (".xtensa.info"), 0, SHT_NOTE, 0 }, { NULL, 0, 0, 0, 0 } }; diff --git a/include/ChangeLog b/include/ChangeLog index 63e80fdec6..8f827fab00 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,5 +1,10 @@ 2006-11-27 Bob Wilson + * xtensa-config.h (XSHAL_ABI): New. + (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New. + +2006-11-27 Bob Wilson + * xtensa-isa.h (STATIC_LIBISA): Delete. 2006-10-30 Paul Brook diff --git a/include/xtensa-config.h b/include/xtensa-config.h index 5c0315d619..36f9719fe3 100644 --- a/include/xtensa-config.h +++ b/include/xtensa-config.h @@ -1,5 +1,6 @@ /* Xtensa configuration settings. - Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. Contributed by Bob Wilson (bwilson@tensilica.com) at Tensilica. This program is free software; you can redistribute it and/or modify @@ -145,4 +146,12 @@ #undef XCHAL_INST_FETCH_WIDTH #define XCHAL_INST_FETCH_WIDTH 4 + +#undef XSHAL_ABI +#undef XTHAL_ABI_WINDOWED +#undef XTHAL_ABI_CALL0 +#define XSHAL_ABI XTHAL_ABI_WINDOWED +#define XTHAL_ABI_WINDOWED 0 +#define XTHAL_ABI_CALL0 1 + #endif /* !XTENSA_CONFIG_H */ -- 2.11.0