Fix a broadcast related regression on the vector shuffle lowering.
[oota-llvm.git] / test / CodeGen / X86 / extend.ll
index fdad79076422d66d0c3e728bf1fb418241c80dc1..9553b1b578b15d509749d2127ed8249c5c6769aa 100644 (file)
@@ -1,19 +1,18 @@
-; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | grep movzx | wc -l | grep 1
-; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | grep movsx | wc -l | grep 1
+; RUN: llc < %s -march=x86 -x86-asm-syntax=intel | grep movzx | count 1
+; RUN: llc < %s -march=x86 -x86-asm-syntax=intel | grep movsx | count 1
 
-%G1 = internal global ubyte 0          ; <ubyte*> [#uses=1]
-%G2 = internal global sbyte 0          ; <sbyte*> [#uses=1]
+@G1 = internal global i8 0              ; <i8*> [#uses=1]
+@G2 = internal global i8 0              ; <i8*> [#uses=1]
 
-implementation   ; Functions:
-
-short %test1() {  ;; one zext
-       %tmp.0 = load ubyte* %G1                ; <ubyte> [#uses=1]
-       %tmp.3 = cast ubyte %tmp.0 to short             ; <short> [#uses=1]
-       ret short %tmp.3
+define i16 @test1() {
+        %tmp.0 = load i8* @G1           ; <i8> [#uses=1]
+        %tmp.3 = zext i8 %tmp.0 to i16          ; <i16> [#uses=1]
+        ret i16 %tmp.3
 }
 
-short %test2() {  ;; one sext
-       %tmp.0 = load sbyte* %G2                ; <sbyte> [#uses=1]
-       %tmp.3 = cast sbyte %tmp.0 to short             ; <short> [#uses=1]
-       ret short %tmp.3
+define i16 @test2() {
+        %tmp.0 = load i8* @G2           ; <i8> [#uses=1]
+        %tmp.3 = sext i8 %tmp.0 to i16          ; <i16> [#uses=1]
+        ret i16 %tmp.3
 }
+