From: Jakub Jelinek Date: Tue, 3 May 2011 16:35:56 +0000 (+0200) Subject: backport: re PR middle-end/48597 (x86-64 unwind register save location misses half... X-Git-Tag: releases/gcc-4.5.4~667 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=77419b99fbb23876b206d221706cd02709e02aa3;p=thirdparty%2Fgcc.git backport: re PR middle-end/48597 (x86-64 unwind register save location misses half-register write?) Backport from mainline 2011-04-28 Jakub Jelinek PR middle-end/48597 * final.c (final_scan_insn): Call dwarf2out_frame_debug even for inline asm. From-SVN: r173327 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1e4307dc13d3..1c1cbaad7b16 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,6 +1,12 @@ 2011-05-03 Jakub Jelinek Backport from mainline + 2011-04-28 Jakub Jelinek + + PR middle-end/48597 + * final.c (final_scan_insn): Call dwarf2out_frame_debug even for + inline asm. + 2011-04-27 Jakub Jelinek PR c/48742 diff --git a/gcc/final.c b/gcc/final.c index e2b7461bbbea..a6d41b79f772 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -2241,6 +2241,11 @@ final_scan_insn (rtx insn, FILE *file, int optimize ATTRIBUTE_UNUSED, location_t loc; expanded_location expanded; + /* Make sure we flush any queued register saves in case this + clobbers affected registers. */ + if (dwarf2out_do_frame ()) + dwarf2out_frame_debug (insn, false); + /* There's no telling what that did to the condition codes. */ CC_STATUS_INIT;