This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [patch] h8300.c: Improve shifts.



  In message <20000811141337.A32308@cygnus.com>you write:
  > On Fri, Aug 11, 2000 at 02:58:51PM -0600, Jeffrey A Law wrote:
  > > Kazu is generating a loop for the n << m part -- the oods that we're
  > > going to be able to fold things are pretty slim when we generate a loop
  > > for such stuff.
  > 
  > You probably don't want to have the loop in rtl until at least sched1.
  > Letting cse/combine do constant substitution is more valuable I would
  > think.
FWIW, we don't schedule on this port anyway :-)  Really the only benefit
of exposing the loop is register allocation issues, but we might be able
to get the same benefit by doing something like this in the expander:

new_reg = gen_reg_rtx (QImode)
emit_move_insn (new_reg, count reg)

Then use new reg for the loop counter.

In the pattern we change the scratch register to be a clobbered match_dup
of the count register.


Or we can try to split it from a single insn into a loop between combine
and register allocation.  Though that's going to create new basic blocks...

jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]