summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@acm.org>2006-11-27 20:14:52 +0000
committerBob Wilson <bob.wilson@acm.org>2006-11-27 20:14:52 +0000
commit449241ba08a5bc328cfefe0ee8136ec59d58ff7b (patch)
tree84f77661c9a7309f6a5263bde985883ee8d7c9d4
parentf214d7b72f9bf1329882d28d9377c05a918dd6ca (diff)
downloadgdb-449241ba08a5bc328cfefe0ee8136ec59d58ff7b.tar.gz
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.
-rw-r--r--bfd/ChangeLog4
-rw-r--r--bfd/elf32-xtensa.c1
-rw-r--r--include/ChangeLog5
-rw-r--r--include/xtensa-config.h11
4 files changed, 20 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 40171519b00..03338f8dfbb 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,7 @@
+2006-11-27 Bob Wilson <bob.wilson@acm.org>
+
+ * elf32-xtensa.c (elf_xtensa_special_sections): Add .xtensa.info.
+
2006-11-24 H.J. Lu <hongjiu.lu@intel.com>
* elf.c (IS_SECTION_IN_INPUT_SEGMENT): New.
diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c
index 59ed4ba3221..bb1983025f7 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 63e80fdec62..8f827fab009 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,5 +1,10 @@
2006-11-27 Bob Wilson <bob.wilson@acm.org>
+ * xtensa-config.h (XSHAL_ABI): New.
+ (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New.
+
+2006-11-27 Bob Wilson <bob.wilson@acm.org>
+
* xtensa-isa.h (STATIC_LIBISA): Delete.
2006-10-30 Paul Brook <paul@codesourcery.com>
diff --git a/include/xtensa-config.h b/include/xtensa-config.h
index 5c0315d6198..36f9719fe33 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 */