[JSON][PM] Port json import/export over to new pm
[polly-mirror.git] / test / ScopInfo / aliasing_many_arrays_to_compare.ll
blob7168a6a270f983b8e006be60bacc48b66c4cd3c8
1 ; RUN: opt %loadPolly -polly-scops -analyze \
2 ; RUN:                < %s | FileCheck %s --check-prefix=FOUND
3 ; RUN: opt %loadPolly -polly-scops -analyze \
4 ; RUN:                -polly-rtc-max-arrays-per-group=3 < %s | FileCheck %s \
5 ; RUN:                --check-prefix=IGNORED
7 ; FOUND: Function: foo
8 ; IGNORED-NOT: Function: foo
10 ;    void foo(float *A, float *B, float *C, float *D) {
11 ;      for (long i = 0; i < 100; i++) {
12 ;        A[i]++;
13 ;        B[i]++;
14 ;        C[i]++;
15 ;        D[i]++;
16 ;      }
17 ;    }
19 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
21 define void @foo(float* %A, float* %B, float* %C, float* %D) {
22 entry:
23   br label %for.cond
25 for.cond:                                         ; preds = %for.inc, %entry
26   %i.0 = phi i64 [ 0, %entry ], [ %inc7, %for.inc ]
27   %exitcond = icmp ne i64 %i.0, 100
28   br i1 %exitcond, label %for.body, label %for.end
30 for.body:                                         ; preds = %for.cond
31   %arrayidx = getelementptr inbounds float, float* %A, i64 %i.0
32   %tmp = load float, float* %arrayidx, align 4
33   %inc = fadd float %tmp, 1.000000e+00
34   store float %inc, float* %arrayidx, align 4
35   %arrayidx1 = getelementptr inbounds float, float* %B, i64 %i.0
36   %tmp1 = load float, float* %arrayidx1, align 4
37   %inc2 = fadd float %tmp1, 1.000000e+00
38   store float %inc2, float* %arrayidx1, align 4
39   %arrayidx3 = getelementptr inbounds float, float* %C, i64 %i.0
40   %tmp2 = load float, float* %arrayidx3, align 4
41   %inc4 = fadd float %tmp2, 1.000000e+00
42   store float %inc4, float* %arrayidx3, align 4
43   %arrayidx5 = getelementptr inbounds float, float* %D, i64 %i.0
44   %tmp3 = load float, float* %arrayidx5, align 4
45   %inc6 = fadd float %tmp3, 1.000000e+00
46   store float %inc6, float* %arrayidx5, align 4
47   br label %for.inc
49 for.inc:                                          ; preds = %for.body
50   %inc7 = add nuw nsw i64 %i.0, 1
51   br label %for.cond
53 for.end:                                          ; preds = %for.cond
54   ret void