xref: /llvm-project/clang/test/CodeGen/thinlto-distributed-objc-contract-pass.ll (revision 74e4694b8cbdb918abd4645e2c5027359904fb92)
1*74e4694bSPeter Rong; RUN: opt -thinlto-bc -o %t.o %s
2*74e4694bSPeter Rong
3*74e4694bSPeter Rong; RUN: llvm-lto2 run -thinlto-distributed-indexes %t.o \
4*74e4694bSPeter Rong; RUN:   -o %t2.index \
5*74e4694bSPeter Rong; RUN:   -r=%t.o,_use_arc,px
6*74e4694bSPeter Rong
7*74e4694bSPeter Rong; RUN: %clang_cc1 -O2 -triple x86_64-apple-darwin \
8*74e4694bSPeter Rong; RUN:   -emit-obj -fthinlto-index=%t.o.thinlto.bc \
9*74e4694bSPeter Rong; RUN:   -o %t.native.o -x ir %t.o
10*74e4694bSPeter Rong
11*74e4694bSPeter Rongtarget datalayout = "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
12*74e4694bSPeter Rongtarget triple = "x86_64-apple-darwin"
13*74e4694bSPeter Rong
14*74e4694bSPeter Rongdefine void @use_arc(ptr %a, ptr %b) {
15*74e4694bSPeter Rong  call void (...) @llvm.objc.clang.arc.use(ptr %a, ptr %b) nounwind
16*74e4694bSPeter Rong  ret void
17*74e4694bSPeter Rong}
18*74e4694bSPeter Rong
19*74e4694bSPeter Rongdeclare void @llvm.objc.clang.arc.use(...) nounwind
20