From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2066) id B107F3851C2F; Wed, 27 May 2020 02:23:04 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B107F3851C2F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1590546184; bh=fxGLaf7AeY+u0jZqjAd2QV58lR4jNvPWZbBlkDIeyHM=; h=From:To:Subject:Date:From; b=NAB2TzxMPdxXntSghw2tPkYxHBOpztePUxsOqInYxzdlPkBAwrQsMvZIYVzHNNn17 c3jeWQjpKsFNO+iJysqJdMUhumRASGuThtMT3XeQnELOl0usOQZNxD5kVNS7SphEVt GYCjqScsj+nB9dzLe38zfJIWZpPSMLR41Orn2/Lo= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Jiu Fu Guo To: gcc-cvs@gcc.gnu.org Subject: [gcc/guojiufu/heads/guojiufu-branch] Daily bump. X-Act-Checkin: gcc X-Git-Author: Jiu Fu Guo X-Git-Refname: refs/users/guojiufu/heads/guojiufu-branch X-Git-Oldrev: 21dd679386cbb5ce311996967454a38d543a09a9 X-Git-Newrev: 03d549090e3551eb3c4a41a5d63a76cff7112c7b Message-Id: <20200527022304.B107F3851C2F@sourceware.org> Date: Wed, 27 May 2020 02:23:04 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 May 2020 02:23:04 -0000 The branch 'guojiufu/heads/guojiufu-branch' was updated to point to: 03d549090e3... Daily bump. It previously pointed to: 21dd679386c... explicit -funroll-loops override -frtl-unroll-loops Diff: !!! WARNING: THE FOLLOWING COMMITS ARE NO LONGER ACCESSIBLE (LOST): ------------------------------------------------------------------- 21dd679... explicit -funroll-loops override -frtl-unroll-loops fcd6f0b... rs6000: Turn on -frtl-unroll-loops instead -funroll-loops a bba13d4... Seperate -funroll-loops for GIMPLE unroller and RTL unrolle commit 21dd679386cbb5ce311996967454a38d543a09a9 Author: Jiufu Guo Date: Mon May 25 18:20:27 2020 +0800 explicit -funroll-loops override -frtl-unroll-loops commit fcd6f0b6ca3b4febed9db8b33cd1556a6d853e58 Author: guojiufu Date: Mon May 25 14:33:06 2020 +0800 rs6000: Turn on -frtl-unroll-loops instead -funroll-loops at -O2 Previously, turning -funroll-loops on at -O2, which also turn on GIMPLE cunroll fully. While cunroll unrolls some complex loops. This patch turn on -frtl-unroll-loops at -O2 only, and continue to use previous tuned rs6000 heurisitics for small loops. While this patch does not turn on GIMPLE cunroll any more. We may tune cunroll in near future at -O2. In this patch, it become simpler to check/set -fweb, -frename-register and -munroll-only-small-loops. Together with -frtl-unroll-loops, -fweb is useful, then turn -fweb on; and -frename-registers is no need to be checked, because it is affected by -frtl-unroll-loops. gcc/ChangeLog 2020-05-25 Jiufu Guo PR target/95018 * common/config/rs6000/rs6000-common.c (rs6000_option_optimization_table) [OPT_LEVELS_2_PLUS_SPEED_ONLY]: Replace -funroll-loops with -frtl-unroll-loops. Remove -munroll-only-small-loops and add -fweb. [OPT_LEVELS_ALL]: Remove turn off -frename-registers. * config/rs6000/rs6000.c (rs6000_option_override_internal): Set -munroll-only-small-loops for explicit -funroll-loops. commit bba13d442dda7fa416003bbbea51fc887b6cf30a Author: guojiufu Date: Mon May 25 13:22:27 2020 +0800 Seperate -funroll-loops for GIMPLE unroller and RTL unroller Currently option -funroll-loops controls both GIMPLE unroler and RTL unroller. It is not able to control GIMPLE cunroller and RTL unroller independently. This patch introducing different flags to control them seperately, and this also provide more freedom to tune one of them without affecting another. This patch introduces two undocumented flags: -fcomplete-unroll-loops for GIMPLE cunroll, and -frtl-unroll-loops for RTL unroller. And these two options are enabled by original -funroll-loops. ChangeLog: 2020-05-25 Jiufu Guo * common.opt: Add -frtl-unroll-loops and -fcomplete-unroll-loops. * opts.c (enable_fdo_optimizations): Replace flag_unroll_loops with flag_complete_unroll_loops. * toplev.c (process_options): set flag_rtl_unroll_loops and flag_complete_unroll_loops if not explicitly set by user. * tree-ssa-loop-ivcanon.c (pass_complete_unroll::execute): Replace flag_unroll_loops with flag_complete_unroll_loops. * loop-init.c (pass_loop2::gate): Replace flag_unroll_loops with flag_rtl_unroll_loops. (pass_rtl_unroll_loops::gate): Replace flag_unroll_loops with flag_rtl_unroll_loops.