https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97421
--- Comment #10 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The releases/gcc-8 branch has been updated by Roman Zhuykov <zhr...@gcc.gnu.org>: https://gcc.gnu.org/g:2850df4edce86b13d503e5bf636a874fb21198fc commit r8-10694-g2850df4edce86b13d503e5bf636a874fb21198fc Author: Roman Zhuykov <zhr...@ispras.ru> Date: Thu Dec 24 19:40:07 2020 +0300 modulo-sched: Carefully process loop counter initialization [PR97421] Do not allow direct adjustment of pre-header initialization instruction for count register if is read in some instruction below in that basic block. gcc/ChangeLog: PR rtl-optimization/97421 * modulo-sched.c (generate_prolog_epilog): Remove forward declaration, adjust last argument name and type. (const_iteration_count): Add bool pointer parameter to return whether count register is read in pre-header after its initialization. (sms_schedule): Fix count register initialization adjustment procedure according to what const_iteration_count said. gcc/testsuite/ChangeLog: PR rtl-optimization/97421 * gcc.c-torture/execute/pr97421-1.c: New test. * gcc.c-torture/execute/pr97421-2.c: New test. * gcc.c-torture/execute/pr97421-3.c: New test. (cherry picked from commit 4eb8f93d026eaa1de9b4820337069f3ce3465cd0)