32 lines · plain
1; RUN: opt %loadNPMPolly '-passes=polly<no-default-opts>' -polly-invariant-load-hoisting=true -S < %s | FileCheck %s2;3; This test case checks whether Polly generates alias metadata in case of4; the ublas gemm kernel and polly-invariant-load-hoisting.5;6; CHECK: store float 4.200000e+01, ptr %polly.access.A.load, align 4, !alias.scope !3, !noalias !07;8; CHECK: !0 = !{!1}9; CHECK-NEXT: !1 = distinct !{!1, !2, !"polly.alias.scope.MemRef_A"}10; CHECK-NEXT: !2 = distinct !{!2, !"polly.alias.scope.domain"}11; CHECK-NEXT: !3 = !{!4}12; CHECK-NEXT: !4 = distinct !{!4, !2, !"polly.alias.scope.MemRef_ptrA"}13;14target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"15target triple = "x86_64-unknown-linux-gnu"16 17define void @nometadata(ptr %A) {18 entry:19 br label %for20 21 for:22 %indvar = phi i64 [0, %entry], [%indvar.next, %for]23 %indvar.next = add i64 %indvar, 124 %ptrA = load ptr, ptr %A25 store float 42.0, ptr %ptrA26 %icmp = icmp sle i64 %indvar, 102427 br i1 %icmp, label %for, label %exit28 29 exit:30 ret void31}32