From: Max Filippov Date: Tue, 30 May 2017 23:41:58 +0000 (+0000) Subject: xtensa: Fix PR target/78603 X-Git-Tag: releases/gcc-5.5.0~233 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fd5d7a625565759b4ed9468378b69a195d26132a;p=thirdparty%2Fgcc.git xtensa: Fix PR target/78603 2017-05-30 Max Filippov gcc/ Backport from mainline 2016-11-29 Max Filippov * config/xtensa/xtensa.c (hwloop_optimize): Don't emit zero overhead loop start between a call and its CALL_ARG_LOCATION note. From-SVN: r248708 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a342215ce170..4278b371b2ce 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2017-05-30 Max Filippov + + Backport from mainline + 2016-11-29 Max Filippov + + * config/xtensa/xtensa.c (hwloop_optimize): Don't emit zero + overhead loop start between a call and its CALL_ARG_LOCATION + note. + 2017-05-30 Max Filippov Backport from mainline diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c index 0aa6a0a81752..1e9ab05fca1f 100644 --- a/gcc/config/xtensa/xtensa.c +++ b/gcc/config/xtensa/xtensa.c @@ -4165,7 +4165,10 @@ hwloop_optimize (hwloop_info loop) entry_after = BB_END (entry_bb); while (DEBUG_INSN_P (entry_after) || (NOTE_P (entry_after) - && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK)) + && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK + /* Make sure we don't split a call and its corresponding + CALL_ARG_LOCATION note. */ + && NOTE_KIND (entry_after) != NOTE_INSN_CALL_ARG_LOCATION)) entry_after = PREV_INSN (entry_after); emit_insn_after (seq, entry_after);