diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index ad7cc260d91..bcefebb84dd 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,8 @@ +2012-03-13 H.J. Lu + + * unwind-dw2.c (_Unwind_SetGRValue): Assert DWARF register size + <= saved reg size. + 2012-03-13 Rainer Orth * config/arm/crtn.S: Fix typo. diff --git a/libgcc/unwind-dw2.c b/libgcc/unwind-dw2.c index 475ad00bf52..d1c62eef153 100644 --- a/libgcc/unwind-dw2.c +++ b/libgcc/unwind-dw2.c @@ -294,7 +294,8 @@ _Unwind_SetGRValue (struct _Unwind_Context *context, int index, { index = DWARF_REG_TO_UNWIND_COLUMN (index); gcc_assert (index < (int) sizeof(dwarf_reg_size_table)); - gcc_assert (dwarf_reg_size_table[index] == sizeof (_Unwind_Context_Reg_Val)); + /* Return column size may be smaller than _Unwind_Context_Reg_Val. */ + gcc_assert (dwarf_reg_size_table[index] <= sizeof (_Unwind_Context_Reg_Val)); context->by_value[index] = 1; context->reg[index] = _Unwind_Get_Unwind_Context_Reg_Val (val);