[llvm-commits] [llvm] r142152 - in /llvm/trunk: lib/CodeGen/SelectionDAG/ test/CodeGen/ARM/ test/CodeGen/CellSPU/ test/CodeGen/X86/

Rotem, Nadav nadav.rotem at intel.com
Mon Oct 17 13:41:41 PDT 2011


Kalle, 

You can disable this feature by setting the llc flag '-promote-elements=false'. I noticed that the SPU backend does not implement the vector SHL operation properly which makes SIGN_EXTEND_INREG very inefficient. Any chance that you fix this ?
 
Thanks,
Nadav

-----Original Message-----
From: Kalle Raiskila [mailto:kalle.raiskila at nokia.com] 
Sent: Monday, October 17, 2011 12:11
To: Rotem, Nadav
Cc: llvm-commits at cs.uiuc.edu
Subject: Re: [llvm-commits] [llvm] r142152 - in /llvm/trunk: lib/CodeGen/SelectionDAG/ test/CodeGen/ARM/ test/CodeGen/CellSPU/ test/CodeGen/X86/

On 16/10/11 23:31, ext Nadav Rotem wrote:
> Author: nadav
> Date: Sun Oct 16 15:31:33 2011
> New Revision: 142152
>
> URL: http://llvm.org/viewvc/llvm-project?rev=142152&view=rev
> Log:
> Enable element promotion type legalization by deafault.
> Changed tests which assumed that vectors are legalized by widening them.

How does one disable this per instruction/vectortype/backend?

Because e.g. the runtime of this:

>   define %vec @test_add(%vec %param)
>   {
> -;CHECK: a {{\$.}}, $3, $3
> +;CHECK: shufb
> +;CHECK: addx
>     %1 = add %vec %param, %param
>   ;CHECK: bi $lr
>     ret %vec %1
> @@ -17,21 +18,14 @@

increased from 2 to 12 cycles when %vec is <2 x i32>

thanks,
kalle
---------------------------------------------------------------------
Intel Israel (74) Limited

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.





More information about the llvm-commits mailing list