[AVX512] Bring back vector-shuffle lowering support through broadcasts
[oota-llvm.git] / test / CodeGen / X86 / 2009-01-31-BigShift3.ll
1 ; RUN: llc < %s -march=x86
2 ; PR3450
3
4 target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128"
5 target triple = "i386-apple-darwin7"
6         %struct.BitMap = type { i8* }
7         %struct.BitMapListStruct = type { %struct.BitMap, %struct.BitMapListStruct*, %struct.BitMapListStruct* }
8         %struct.Material = type { float, float, float, %struct.Material*, %struct.Material* }
9         %struct.ObjPoint = type { double, double, double, double, double, double }
10         %struct.ObjectStruct = type { [57 x i8], %struct.PointListStruct*, %struct.Poly3Struct*, %struct.Poly4Struct*, %struct.Texture*, %struct.Material*, %struct.Point, i32, i32, %struct.Point, %struct.Point, %struct.Point, %struct.ObjectStruct*, %struct.ObjectStruct*, i32, i32, i32, i32, i32, i32, i32, %struct.ObjectStruct*, %struct.ObjectStruct* }
11         %struct.Point = type { double, double, double }
12         %struct.PointListStruct = type { %struct.ObjPoint*, %struct.PointListStruct*, %struct.PointListStruct* }
13         %struct.Poly3Struct = type { [3 x %struct.ObjPoint*], %struct.Material*, %struct.Texture*, %struct.Poly3Struct*, %struct.Poly3Struct* }
14         %struct.Poly4Struct = type { [4 x %struct.ObjPoint*], %struct.Material*, %struct.Texture*, %struct.Poly4Struct*, %struct.Poly4Struct* }
15         %struct.Texture = type { %struct.Point, %struct.BitMapListStruct*, %struct.Point, %struct.Point, %struct.Point, %struct.Texture*, %struct.Texture* }
16
17 define fastcc void @ScaleObjectAdd(%struct.ObjectStruct* %o, double %sx, double %sy, double %sz) nounwind {
18 entry:
19         %sz101112.ins = or i960 0, 0            ; <i960> [#uses=1]
20         br i1 false, label %return, label %bb1.preheader
21
22 bb1.preheader:          ; preds = %entry
23         %0 = lshr i960 %sz101112.ins, 640               ; <i960> [#uses=0]
24         br label %bb1
25
26 bb1:            ; preds = %bb1, %bb1.preheader
27         br label %bb1
28
29 return:         ; preds = %entry
30         ret void
31 }