From 281a600fba9df97edfbeabae39f5b10ae3ab9186 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 8 Nov 2005 21:47:09 +0000 Subject: * 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 --- gcc/ChangeLog | 5 +++++ 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 + + * dwarf2out.c (multiple_reg_loc_descriptor): Don't assume + DBX_REGISTER_NUMBER being contiguous. + 2005-11-08 James A. Morrison Diego Novillo 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; -- cgit v1.2.3