This is the mail archive of the
mailing list for the GCC project.
Re: [patch i386]: Combine memory and indirect jump
- From: Jeff Law <law at redhat dot com>
- To: Richard Henderson <rth at redhat dot com>, Kai Tietz <ktietz70 at googlemail dot com>, Steven Bosscher <stevenb dot gcc at gmail dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 13 Jun 2014 09:58:28 -0600
- Subject: Re: [patch i386]: Combine memory and indirect jump
- Authentication-results: sourceware.org; auth=none
- References: <CAEwic4brJeBvoe+J5ss=Qo+=qoo-=2nV0FnjdUxBhm-fV4aqeQ at mail dot gmail dot com> <CABu31nNwUoLaAo0QcD-3O1QYhBWpLsYuH0cMS-XOgz2W+8KMAA at mail dot gmail dot com> <CAEwic4Zwd4HECD+kxtkouyA3Urbyzh2NFar7kZ5XLdNnUK9w6A at mail dot gmail dot com> <CAEwic4anzQysfHqfQGgKF_Hu-c_hLY+mkWr2CzERVe=gQ5AWRw at mail dot gmail dot com> <539B1A7F dot 8020200 at redhat dot com> <539B1F1E dot 3000809 at redhat dot com>
On 06/13/14 09:56, Richard Henderson wrote:
On 06/13/2014 08:36 AM, Jeff Law wrote:
So you may have answered this already, but why can't this be a combiner pattern?
Until pass_duplicate_computed_gotos, we (intentionally) have a single indirect
branch in the entire function. This vastly reduces the size of the CFG.
Ah, the factoring bits. Should have known.
Peep2 is currently running before d_c_g, so currently Kai can't solve this
problem in peep2.
I don't think peep2 should run after sched2, but I'll bet we can reorder things
a bit so that d_c_g runs before peep2.
Yea, seems worth a try.