From 9fbd318d36e618fb08fb53bb48b7c848e617a8a7 Mon Sep 17 00:00:00 2001 From: John McCall Date: Wed, 15 Jun 2011 23:37:01 +0000 Subject: The ARC language-specific optimizer. Credit to Dan Gohman. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133108 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/Transforms/ObjCARC/expand.ll | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 test/Transforms/ObjCARC/expand.ll (limited to 'test/Transforms/ObjCARC/expand.ll') diff --git a/test/Transforms/ObjCARC/expand.ll b/test/Transforms/ObjCARC/expand.ll new file mode 100644 index 0000000..5388673 --- /dev/null +++ b/test/Transforms/ObjCARC/expand.ll @@ -0,0 +1,28 @@ +; RUN: opt -objc-arc-expand -S < %s | FileCheck %s + +target datalayout = "e-p:64:64:64" + +declare i8* @objc_retain(i8*) +declare i8* @objc_autorelease(i8*) + +declare void @use_pointer(i8*) + +; CHECK: define void @test0 +; CHECK: call void @use_pointer(i8* %x) +; CHECK: } +define void @test0(i8* %x) nounwind { +entry: + %0 = call i8* @objc_retain(i8* %x) nounwind + call void @use_pointer(i8* %0) + ret void +} + +; CHECK: define void @test1 +; CHECK: call void @use_pointer(i8* %x) +; CHECK: } +define void @test1(i8* %x) nounwind { +entry: + %0 = call i8* @objc_autorelease(i8* %x) nounwind + call void @use_pointer(i8* %x) + ret void +} -- cgit v1.1