• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: opt -objc-arc-expand -S < %s | FileCheck %s
2
3target datalayout = "e-p:64:64:64"
4
5declare i8* @objc_retain(i8*)
6declare i8* @objc_autorelease(i8*)
7
8declare void @use_pointer(i8*)
9
10; CHECK: define void @test0
11; CHECK: call void @use_pointer(i8* %x)
12; CHECK: }
13define void @test0(i8* %x) nounwind {
14entry:
15  %0 = call i8* @objc_retain(i8* %x) nounwind
16  call void @use_pointer(i8* %0)
17  ret void
18}
19
20; CHECK: define void @test1
21; CHECK: call void @use_pointer(i8* %x)
22; CHECK: }
23define void @test1(i8* %x) nounwind {
24entry:
25  %0 = call i8* @objc_autorelease(i8* %x) nounwind
26  call void @use_pointer(i8* %x)
27  ret void
28}
29