[RISCV] Fix mgather -> riscv.masked.strided.load combine not extending indices (...
[llvm-project.git] / polly / test / IstAstInfo / alias_checks_with_empty_context.ll
blob9b95cd5b4bbd46735be57d262735d8ba1225a32d
1 ; RUN: opt %loadPolly -polly-print-ast -disable-output < %s \
2 ; RUN:     | FileCheck %s
4 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
5 target triple = "x86_64-unknown-linux-gnu"
7 @global = external local_unnamed_addr global i32, align 4
8 @global.1 = external local_unnamed_addr global i32, align 4
10 define void @hoge() local_unnamed_addr {
11 bb:
12   %tmp = alloca i8, align 8
13   br label %bb1
15 bb1:                                              ; preds = %bb19, %bb
16   %tmp2 = phi i32 [ undef, %bb ], [ %tmp5, %bb19 ]
17   %tmp3 = phi ptr [ @global, %bb ], [ %tmp20, %bb19 ]
18   %tmp4 = icmp ugt i32 %tmp2, 5
19   %tmp5 = select i1 %tmp4, i32 %tmp2, i32 5
20   br label %bb6
22 bb6:                                              ; preds = %bb1
23   br label %bb7
25 bb7:                                              ; preds = %bb10, %bb6
26   %tmp8 = phi i8 [ 7, %bb6 ], [ %tmp11, %bb10 ]
27   store i32 2, ptr %tmp3, align 4
28   %tmp9 = load i8, ptr %tmp, align 8
29   br label %bb10
31 bb10:                                             ; preds = %bb7
32   store i32 undef, ptr @global.1, align 4
33   %tmp11 = add nuw nsw i8 %tmp8, 1
34   %tmp12 = icmp eq i8 %tmp11, 72
35   br i1 %tmp12, label %bb13, label %bb7
37 bb13:                                             ; preds = %bb10
38   %tmp14 = icmp eq i32 %tmp5, 0
39   br i1 %tmp14, label %bb15, label %bb16
41 bb15:                                             ; preds = %bb13
42   store i8 0, ptr %tmp, align 8
43   br label %bb16
45 bb16:                                             ; preds = %bb15, %bb13
46   br label %bb17
48 bb17:                                             ; preds = %bb16
49   br i1 undef, label %bb19, label %bb18
51 bb18:                                             ; preds = %bb17
52   br label %bb19
54 bb19:                                             ; preds = %bb18, %bb17
55   %tmp20 = phi ptr [ %tmp3, %bb17 ], [ @hoge, %bb18 ]
56   br label %bb1
59 ; CHECK: if (1 && (&MemRef_tmp3[1] <= &MemRef_global_1[0] || &MemRef_global_1[1] <= &MemRef_tmp3[0]) && (&MemRef_tmp[1] <= &MemRef_global_1[0] || &MemRef_global_1[1] <= &MemRef_tmp[0]) && (&MemRef_tmp[1] <= &MemRef_tmp3[0] || &MemRef_tmp3[1] <= &MemRef_tmp[0]))
61 ; CHECK:            for (int c0 = 0; c0 <= 64; c0 += 1) {
62 ; CHECK-NEXT:         Stmt_bb7(c0);
63 ; CHECK-NEXT:         Stmt_bb10(c0);
64 ; CHECK-NEXT:       }
66 ; CHECK: else
67 ; CHECK-NEXT:     {  /* original code */ }