[ARM] Adjust how NEON shifts are lowered
[llvm-core.git] / test / CodeGen / X86 / opt-ext-uses.ll
blob49429b258a29fd9240618629a2e53923caa104ad
1 ; RUN: llc < %s -mtriple=i686-- | FileCheck %s
3 ; This test should get one and only one register to register mov.
4 ; CHECK-LABEL: t:
5 ; CHECK:     movl
6 ; CHECK-NOT: mov
7 ; CHECK:     ret
9 define signext i16 @t()   {
10 entry:
11         %tmp180 = load i16, i16* null, align 2               ; <i16> [#uses=3]
12         %tmp180181 = sext i16 %tmp180 to i32            ; <i32> [#uses=1]
13         %tmp182 = add i16 %tmp180, 10
14         %tmp185 = icmp slt i16 %tmp182, 0               ; <i1> [#uses=1]
15         br i1 %tmp185, label %cond_true188, label %cond_next245
17 cond_true188:           ; preds = %entry
18         %tmp195196 = trunc i16 %tmp180 to i8            ; <i8> [#uses=0]
19         ret i16 %tmp180
21 cond_next245:           ; preds = %entry
22         %tmp256 = and i32 %tmp180181, 15                ; <i32> [#uses=0]
23         %tmp3 = trunc i32 %tmp256 to i16
24         ret i16 %tmp3