Re-land [openmp] Fix warnings when building on Windows with latest MSVC or Clang...
[llvm-project.git] / llvm / test / Transforms / PhaseOrdering / early-arg-attrs-inference.ll
blobba4583160b137b104c491cfcfaef561bd5f9f784
1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 2
2 ; RUN: opt -S -O3 -memssa-check-limit=1 -memdep-block-scan-limit=1 < %s | FileCheck %s
4 define i32 @f(ptr noalias %p, i32 %c) {
5 ; CHECK-LABEL: define noundef i32 @f
6 ; CHECK-SAME: (ptr noalias nocapture readonly [[P:%.*]], i32 [[C:%.*]]) local_unnamed_addr {
7 ; CHECK-NEXT:    tail call void @g()
8 ; CHECK-NEXT:    tail call void @g()
9 ; CHECK-NEXT:    tail call void @g()
10 ; CHECK-NEXT:    tail call void @g()
11 ; CHECK-NEXT:    tail call void @g()
12 ; CHECK-NEXT:    tail call void @g()
13 ; CHECK-NEXT:    ret i32 0
15   %i = load i32, ptr %p
16   call void @g()
17   call void @g()
18   call void @g()
19   call void @g()
20   call void @g()
21   call void @g()
22   %i2 = load i32, ptr %p
23   %r = sub i32 %i, %i2
24   ret i32 %r
27 declare void @g()