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] |
Other format: | [Raw text] |
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. Uros.
Attachment:
x86_ashl.diff.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |