Hi, The patch fixes PR target/58423.
Bootstrap and no make check regression on Chromebook with ARM mode. Is it OK for trunk? Thanks! -Zhenqiang ChangeLog: 2013-09-23 Zhenqiang Chen <zhenqiang.c...@linaro.org> PR target/58423 * config/arm/arm.c (arm_emit_ldrd_pop): Attach RTX_FRAME_RELATED_P on INSN. --- clean-trunk/gcc/config/arm/arm.c 2013-09-17 14:29:45.632457018 +0800 +++ pr58423/gcc/config/arm/arm.c 2013-09-18 14:34:24.708892318 +0800 @@ -17645,8 +17645,8 @@ mem = gen_frame_mem (DImode, stack_pointer_rtx); tmp = gen_rtx_SET (DImode, gen_rtx_REG (DImode, j), mem); - RTX_FRAME_RELATED_P (tmp) = 1; tmp = emit_insn (tmp); + RTX_FRAME_RELATED_P (tmp) = 1; /* Generate dwarf info. */ @@ -17674,8 +17674,8 @@ mem = gen_frame_mem (SImode, stack_pointer_rtx); tmp = gen_rtx_SET (SImode, gen_rtx_REG (SImode, j), mem); - RTX_FRAME_RELATED_P (tmp) = 1; tmp = emit_insn (tmp); + RTX_FRAME_RELATED_P (tmp) = 1; /* Generate dwarf info. */ REG_NOTES (tmp) = alloc_reg_note (REG_CFA_RESTORE, @@ -17699,8 +17699,9 @@ plus_constant (Pmode, stack_pointer_rtx, offset)); - RTX_FRAME_RELATED_P (tmp) = 1; - emit_insn (tmp); + tmp = emit_insn (tmp); + arm_add_cfa_adjust_cfa_note (tmp, offset, + stack_pointer_rtx, stack_pointer_rtx); offset = 0; } @@ -17723,6 +17724,8 @@ gen_rtx_REG (SImode, PC_REGNUM), NULL_RTX); REG_NOTES (par) = dwarf; + arm_add_cfa_adjust_cfa_note (par, UNITS_PER_WORD, + stack_pointer_rtx, stack_pointer_rtx); } }