diff options
author | Jakub Jelinek <jakub@redhat.com> | 2009-10-02 11:33:50 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2009-10-02 11:33:50 +0000 |
commit | 38462edfa268c245acf1f53f65cf3e4c0772e2cd (patch) | |
tree | 1aaa1096de6406280db826a1f5808f72283f9a58 /gas/config/tc-ppc.h | |
parent | a263f14bb3c96360f3ed7898ffcde64d9f2f32e0 (diff) | |
download | gdb-38462edfa268c245acf1f53f65cf3e4c0772e2cd.zip gdb-38462edfa268c245acf1f53f65cf3e4c0772e2cd.tar.gz gdb-38462edfa268c245acf1f53f65cf3e4c0772e2cd.tar.bz2 |
* dw2gencfi.c: Include dwarf2dbg.h.
(DWARF2_FORMAT): Define if not defined.
(dot_cfi_sections): New function.
(cfi_pseudo_table): Handle .cfi_sections.
(CFI_EMIT_eh_frame, CFI_EMIT_debug_frame): Define.
(cfi_sections): New variable.
(output_cie, output_fde, select_cie_for_fde): Add eh_frame
argument, add supporting for outputting .debug_frame
section.
(cfi_change_reg_numbers): New function or macro.
(cfi_finish): Only emit .eh_frame if
cfi_sections & CFI_EMIT_eh_frame. Emit .debug_frame if
cfi_sections & CFI_EMIT_debug_frame.
* config/tc-ppc.h (md_reg_eh_frame_to_debug_frame): Define.
* doc/as.texinfo (CFI directives): Document .cfi_sections.
Diffstat (limited to 'gas/config/tc-ppc.h')
-rw-r--r-- | gas/config/tc-ppc.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gas/config/tc-ppc.h b/gas/config/tc-ppc.h index 37de84e..be474bd 100644 --- a/gas/config/tc-ppc.h +++ b/gas/config/tc-ppc.h @@ -249,6 +249,12 @@ extern int ppc_parse_name (const char *, struct expressionS *); #define md_cleanup() ppc_cleanup () extern void ppc_cleanup (void); +/* ppc uses different register numbers between .eh_frame and .debug_frame. + This macro translates the .eh_frame register numbers to .debug_frame + register numbers. */ +#define md_reg_eh_frame_to_debug_frame(regno) \ + ((regno) == 70 ? 64 /* cr2 */ : (regno)) + #define TARGET_USE_CFIPOP 1 #define tc_cfi_frame_initial_instructions ppc_cfi_frame_initial_instructions |