Hi Bill,

This is not enough context to reproduce this issue.  Can you please  
include more in the .ll file?  Specifically, the movswl wouldn't  
exist if "tmp654" weren't live out I hope.  It would be best if  
the .ll fragments were actually compilable.

-Chris

On Oct 2, 2007, at 2:49 PM, Bill Wendling wrote:

> Author: void
> Date: Tue Oct  2 16:49:31 2007
> New Revision: 42554
>
> URL: http://llvm.org/viewvc/llvm-project?rev=42554&view=rev
> Log:
> Another micro-opt.
>
> Modified:
>     llvm/trunk/lib/Target/X86/README.txt
>
> Modified: llvm/trunk/lib/Target/X86/README.txt
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/ 
> README.txt?rev=42554&r1=42553&r2=42554&view=diff
>
> ====================================================================== 
> ========
> --- llvm/trunk/lib/Target/X86/README.txt (original)
> +++ llvm/trunk/lib/Target/X86/README.txt Tue Oct  2 16:49:31 2007
> @@ -1306,3 +1306,19 @@
>          movl      88(%esp), %eax                                 
> #481.12
>
>  // 
> ===------------------------------------------------------------------- 
> --===//
> +
> +This code:
> +
> +     %tmp659 = icmp slt i16 %tmp654, 0               ; <i1> [#uses=1]
> +     br i1 %tmp659, label %cond_true662, label %cond_next715
> +
> +produces this:
> +
> +     testw   %cx, %cx
> +     movswl  %cx, %esi
> +     jns     LBB4_109        # cond_next715
> +
> +Shark tells us that using %cx in the testw instruction is sub- 
> optimal. It
> +suggests using the 32-bit register (which is what ICC uses).
> +
> +// 
> ===------------------------------------------------------------------- 
> --===//
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits@cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to