From 287b473fcfc645e281336a1826b770cdd7cc211b Mon Sep 17 00:00:00 2001 From: Eric Christopher Date: Tue, 15 Mar 2005 05:37:50 +0000 Subject: [PATCH] ==> ChangeLog <== 2005-03-14 Eric Christopher * config/tc-mips.c: Include dw2gencfi.h. (mips_cfi_frame_initial_instructions): New. * config/tc-mips.h (TARGET_USE_CFIPOP): Define. (tc_cfi_frame_initial_instructions): Ditto. (DWARF2_DEFAULT_RETURN_COLUMN): Ditto. (DWARF2_CIE_DATA_ALIGNMENT): Ditto. * Makefile.am: Update dependencies. * Makefile.in: Regenerate. ==> testsuite/ChangeLog <== 2005-03-14 Eric Christopher * gas/cfi/cfi-mips-1.d, gas/cfi/cfi-mips-1.s: New dump test. * gas/cfi/cfi.exp: Run it. * gas/cfi/cfi-common-1.d: Update. * gas/cfi/cfi-common-2.d: Ditto. * gas/cfi/cfi-common-3.d: Ditto. * gas/cfi/cfi-common-4.d: Ditto. --- gas/ChangeLog | 11 +++++++++++ gas/Makefile.am | 2 +- gas/Makefile.in | 2 +- gas/config/tc-mips.c | 9 +++++++++ gas/config/tc-mips.h | 8 ++++++++ gas/testsuite/ChangeLog | 9 +++++++++ gas/testsuite/gas/cfi/cfi-common-1.d | 2 +- gas/testsuite/gas/cfi/cfi-common-2.d | 2 +- gas/testsuite/gas/cfi/cfi-common-3.d | 2 +- gas/testsuite/gas/cfi/cfi-common-4.d | 2 +- gas/testsuite/gas/cfi/cfi.exp | 2 ++ 11 files changed, 45 insertions(+), 6 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 21acf99cbf7..5c33ad4200c 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,14 @@ +2005-03-14 Eric Christopher + + * config/tc-mips.c: Include dw2gencfi.h. + (mips_cfi_frame_initial_instructions): New. + * config/tc-mips.h (TARGET_USE_CFIPOP): Define. + (tc_cfi_frame_initial_instructions): Ditto. + (DWARF2_DEFAULT_RETURN_COLUMN): Ditto. + (DWARF2_CIE_DATA_ALIGNMENT): Ditto. + * Makefile.am: Update dependencies. + * Makefile.in: Regenerate. + 2005-03-15 Alan Modra * po/es.po: Commit new Spanish translation. diff --git a/gas/Makefile.am b/gas/Makefile.am index 450852ac750..38676b84839 100644 --- a/gas/Makefile.am +++ b/gas/Makefile.am @@ -1302,7 +1302,7 @@ DEPTC_mips_elf = $(INCDIR)/symcat.h $(srcdir)/config/obj-elf.h \ $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h \ $(INCDIR)/elf/external.h $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h \ subsegs.h $(INCDIR)/obstack.h $(INCDIR)/safe-ctype.h \ - $(INCDIR)/opcode/mips.h itbl-ops.h dwarf2dbg.h $(INCDIR)/elf/mips.h \ + $(INCDIR)/opcode/mips.h itbl-ops.h dwarf2dbg.h dw2gencfi.h $(INCDIR)/elf/mips.h \ $(INCDIR)/elf/reloc-macros.h ecoff.h $(INCDIR)/coff/sym.h \ $(INCDIR)/coff/ecoff.h DEPTC_mmix_elf = $(INCDIR)/symcat.h $(srcdir)/config/obj-elf.h \ diff --git a/gas/Makefile.in b/gas/Makefile.in index 3b045810fba..26623f730f3 100644 --- a/gas/Makefile.in +++ b/gas/Makefile.in @@ -1141,7 +1141,7 @@ DEPTC_mips_elf = $(INCDIR)/symcat.h $(srcdir)/config/obj-elf.h \ $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h \ $(INCDIR)/elf/external.h $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h \ subsegs.h $(INCDIR)/obstack.h $(INCDIR)/safe-ctype.h \ - $(INCDIR)/opcode/mips.h itbl-ops.h dwarf2dbg.h $(INCDIR)/elf/mips.h \ + $(INCDIR)/opcode/mips.h itbl-ops.h dwarf2dbg.h dw2gencfi.h $(INCDIR)/elf/mips.h \ $(INCDIR)/elf/reloc-macros.h ecoff.h $(INCDIR)/coff/sym.h \ $(INCDIR)/coff/ecoff.h diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index 655be764c67..84f58e3e9d9 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -33,6 +33,7 @@ #include "opcode/mips.h" #include "itbl-ops.h" #include "dwarf2dbg.h" +#include "dw2gencfi.h" #ifdef DEBUG #define DBG(x) printf x @@ -14016,3 +14017,11 @@ mips_dwarf2_addr_size (void) else return 4; } + +/* Standard calling conventions leave the CFA at SP on entry. */ +void +mips_cfi_frame_initial_instructions (void) +{ + cfi_add_CFA_def_cfa_register (SP); +} + diff --git a/gas/config/tc-mips.h b/gas/config/tc-mips.h index 720f644fe38..a5d5cf19847 100644 --- a/gas/config/tc-mips.h +++ b/gas/config/tc-mips.h @@ -161,4 +161,12 @@ extern enum dwarf2_format mips_dwarf2_format (void); extern int mips_dwarf2_addr_size (void); #define DWARF2_ADDR_SIZE(bfd) mips_dwarf2_addr_size () +#define TARGET_USE_CFIPOP 1 + +#define tc_cfi_frame_initial_instructions mips_cfi_frame_initial_instructions +extern void mips_cfi_frame_initial_instructions (void); + +#define DWARF2_DEFAULT_RETURN_COLUMN 31 +#define DWARF2_CIE_DATA_ALIGNMENT -4 + #endif /* TC_MIPS */ diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 2bb1e7834b5..ac98f45366a 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2005-03-14 Eric Christopher + + * gas/cfi/cfi-mips-1.d, gas/cfi/cfi-mips-1.s: New dump test. + * gas/cfi/cfi.exp: Run it. + * gas/cfi/cfi-common-1.d: Update. + * gas/cfi/cfi-common-2.d: Ditto. + * gas/cfi/cfi-common-3.d: Ditto. + * gas/cfi/cfi-common-4.d: Ditto. + 2005-03-10 Aldy Hernandez * gas/ppc/e500.d: Fix encoding of efscfd. diff --git a/gas/testsuite/gas/cfi/cfi-common-1.d b/gas/testsuite/gas/cfi/cfi-common-1.d index 332c4774c0c..9f5d9932a7d 100644 --- a/gas/testsuite/gas/cfi/cfi-common-1.d +++ b/gas/testsuite/gas/cfi/cfi-common-1.d @@ -8,7 +8,7 @@ The section .eh_frame contains: Code alignment factor: .* Data alignment factor: .* Return address column: .* - Augmentation data: 1b + Augmentation data: [01]b DW_CFA_nop DW_CFA_nop diff --git a/gas/testsuite/gas/cfi/cfi-common-2.d b/gas/testsuite/gas/cfi/cfi-common-2.d index a1f1d068541..a54e542cbc3 100644 --- a/gas/testsuite/gas/cfi/cfi-common-2.d +++ b/gas/testsuite/gas/cfi/cfi-common-2.d @@ -8,7 +8,7 @@ The section .eh_frame contains: Code alignment factor: .* Data alignment factor: .* Return address column: .* - Augmentation data: 1b + Augmentation data: [01]b #... 00000014 000000[12][c0] 00000018 FDE cie=00000000 pc=.* DW_CFA_advance_loc: 4 to .* diff --git a/gas/testsuite/gas/cfi/cfi-common-3.d b/gas/testsuite/gas/cfi/cfi-common-3.d index 82a4193280f..70055aa0b8c 100644 --- a/gas/testsuite/gas/cfi/cfi-common-3.d +++ b/gas/testsuite/gas/cfi/cfi-common-3.d @@ -8,7 +8,7 @@ The section .eh_frame contains: Code alignment factor: .* Data alignment factor: .* Return address column: .* - Augmentation data: 1b + Augmentation data: [01]b #... 00000014 00000010 00000018 FDE cie=00000000 pc=.* DW_CFA_advance_loc: 4 to .* diff --git a/gas/testsuite/gas/cfi/cfi-common-4.d b/gas/testsuite/gas/cfi/cfi-common-4.d index c6bbae8200d..9d6527023b4 100644 --- a/gas/testsuite/gas/cfi/cfi-common-4.d +++ b/gas/testsuite/gas/cfi/cfi-common-4.d @@ -8,7 +8,7 @@ The section .eh_frame contains: Code alignment factor: .* Data alignment factor: .* Return address column: .* - Augmentation data: 1b + Augmentation data: [01]b #... 00000014 00000010 00000018 FDE cie=00000000 pc=.* DW_CFA_remember_state diff --git a/gas/testsuite/gas/cfi/cfi.exp b/gas/testsuite/gas/cfi/cfi.exp index 21483b14e1f..eeb55109829 100644 --- a/gas/testsuite/gas/cfi/cfi.exp +++ b/gas/testsuite/gas/cfi/cfi.exp @@ -59,6 +59,8 @@ if [istarget "x86_64-*"] then { } elseif { [istarget "arm*-*"] || [istarget "xscale*-*"] } then { run_dump_test "cfi-arm-1" +} elseif { [istarget "mips*-*"] } then { + run_dump_test "cfi-mips-1" } else { return } -- 2.47.2