[DAGCombiner] Add target hook function to decide folding (mul (add x, c1), c2)
[llvm-project.git] / llvm / test / Transforms / Inline / noalias3.ll
blobb94cbd6ab72f9cb734c068d2a434aca8e7ba7ee7
1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --function-signature
2 ; RUN: opt -inline -S < %s | FileCheck %s
4 define void @caller(i8* %ptr) {
5 ; CHECK-LABEL: define {{[^@]+}}@caller
6 ; CHECK-SAME: (i8* [[PTR:%.*]]) {
7 ; CHECK-NEXT:    [[I_I:%.*]] = load i8, i8* [[PTR]], align 1, !alias.scope !0
8 ; CHECK-NEXT:    ret void
10   call void @callee(i8* %ptr)
11   ret void
14 define void @callee(i8* %ptr) {
15 ; CHECK-LABEL: define {{[^@]+}}@callee
16 ; CHECK-SAME: (i8* [[PTR:%.*]]) {
17 ; CHECK-NEXT:  entry:
18 ; CHECK-NEXT:    [[I:%.*]] = load i8, i8* [[PTR]], align 1, !alias.scope !3
19 ; CHECK-NEXT:    br label [[DUMMY:%.*]]
20 ; CHECK:       dummy:
21 ; CHECK-NEXT:    [[I_COPY:%.*]] = phi i8 [ [[I]], [[ENTRY:%.*]] ]
22 ; CHECK-NEXT:    ret void
24 entry:
25   %i = load i8, i8* %ptr, !alias.scope !0
26   br label %dummy
28 dummy:
29   %i.copy = phi i8 [ %i, %entry ]
30   ret void
33 !0 = !{!1}
34 !1 = distinct !{!1, !2}
35 !2 = distinct !{!2}