[X86][SSE] Added full set of 128-bit vector shift tests.
[oota-llvm.git] / test / CodeGen / X86 / ins_subreg_coalesce-3.ll
index 3213723db0e5165e7729690843d5ca874f40f06a..71890bc23b6132f9cc33dd5f451152feda206ef6 100644 (file)
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | llc -march=x86-64 | grep mov | count 11
+; RUN: llc < %s -march=x86-64 | grep mov | count 3
 
        %struct.COMPOSITE = type { i8, i16, i16 }
        %struct.FILE = type { i8*, i32, i32, i16, i16, %struct.__sbuf, i32, i8*, i32 (i8*)*, i32 (i8*, i8*, i32)*, i64 (i8*, i64, i32)*, i32 (i8*, i8*, i32)*, %struct.__sbuf, %struct.__sFILEX*, i32, [3 x i8], [1 x i8], %struct.__sbuf, i32, i64 }
@@ -35,16 +35,15 @@ bb428:              ; preds = %bb366, %bb304
 bb433:         ; preds = %bb428
        ret void
 bb650:         ; preds = %bb650, %bb428
-       %tmp658 = load i8* null, align 8                ; <i8> [#uses=1]
+       %tmp658 = load i8, i8* null, align 8            ; <i8> [#uses=1]
        %tmp659 = icmp eq i8 %tmp658, 0         ; <i1> [#uses=1]
        br i1 %tmp659, label %bb650, label %bb662
 bb662:         ; preds = %bb650
-       %tmp685 = icmp eq %struct.rec* null, null               ; <i1> [#uses=1]
-       br i1 %tmp685, label %bb761, label %bb688
+       br label %bb761
 bb688:         ; preds = %bb662
        ret void
 bb761:         ; preds = %bb662
-       %tmp487248736542 = load i32* null, align 4              ; <i32> [#uses=2]
+       %tmp487248736542 = load i32, i32* null, align 4         ; <i32> [#uses=2]
        %tmp487648776541 = and i32 %tmp487248736542, 57344              ; <i32> [#uses=1]
        %tmp4881 = icmp eq i32 %tmp487648776541, 8192           ; <i1> [#uses=1]
        br i1 %tmp4881, label %bb4884, label %bb4897
@@ -55,10 +54,10 @@ bb4884:             ; preds = %bb761
 bb4897:                ; preds = %bb4884, %bb761
        ret void
 bb4932:                ; preds = %bb4884
-       %tmp4933 = load i32* null, align 4              ; <i32> [#uses=1]
+       %tmp4933 = load i32, i32* null, align 4         ; <i32> [#uses=1]
        br i1 %foo, label %bb5054, label %bb4940
 bb4940:                ; preds = %bb4932
-       %tmp4943 = load i32* null, align 4              ; <i32> [#uses=2]
+       %tmp4943 = load i32, i32* null, align 4         ; <i32> [#uses=2]
        switch i32 %tmp4933, label %bb5054 [
                 i32 159, label %bb4970
                 i32 160, label %bb5002
@@ -67,11 +66,11 @@ bb4970:             ; preds = %bb4940
        %tmp49746536 = trunc i32 %tmp4943 to i16                ; <i16> [#uses=1]
        %tmp49764977 = and i16 %tmp49746536, 4095               ; <i16> [#uses=1]
        %mask498049814982 = zext i16 %tmp49764977 to i64                ; <i64> [#uses=1]
-       %tmp4984 = getelementptr %struct.FONT_INFO* null, i64 %mask498049814982, i32 5          ; <%struct.rec**> [#uses=1]
-       %tmp4985 = load %struct.rec** %tmp4984, align 8         ; <%struct.rec*> [#uses=1]
-       %tmp4988 = getelementptr %struct.rec* %tmp4985, i64 0, i32 0, i32 3             ; <%struct.THIRD_UNION*> [#uses=1]
+       %tmp4984 = getelementptr %struct.FONT_INFO, %struct.FONT_INFO* null, i64 %mask498049814982, i32 5               ; <%struct.rec**> [#uses=1]
+       %tmp4985 = load %struct.rec*, %struct.rec** %tmp4984, align 8           ; <%struct.rec*> [#uses=1]
+       %tmp4988 = getelementptr %struct.rec, %struct.rec* %tmp4985, i64 0, i32 0, i32 3                ; <%struct.THIRD_UNION*> [#uses=1]
        %tmp4991 = bitcast %struct.THIRD_UNION* %tmp4988 to i32*                ; <i32*> [#uses=1]
-       %tmp4992 = load i32* %tmp4991, align 8          ; <i32> [#uses=1]
+       %tmp4992 = load i32, i32* %tmp4991, align 8             ; <i32> [#uses=1]
        %tmp49924993 = trunc i32 %tmp4992 to i16                ; <i16> [#uses=1]
        %tmp4996 = add i16 %tmp49924993, 0              ; <i16> [#uses=1]
        br label %bb5054
@@ -79,11 +78,11 @@ bb5002:             ; preds = %bb4940
        %tmp50066537 = trunc i32 %tmp4943 to i16                ; <i16> [#uses=1]
        %tmp50085009 = and i16 %tmp50066537, 4095               ; <i16> [#uses=1]
        %mask501250135014 = zext i16 %tmp50085009 to i64                ; <i64> [#uses=1]
-       %tmp5016 = getelementptr %struct.FONT_INFO* null, i64 %mask501250135014, i32 5          ; <%struct.rec**> [#uses=1]
-       %tmp5017 = load %struct.rec** %tmp5016, align 8         ; <%struct.rec*> [#uses=1]
-       %tmp5020 = getelementptr %struct.rec* %tmp5017, i64 0, i32 0, i32 3             ; <%struct.THIRD_UNION*> [#uses=1]
+       %tmp5016 = getelementptr %struct.FONT_INFO, %struct.FONT_INFO* null, i64 %mask501250135014, i32 5               ; <%struct.rec**> [#uses=1]
+       %tmp5017 = load %struct.rec*, %struct.rec** %tmp5016, align 8           ; <%struct.rec*> [#uses=1]
+       %tmp5020 = getelementptr %struct.rec, %struct.rec* %tmp5017, i64 0, i32 0, i32 3                ; <%struct.THIRD_UNION*> [#uses=1]
        %tmp5023 = bitcast %struct.THIRD_UNION* %tmp5020 to i32*                ; <i32*> [#uses=1]
-       %tmp5024 = load i32* %tmp5023, align 8          ; <i32> [#uses=1]
+       %tmp5024 = load i32, i32* %tmp5023, align 8             ; <i32> [#uses=1]
        %tmp50245025 = trunc i32 %tmp5024 to i16                ; <i16> [#uses=1]
        %tmp5028 = sub i16 %tmp50245025, 0              ; <i16> [#uses=1]
        br label %bb5054