diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-07-11 19:30:56 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-07-11 19:30:56 +0000 |
commit | 559e966b0d135d4c8ae5904d5cd206a2487f0fdd (patch) | |
tree | 265c21b5e028fad7b1f5c8a73b733d4ee8f96336 /gcc/dwarf2out.h | |
parent | 9b4d7ff5f3329137f5fef1c0702d76d80e86fcdc (diff) | |
download | gcc-559e966b0d135d4c8ae5904d5cd206a2487f0fdd.tar.gz |
* dwarf2cfi.c (DW_STACK_POINTER_REGNUM): New.
(DW_FRAME_POINTER_REGNUM): New.
(expand_builtin_init_dwarf_reg_sizes): Use unsigned for rnum.
(def_cfa_1): Do not convert reg to DWARF_FRAME_REGNUM here.
(dwf_regno): New.
(dwarf2out_flush_queued_reg_saves, dwarf2out_frame_debug_def_cfa,
dwarf2out_frame_debug_adjust_cfa, dwarf2out_frame_debug_cfa_register,
dwarf2out_frame_debug_cfa_expression, dwarf2out_frame_debug_expr):
Use it.
* dwarf2out.c (based_loc_descr): Use dwarf_frame_regnum.
* dwarf2out.h (dwarf_frame_regnum): New.
(struct cfa_loc): Document the domain of the reg member.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176178 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/dwarf2out.h')
-rw-r--r-- | gcc/dwarf2out.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/dwarf2out.h b/gcc/dwarf2out.h index d41453bacea..912a100153a 100644 --- a/gcc/dwarf2out.h +++ b/gcc/dwarf2out.h @@ -121,6 +121,7 @@ dw_fde_node; typedef struct cfa_loc { HOST_WIDE_INT offset; HOST_WIDE_INT base_offset; + /* REG is in DWARF_FRAME_REGNUM space, *not* normal REGNO space. */ unsigned int reg; BOOL_BITFIELD indirect : 1; /* 1 if CFA is accessed via a dereference. */ BOOL_BITFIELD in_use : 1; /* 1 if a saved cfa is stored here. */ @@ -261,6 +262,15 @@ extern void dwarf2out_set_demangle_name_func (const char *(*) (const char *)); extern void dwarf2out_vms_debug_main_pointer (void); #endif +/* Unfortunately, DWARF_FRAME_REGNUM is not universally defined in such a + way as to force an unsigned return type. Do that via inline wrapper. */ + +static inline unsigned +dwarf_frame_regnum (unsigned regnum) +{ + return DWARF_FRAME_REGNUM (regnum); +} + struct array_descr_info { int ndimensions; |