@@ -6,60 +6,60 @@ target datalayout = "E-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f3
6
6
define float @test1 (i32 %hash , float %x , float %y , float %z , float %w ) {
7
7
; CHECK-LABEL: @test1(
8
8
; CHECK-NEXT: entry:
9
- ; CHECK-NEXT: [[TMP3 :%.*]] = shl i32 [[HASH:%.*]], 2
10
- ; CHECK-NEXT: [[TMP5 :%.*]] = and i32 [[TMP3 ]], 124
11
- ; CHECK-NEXT: [[TMP0:%.*]] = zext nneg i32 [[TMP5 ]] to i64
12
- ; CHECK-NEXT: [[TMP753 :%.*]] = getelementptr [128 x float], ptr @C.0.1248, i64 0, i64 [[TMP0]]
13
- ; CHECK-NEXT: [[TMP9 :%.*]] = load float, ptr [[TMP753 ]], align 4
14
- ; CHECK-NEXT: [[TMP11 :%.*]] = fmul float [[TMP9 ]], [[X:%.*]]
15
- ; CHECK-NEXT: [[TMP13 :%.*]] = fadd float [[TMP11 ]], 0.000000e+00
16
- ; CHECK-NEXT: [[TMP17_SUM52 :%.*]] = or disjoint i32 [[TMP5 ]], 1
17
- ; CHECK-NEXT: [[TMP1:%.*]] = zext nneg i32 [[TMP17_SUM52 ]] to i64
18
- ; CHECK-NEXT: [[TMP1851 :%.*]] = getelementptr [128 x float], ptr @C.0.1248, i64 0, i64 [[TMP1]]
19
- ; CHECK-NEXT: [[TMP19 :%.*]] = load float, ptr [[TMP1851 ]], align 4
20
- ; CHECK-NEXT: [[TMP21 :%.*]] = fmul float [[TMP19 ]], [[Y:%.*]]
21
- ; CHECK-NEXT: [[TMP23 :%.*]] = fadd float [[TMP21 ]], [[TMP13 ]]
22
- ; CHECK-NEXT: [[TMP27_SUM50 :%.*]] = or disjoint i32 [[TMP5 ]], 2
23
- ; CHECK-NEXT: [[TMP2:%.*]] = zext nneg i32 [[TMP27_SUM50 ]] to i64
24
- ; CHECK-NEXT: [[TMP2849 :%.*]] = getelementptr [128 x float], ptr @C.0.1248, i64 0, i64 [[TMP2]]
25
- ; CHECK-NEXT: [[TMP29 :%.*]] = load float, ptr [[TMP2849 ]], align 4
26
- ; CHECK-NEXT: [[TMP31 :%.*]] = fmul float [[TMP29 ]], [[Z:%.*]]
27
- ; CHECK-NEXT: [[TMP33 :%.*]] = fadd float [[TMP31 ]], [[TMP23 ]]
28
- ; CHECK-NEXT: [[TMP37_SUM48 :%.*]] = or disjoint i32 [[TMP5 ]], 3
29
- ; CHECK-NEXT: [[TMP3:%.*]] = zext nneg i32 [[TMP37_SUM48 ]] to i64
30
- ; CHECK-NEXT: [[TMP3847 :%.*]] = getelementptr [128 x float], ptr @C.0.1248, i64 0, i64 [[TMP3]]
31
- ; CHECK-NEXT: [[TMP39 :%.*]] = load float, ptr [[TMP3847 ]], align 4
32
- ; CHECK-NEXT: [[TMP41 :%.*]] = fmul float [[TMP39 ]], [[W:%.*]]
33
- ; CHECK-NEXT: [[TMP43 :%.*]] = fadd float [[TMP41 ]], [[TMP33 ]]
34
- ; CHECK-NEXT: ret float [[TMP43 ]]
9
+ ; CHECK-NEXT: [[T3 :%.*]] = shl i32 [[HASH:%.*]], 2
10
+ ; CHECK-NEXT: [[T5 :%.*]] = and i32 [[T3 ]], 124
11
+ ; CHECK-NEXT: [[TMP0:%.*]] = zext nneg i32 [[T5 ]] to i64
12
+ ; CHECK-NEXT: [[T753 :%.*]] = getelementptr [128 x float], ptr @C.0.1248, i64 0, i64 [[TMP0]]
13
+ ; CHECK-NEXT: [[T9 :%.*]] = load float, ptr [[T753 ]], align 4
14
+ ; CHECK-NEXT: [[T11 :%.*]] = fmul float [[T9 ]], [[X:%.*]]
15
+ ; CHECK-NEXT: [[T13 :%.*]] = fadd float [[T11 ]], 0.000000e+00
16
+ ; CHECK-NEXT: [[T17_SUM52 :%.*]] = or disjoint i32 [[T5 ]], 1
17
+ ; CHECK-NEXT: [[TMP1:%.*]] = zext nneg i32 [[T17_SUM52 ]] to i64
18
+ ; CHECK-NEXT: [[T1851 :%.*]] = getelementptr [128 x float], ptr @C.0.1248, i64 0, i64 [[TMP1]]
19
+ ; CHECK-NEXT: [[T19 :%.*]] = load float, ptr [[T1851 ]], align 4
20
+ ; CHECK-NEXT: [[T21 :%.*]] = fmul float [[T19 ]], [[Y:%.*]]
21
+ ; CHECK-NEXT: [[T23 :%.*]] = fadd float [[T21 ]], [[T13 ]]
22
+ ; CHECK-NEXT: [[T27_SUM50 :%.*]] = or disjoint i32 [[T5 ]], 2
23
+ ; CHECK-NEXT: [[TMP2:%.*]] = zext nneg i32 [[T27_SUM50 ]] to i64
24
+ ; CHECK-NEXT: [[T2849 :%.*]] = getelementptr [128 x float], ptr @C.0.1248, i64 0, i64 [[TMP2]]
25
+ ; CHECK-NEXT: [[T29 :%.*]] = load float, ptr [[T2849 ]], align 4
26
+ ; CHECK-NEXT: [[T31 :%.*]] = fmul float [[T29 ]], [[Z:%.*]]
27
+ ; CHECK-NEXT: [[T33 :%.*]] = fadd float [[T31 ]], [[T23 ]]
28
+ ; CHECK-NEXT: [[T37_SUM48 :%.*]] = or disjoint i32 [[T5 ]], 3
29
+ ; CHECK-NEXT: [[TMP3:%.*]] = zext nneg i32 [[T37_SUM48 ]] to i64
30
+ ; CHECK-NEXT: [[T3847 :%.*]] = getelementptr [128 x float], ptr @C.0.1248, i64 0, i64 [[TMP3]]
31
+ ; CHECK-NEXT: [[T39 :%.*]] = load float, ptr [[T3847 ]], align 4
32
+ ; CHECK-NEXT: [[T41 :%.*]] = fmul float [[T39 ]], [[W:%.*]]
33
+ ; CHECK-NEXT: [[T43 :%.*]] = fadd float [[T41 ]], [[T33 ]]
34
+ ; CHECK-NEXT: ret float [[T43 ]]
35
35
;
36
36
entry:
37
- %lookupTable = alloca [128 x float ], align 16 ; <ptr> [#uses=5]
37
+ %lookupTable = alloca [128 x float ], align 16
38
38
call void @llvm.memcpy.p0.p0.i64 (ptr align 16 %lookupTable , ptr align 16 @C.0.1248 , i64 512 , i1 false )
39
39
40
40
41
- %tmp3 = shl i32 %hash , 2 ; <i32> [#uses=1]
42
- %tmp5 = and i32 %tmp3 , 124 ; <i32> [#uses=4]
43
- %tmp753 = getelementptr [128 x float ], ptr %lookupTable , i32 0 , i32 %tmp5 ; <ptr> [#uses=1]
44
- %tmp9 = load float , ptr %tmp753 ; <float> [#uses=1]
45
- %tmp11 = fmul float %tmp9 , %x ; <float> [#uses=1]
46
- %tmp13 = fadd float %tmp11 , 0 .000000e+00 ; <float> [#uses=1]
47
- %tmp17 .sum52 = or i32 %tmp5 , 1 ; <i32> [#uses=1]
48
- %tmp1851 = getelementptr [128 x float ], ptr %lookupTable , i32 0 , i32 %tmp17 .sum52 ; <ptr> [#uses=1]
49
- %tmp19 = load float , ptr %tmp1851 ; <float> [#uses=1]
50
- %tmp21 = fmul float %tmp19 , %y ; <float> [#uses=1]
51
- %tmp23 = fadd float %tmp21 , %tmp13 ; <float> [#uses=1]
52
- %tmp27 .sum50 = or i32 %tmp5 , 2 ; <i32> [#uses=1]
53
- %tmp2849 = getelementptr [128 x float ], ptr %lookupTable , i32 0 , i32 %tmp27 .sum50 ; <ptr> [#uses=1]
54
- %tmp29 = load float , ptr %tmp2849 ; <float> [#uses=1]
55
- %tmp31 = fmul float %tmp29 , %z ; <float> [#uses=1]
56
- %tmp33 = fadd float %tmp31 , %tmp23 ; <float> [#uses=1]
57
- %tmp37 .sum48 = or i32 %tmp5 , 3 ; <i32> [#uses=1]
58
- %tmp3847 = getelementptr [128 x float ], ptr %lookupTable , i32 0 , i32 %tmp37 .sum48 ; <ptr> [#uses=1]
59
- %tmp39 = load float , ptr %tmp3847 ; <float> [#uses=1]
60
- %tmp41 = fmul float %tmp39 , %w ; <float> [#uses=1]
61
- %tmp43 = fadd float %tmp41 , %tmp33 ; <float> [#uses=1]
62
- ret float %tmp43
41
+ %t3 = shl i32 %hash , 2
42
+ %t5 = and i32 %t3 , 124
43
+ %t753 = getelementptr [128 x float ], ptr %lookupTable , i32 0 , i32 %t5
44
+ %t9 = load float , ptr %t753
45
+ %t11 = fmul float %t9 , %x
46
+ %t13 = fadd float %t11 , 0 .000000e+00
47
+ %t17 .sum52 = or i32 %t5 , 1
48
+ %t1851 = getelementptr [128 x float ], ptr %lookupTable , i32 0 , i32 %t17 .sum52
49
+ %t19 = load float , ptr %t1851
50
+ %t21 = fmul float %t19 , %y
51
+ %t23 = fadd float %t21 , %t13
52
+ %t27 .sum50 = or i32 %t5 , 2
53
+ %t2849 = getelementptr [128 x float ], ptr %lookupTable , i32 0 , i32 %t27 .sum50
54
+ %t29 = load float , ptr %t2849
55
+ %t31 = fmul float %t29 , %z
56
+ %t33 = fadd float %t31 , %t23
57
+ %t37 .sum48 = or i32 %t5 , 3
58
+ %t3847 = getelementptr [128 x float ], ptr %lookupTable , i32 0 , i32 %t37 .sum48
59
+ %t39 = load float , ptr %t3847
60
+ %t41 = fmul float %t39 , %w
61
+ %t43 = fadd float %t41 , %t33
62
+ ret float %t43
63
63
}
64
64
65
65
declare void @llvm.memcpy.p0.p0.i64 (ptr nocapture , ptr nocapture , i64 , i1 ) nounwind
0 commit comments