diff options
author | Ramkumar Ramachandra <artagnon@gmail.com> | 2015-01-27 20:03:08 +0000 |
---|---|---|
committer | Ramkumar Ramachandra <artagnon@gmail.com> | 2015-01-27 20:03:08 +0000 |
commit | ca49c036ba39bafe6a0c187be096f38a462dad13 (patch) | |
tree | 0dad1f0f374cd450f29166d58a8f56a20c9a29bd /llvm/test/CodeGen/Generic/overloaded-intrinsic-name.ll | |
parent | 88cc26811bdbd8055dd2cd84c89009c22adf4875 (diff) | |
download | bcm5719-llvm-ca49c036ba39bafe6a0c187be096f38a462dad13.tar.gz bcm5719-llvm-ca49c036ba39bafe6a0c187be096f38a462dad13.zip |
overloaded-intrinsic-name: exercise anyptr on struct
No other test I know shows how struct names are mangled in overloaded
intrinsic functions.
Differential Revision: http://reviews.llvm.org/D7037
llvm-svn: 227229
Diffstat (limited to 'llvm/test/CodeGen/Generic/overloaded-intrinsic-name.ll')
-rw-r--r-- | llvm/test/CodeGen/Generic/overloaded-intrinsic-name.ll | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Generic/overloaded-intrinsic-name.ll b/llvm/test/CodeGen/Generic/overloaded-intrinsic-name.ll index 94494dd96df..aa6a031d8b7 100644 --- a/llvm/test/CodeGen/Generic/overloaded-intrinsic-name.ll +++ b/llvm/test/CodeGen/Generic/overloaded-intrinsic-name.ll @@ -39,9 +39,19 @@ define <3 x i32>* @test_vAny(<3 x i32>* %v) { ret <3 x i32>* %v-new } +%struct.test = type { i32, i1 } + +; struct +define %struct.test* @test_struct(%struct.test* %v) { + %tok = call i32 (i1 ()*, i32, i32, ...)* @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()* @return_i1, i32 0, i32 0, i32 0, %struct.test* %v) + %v-new = call %struct.test* @llvm.experimental.gc.relocate.p0struct.test(i32 %tok, i32 4, i32 4) + ret %struct.test* %v-new +} + declare zeroext i1 @return_i1() declare i32 @llvm.experimental.gc.statepoint.p0f_i1f(i1 ()*, i32, i32, ...) declare i32* @llvm.experimental.gc.relocate.p0i32(i32, i32, i32) declare float* @llvm.experimental.gc.relocate.p0f32(i32, i32, i32) declare [3 x i32]* @llvm.experimental.gc.relocate.p0a3i32(i32, i32, i32) declare <3 x i32>* @llvm.experimental.gc.relocate.p0v3i32(i32, i32, i32) +declare %struct.test* @llvm.experimental.gc.relocate.p0struct.test(i32, i32, i32) |