From 308fba5fe2714f28984d973d79f948dc24ba23b4 Mon Sep 17 00:00:00 2001 From: Nick Lewycky Date: Fri, 6 May 2011 21:09:44 +0000 Subject: It's valid to take the blockaddress of a different function, so remove this assert in the bitcode writer. No change needed because the ValueEnumerator holds a whole-module numbering anyhow. Fixes PR9857! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131016 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/Bitcode/blockaddress.ll | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 test/Bitcode/blockaddress.ll (limited to 'test/Bitcode') diff --git a/test/Bitcode/blockaddress.ll b/test/Bitcode/blockaddress.ll new file mode 100644 index 0000000000..b9f334176c --- /dev/null +++ b/test/Bitcode/blockaddress.ll @@ -0,0 +1,30 @@ +; RUN: llvm-as < %s | llvm-dis | FileCheck %s +; PR9857 + +define void @f(i8** nocapture %ptr1) { +; CHECK: define void @f +entry: + br label %here.i + +here.i: + store i8* blockaddress(@doit, %here), i8** %ptr1, align 8 +; CHECK: blockaddress(@doit, %here) + br label %doit.exit + +doit.exit: + ret void +} + +define void @doit(i8** nocapture %pptr) { +; CHECK: define void @doit +entry: + br label %here + +here: + store i8* blockaddress(@doit, %here), i8** %pptr, align 8 +; CHECK: blockaddress(@doit, %here) + br label %end + +end: + ret void +} -- cgit v1.2.3-70-g09d2