• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: %clang_cc1 -Os -emit-llvm -fobjc-arc -o - %s | FileCheck %s
2
3target triple = "x86_64-apple-darwin10"
4
5declare i8* @objc_retain(i8*)
6declare void @objc_release(i8*)
7
8; CHECK-LABEL: define void @test(
9; CHECK-NOT: @objc_
10; CHECK: }
11define void @test(i8* %x, i1* %p) nounwind {
12entry:
13  br label %loop
14
15loop:
16  call i8* @objc_retain(i8* %x)
17  %q = load i1, i1* %p
18  br i1 %q, label %loop.more, label %exit
19
20loop.more:
21  call void @objc_release(i8* %x)
22  br label %loop
23
24exit:
25  call void @objc_release(i8* %x)
26  ret void
27}
28