This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, i386]: Macroize ashl patterns.
On Fri, Apr 9, 2010 at 5:26 AM, Uros Bizjak <ubizjak@gmail.com> wrote:
> Hello!
>
> As a consequence, we now also split TYPE_LEA DImode shifts to leaq in
> the same way as SImode shifts.
>
> Otherwise, nothing exciting here.
>
> 2010-04-09 ?Uros Bizjak ?<ubizjak@gmail.com>
>
> ? ? ? ?* config/i386/i386.md (DWI): New mode iterator.
> ? ? ? ?(S): New mode attribute.
> ? ? ? ?(shift_operand): Ditto.
> ? ? ? ?(shift_immediate_operand): Ditto.
> ? ? ? ?(ashl_input_operand): Ditto.
> ? ? ? ?(ashl<mode>3): Macroize expander from ashl{qi,hi,si,di,ti}3_1
> ? ? ? ?using SDWIM mode iterator.
> ? ? ? ?(*ashl<mode>3_doubleword): New insn_and_split_pattern. ?Macroize
> ? ? ? ?pattern from *ashl{di,ti}3_1 and corresponding splitters using
> ? ? ? ?DWI mode iterator.
> ? ? ? ?(*ashl<mode>3_doubleword peephole2): Macroize peephole2 pattern
> ? ? ? ?from corresponding peephole2 patterns.
> ? ? ? ?(x86_shift<mode>_adj_1): Macroize expander from x86_shift_adj_1
> ? ? ? ?and x86_64_shift_adj_1 using SWI48 mode iterator.
> ? ? ? ?(x86_shift<mode>_adj_2): Ditto.
> ? ? ? ?(*ashldi3_1_rex64): Split TYPE_LEA pattern.
> ? ? ? ?(*ashl<mode>3_1): Macroize insn from *ashlsi3_1 and *ashldi3_1_rex64
> ? ? ? ?using SWI48 mode iterator.
> ? ? ? ?(*ashl<mode>3_cmp): Macroize insn from *ashl{qi,hi,si}3_cmp and
> ? ? ? ?*ashldi3_cmp_rex64 using SWI mode iterator.
> ? ? ? ?(*ashl<mode>3_cconly): Macroize insn from *ashl{qi,hi,si}3_cconly and
> ? ? ? ?*ashldi3_cconly_rex64 using SWI mode iterator.
> ? ? ? ?* config/i386/i386.c (ix86_split_ashl): Update for renamed
> ? ? ? ?x86_shift<mode>_adj_{1,2}.
> ? ? ? ?(ix86_split_ashr): Ditto.
> ? ? ? ?(ix86_split_lshr): Ditto.
>
> Tested on x86_64-pc-linux-gnu {,-m32}. Will be committed to mainline soon.
>
This may have caused:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43709
--
H.J.