Re: [PATCH][AARCH64]combine "ubfiz" and "orr" with bfi when certain condition meets.

2014-03-24 Thread Renlin Li
On 17/03/14 10:27, Richard Earnshaw wrote: On 16/03/14 12:30, Renlin Li wrote: Hi all, Thank you for your suggestions, Richard. I have updated the patch accordingly. This is an optimization patch which will combine "ubfiz" and "orr" insns with a single "bfi" when certain conditions meet. tmp

Re: [PATCH][AARCH64]combine "ubfiz" and "orr" with bfi when certain condition meets.

2014-03-17 Thread Richard Earnshaw
On 16/03/14 12:30, Renlin Li wrote: > Hi all, > > Thank you for your suggestions, Richard. I have updated the patch > accordingly. > > This is an optimization patch which will combine "ubfiz" and "orr" > insns with a single "bfi" when certain conditions meet. > > tmp = (x & m) | ( (y & n) <<

[PATCH][AARCH64]combine "ubfiz" and "orr" with bfi when certain condition meets.

2014-03-16 Thread Renlin Li
Hi all, Thank you for your suggestions, Richard. I have updated the patch accordingly. This is an optimization patch which will combine "ubfiz" and "orr" insns with a single "bfi" when certain conditions meet. tmp = (x & m) | ( (y & n) << lsb) can be presented using and tmp, x, m

Re: [PATCH][AARCH64]combine "ubfiz" and "orr" with bfi when certain condition meets.

2014-02-25 Thread Richard Henderson
On 02/25/2014 07:56 AM, Renlin Li wrote: > +(define_insn_and_split "*combine_bfi3" > + [(set (match_operand:GPI 0 "register_operand" "=r") > +(ior:GPI (and:GPI (match_operand:GPI 1 "register_operand" "0") > + (match_operand 2 "const_int_operand" "n")) > +

[PATCH][AARCH64]combine "ubfiz" and "orr" with bfi when certain condition meets.

2014-02-25 Thread Renlin Li
Hi all, This is an optimization patch which will combine "ubfiz" and "orr" insns with a single "bfi" when certain conditions meet. tmp = (x & m) | ( (y & n) << lsb) can be presented using and tmp, x, m bfi tmp, y, #lsb, #width if ((n+1) == 2^width) && (m & n << lsb) == 0. The origi