summaryrefslogtreecommitdiff
path: root/gcc/dwarf2out.c
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2011-07-12 18:41:44 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2011-07-12 18:41:44 +0000
commit26a649ddccaf9a826cec8011682d9c8ba59c75b7 (patch)
tree7684869ecfa82f014ed7d97b3a98896445b71089 /gcc/dwarf2out.c
parent68495d8b3a8ce57b26e4458503d349c3c2fc5582 (diff)
downloadgcc-26a649ddccaf9a826cec8011682d9c8ba59c75b7.tar.gz
PR target/49713
* dwarf2out.h (dwarf_frame_regnum): Remove. * dwarf2out.c (based_loc_descr): Revert last change. Initialize regno earlier from DWARF_FRAME_REGNUM. Never use dbx_reg_number. * dwarf2cfi.c (dw_stack_pointer_regnum, dw_frame_pointer_regnum): New. (execute_dwarf2_frame): Initialize them. (DW_STACK_POINTER_REGNUM, DW_FRAME_POINTER_REGNUM): Remove; replace users of the macros with the variables. (expand_builtin_dwarf_sp_column): Revert last change. (expand_builtin_init_dwarf_reg_sizes): Likewise. Compute the result of DWARF_FRAME_REGNUM into a local variable. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176212 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/dwarf2out.c')
-rw-r--r--gcc/dwarf2out.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 835e4ecd884..8fdebc6b885 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -10406,10 +10406,11 @@ based_loc_descr (rtx reg, HOST_WIDE_INT offset,
return new_loc_descr (DW_OP_fbreg, offset, 0);
}
}
- else if (!optimize
- && fde
- && (fde->drap_reg == dwarf_frame_regnum (REGNO (reg))
- || fde->vdrap_reg == dwarf_frame_regnum (REGNO (reg))))
+
+ regno = DWARF_FRAME_REGNUM (REGNO (reg));
+
+ if (!optimize && fde
+ && (fde->drap_reg == regno || fde->vdrap_reg == regno))
{
/* Use cfa+offset to represent the location of arguments passed
on the stack when drap is used to align stack.
@@ -10420,7 +10421,6 @@ based_loc_descr (rtx reg, HOST_WIDE_INT offset,
return new_loc_descr (DW_OP_fbreg, offset, 0);
}
- regno = dbx_reg_number (reg);
if (regno <= 31)
result = new_loc_descr ((enum dwarf_location_atom) (DW_OP_breg0 + regno),
offset, 0);