diff options
author | Jakub Jelinek <jakub@redhat.com> | 2005-11-08 21:47:09 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2005-11-08 21:47:09 +0000 |
commit | 281a600fba9df97edfbeabae39f5b10ae3ab9186 (patch) | |
tree | 5952c77912f2e73a5e17c8a52b74642b20859855 | |
parent | 2ca394f1adf0702d414de0d31651156e01414e6a (diff) |
* dwarf2out.c (multiple_reg_loc_descriptor): Don't assume
DBX_REGISTER_NUMBER being contiguous.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@106658 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/dwarf2out.c | 8 |
2 files changed, 11 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5d6bfe6aec6..5e86d193a40 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-11-08 Jakub Jelinek <jakub@redhat.com> + + * dwarf2out.c (multiple_reg_loc_descriptor): Don't assume + DBX_REGISTER_NUMBER being contiguous. + 2005-11-08 James A. Morrison <phython@gcc.gnu.org> Diego Novillo <dnovillo@redhat.com> diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index d0520b5811f..4cdb480a6e8 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -8536,7 +8536,11 @@ multiple_reg_loc_descriptor (rtx rtl, rtx regs) unsigned reg; dw_loc_descr_ref loc_result = NULL; - reg = dbx_reg_number (rtl); + reg = REGNO (rtl); +#ifdef LEAF_REG_REMAP + reg = LEAF_REG_REMAP (reg); +#endif + gcc_assert ((unsigned) DBX_REGISTER_NUMBER (reg) == dbx_reg_number (rtl)); nregs = hard_regno_nregs[REGNO (rtl)][GET_MODE (rtl)]; /* Simple, contiguous registers. */ @@ -8549,7 +8553,7 @@ multiple_reg_loc_descriptor (rtx rtl, rtx regs) { dw_loc_descr_ref t; - t = one_reg_loc_descriptor (reg); + t = one_reg_loc_descriptor (DBX_REGISTER_NUMBER (reg)); add_loc_descr (&loc_result, t); add_loc_descr_op_piece (&loc_result, size); ++reg; |