[PATCH, i386]: Optimize access to split_ti and split_di functions

Uros Bizjak ubizjak@gmail.com
Thu Apr 17 19:11:00 GMT 2008


Hello!

split_di and split_ti functions can operate on the array of operands. 
Attached patch optimizes access to these functions by passing arrays 
with multiple elements.  Also, operands were rearranged a bit in a 
couple of cases to better fit into arrays.  The patch also adopts the 
same style of pointer arguments through i386.md file.

2008-04-17  Uros Bizjak  <ubizjak@gmail.com>

        * config/i386/i386.md (addti3 splitter): Pass arrays of 3 operands
        to split_ti instead of three separate calls with single member 
arrays.
        (subti3 splitter): Ditto.
        (adddi3 splitter): Ditto with split_di.
        (subdi3 splitter): Ditto.
        (negti2 splitter): Pass arrays of 2 operands to split_ti instead of
        two separate calls with single member arrays.  Swap match_dup
        operands 1 and 2 to better fit into the array.
        (negdi2 splitter): Ditto with split_di.
        (movdfcc splitter):  Pass arrays of 2 operands to split_di 
instead of
        two separate calls with single member arrays.  Swap match_dup 
operands
        6 and 7 to better fit into the array.

Patch was bootstrapped and regression tested on i686-pc-linux-gnu and 
x86_64-pc-linux-gnu {,-m32}. Patch was committed to mainline.

Uros.
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: p.diff.txt
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20080417/d0e53b28/attachment.txt>


More information about the Gcc-patches mailing list