http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47324
--- Comment #18 from Jack Howarth <howarth at nitro dot med.uc.edu> 2011-02-09 02:03:46 UTC --- It may be... --- trunk/gcc/dwarf2out.c 2010/03/26 19:21:13 157761 +++ trunk/gcc/dwarf2out.c 2010/03/26 20:53:58 157762 @@ -1115,8 +1115,8 @@ && sreg == INVALID_REGNUM) { cfi->dw_cfi_opc = DW_CFA_expression; - cfi->dw_cfi_oprnd2.dw_cfi_reg_num = reg; - cfi->dw_cfi_oprnd1.dw_cfi_loc + cfi->dw_cfi_oprnd1.dw_cfi_reg_num = reg; + cfi->dw_cfi_oprnd2.dw_cfi_loc = build_cfa_aligned_loc (offset, fde->stack_realignment); } else if (sreg == INVALID_REGNUM) a cursory examination of dwarf2out.c shows that the calls of DWARF2_FRAME_REG_OUT are related to either dw_cfi_oprnd1 or dw_cfi_oprnd2 depending on the location. I don't see changes associated to r157762 making sure that the existing DWARF2_FRAME_REG_OUT calls were corrected for the reversal of the operands.