> This is interesting.  I've quickly tried it out on the SH port.  It can be
> accomplished with the combine pass, although there are a few things that
> should be taken care of:
> - an "extendsidi2" pattern is required (so that the extension is not
>   performed before expand)
> ...
> One potential pitfall might be the handling of a real "reg:DI << reg:DI"
> if there are no patterns already there that handle it (as it is the case for 
> the
> SH port).  If I observed correctly, the "ashldi3" expander must not FAIL for a
> "reg:DI << reg:DI" (to do a lib call), or else combine would not arrive at the
> pattern above.
> 
> Hope this helps.

Thanks Oleg, these were the bits I hadn't figured out. 

Cheers,
Jon


Reply via email to