@@ -13,34 +13,31 @@ target triple = "x86_64-unknown-linux-gnu"
13
13
; CHECK: LV: Checking a loop in "test"
14
14
;
15
15
; SSE2: LV: Found an estimated cost of 1 for VF 1 For instruction: %v0 = load i32, i32* %in0, align 4
16
- ; SSE2: LV: Found an estimated cost of 29 for VF 2 For instruction: %v0 = load i32, i32* %in0, align 4
17
- ; SSE2: LV: Found an estimated cost of 59 for VF 4 For instruction: %v0 = load i32, i32* %in0, align 4
18
- ; SSE2: LV: Found an estimated cost of 118 for VF 8 For instruction: %v0 = load i32, i32* %in0, align 4
19
- ; SSE2: LV: Found an estimated cost of 236 for VF 16 For instruction: %v0 = load i32, i32* %in0, align 4
16
+ ; SSE2: LV: Found an estimated cost of 7 for VF 2 For instruction: %v0 = load i32, i32* %in0, align 4
17
+ ; SSE2: LV: Found an estimated cost of 15 for VF 4 For instruction: %v0 = load i32, i32* %in0, align 4
18
+ ; SSE2: LV: Found an estimated cost of 30 for VF 8 For instruction: %v0 = load i32, i32* %in0, align 4
20
19
;
21
20
; AVX1: LV: Found an estimated cost of 1 for VF 1 For instruction: %v0 = load i32, i32* %in0, align 4
22
- ; AVX1: LV: Found an estimated cost of 26 for VF 2 For instruction: %v0 = load i32, i32* %in0, align 4
23
- ; AVX1: LV: Found an estimated cost of 54 for VF 4 For instruction: %v0 = load i32, i32* %in0, align 4
24
- ; AVX1: LV: Found an estimated cost of 110 for VF 8 For instruction: %v0 = load i32, i32* %in0, align 4
25
- ; AVX1: LV: Found an estimated cost of 220 for VF 16 For instruction: %v0 = load i32, i32* %in0, align 4
26
- ; AVX1: LV: Found an estimated cost of 440 for VF 32 For instruction: %v0 = load i32, i32* %in0, align 4
21
+ ; AVX1: LV: Found an estimated cost of 5 for VF 2 For instruction: %v0 = load i32, i32* %in0, align 4
22
+ ; AVX1: LV: Found an estimated cost of 11 for VF 4 For instruction: %v0 = load i32, i32* %in0, align 4
23
+ ; AVX1: LV: Found an estimated cost of 24 for VF 8 For instruction: %v0 = load i32, i32* %in0, align 4
24
+ ; AVX1: LV: Found an estimated cost of 48 for VF 16 For instruction: %v0 = load i32, i32* %in0, align 4
27
25
;
28
26
; AVX2: LV: Found an estimated cost of 1 for VF 1 For instruction: %v0 = load i32, i32* %in0, align 4
29
- ; AVX2: LV: Found an estimated cost of 26 for VF 2 For instruction: %v0 = load i32, i32* %in0, align 4
30
- ; AVX2: LV: Found an estimated cost of 54 for VF 4 For instruction: %v0 = load i32, i32* %in0, align 4
31
- ; AVX2: LV: Found an estimated cost of 110 for VF 8 For instruction: %v0 = load i32, i32* %in0, align 4
32
- ; AVX2: LV: Found an estimated cost of 220 for VF 16 For instruction: %v0 = load i32, i32* %in0, align 4
33
- ; AVX2: LV: Found an estimated cost of 440 for VF 32 For instruction: %v0 = load i32, i32* %in0, align 4
27
+ ; AVX2: LV: Found an estimated cost of 5 for VF 2 For instruction: %v0 = load i32, i32* %in0, align 4
28
+ ; AVX2: LV: Found an estimated cost of 11 for VF 4 For instruction: %v0 = load i32, i32* %in0, align 4
29
+ ; AVX2: LV: Found an estimated cost of 24 for VF 8 For instruction: %v0 = load i32, i32* %in0, align 4
30
+ ; AVX2: LV: Found an estimated cost of 48 for VF 16 For instruction: %v0 = load i32, i32* %in0, align 4
34
31
;
35
32
; AVX512: LV: Found an estimated cost of 1 for VF 1 For instruction: %v0 = load i32, i32* %in0, align 4
36
- ; AVX512: LV: Found an estimated cost of 4 for VF 2 For instruction: %v0 = load i32, i32* %in0, align 4
37
- ; AVX512: LV: Found an estimated cost of 6 for VF 4 For instruction: %v0 = load i32, i32* %in0, align 4
38
- ; AVX512: LV: Found an estimated cost of 10 for VF 8 For instruction: %v0 = load i32, i32* %in0, align 4
39
- ; AVX512: LV: Found an estimated cost of 20 for VF 16 For instruction: %v0 = load i32, i32* %in0, align 4
40
- ; AVX512: LV: Found an estimated cost of 40 for VF 32 For instruction: %v0 = load i32, i32* %in0, align 4
41
- ; AVX512: LV: Found an estimated cost of 80 for VF 64 For instruction: %v0 = load i32, i32* %in0, align 4
33
+ ; AVX512: LV: Found an estimated cost of 1 for VF 2 For instruction: %v0 = load i32, i32* %in0, align 4
34
+ ; AVX512: LV: Found an estimated cost of 1 for VF 4 For instruction: %v0 = load i32, i32* %in0, align 4
35
+ ; AVX512: LV: Found an estimated cost of 1 for VF 8 For instruction: %v0 = load i32, i32* %in0, align 4
36
+ ; AVX512: LV: Found an estimated cost of 2 for VF 16 For instruction: %v0 = load i32, i32* %in0, align 4
37
+ ; AVX512: LV: Found an estimated cost of 13 for VF 32 For instruction: %v0 = load i32, i32* %in0, align 4
38
+ ; AVX512: LV: Found an estimated cost of 50 for VF 64 For instruction: %v0 = load i32, i32* %in0, align 4
42
39
;
43
- ; CHECK-NOT: LV: Found an estimated cost of {{[0-9]+}} for VF {{[0-9]+}} For instruction: %v0 = load i32, i32* %in0, align 2
40
+ ; CHECK-NOT: LV: Found an estimated cost of {{[0-9]+}} for VF {{[0-9]+}} For instruction: %v0 = load i32, i32* %in0, align 4
44
41
45
42
define void @test () {
46
43
entry:
@@ -62,7 +59,7 @@ for.body:
62
59
%out = getelementptr inbounds [1024 x i8 ], [1024 x i8 ]* @B , i64 0 , i64 %iv.0
63
60
store i8 %reduce.add.0.narrow , i8* %out
64
61
65
- %iv.next = add nuw nsw i64 %iv.0 , 2
62
+ %iv.next = add nuw nsw i64 %iv , 2
66
63
%cmp = icmp ult i64 %iv.next , 1024
67
64
br i1 %cmp , label %for.body , label %for.cond.cleanup
68
65
0 commit comments