summaryrefslogtreecommitdiff
path: root/test/CodeGen/PowerPC/2007-10-16-InlineAsmFrameOffset.ll
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-10-16 18:00:18 +0000
committerChris Lattner <sabre@nondot.org>2007-10-16 18:00:18 +0000
commitf602a2566845dc57444b9d40538c947b5ed23111 (patch)
tree7f085bfc2e3c4d5a53c00503c3be73c26c1e9bca /test/CodeGen/PowerPC/2007-10-16-InlineAsmFrameOffset.ll
parent67c18d50343577779816e9b87de3349f4a4b33e8 (diff)
Fix a bug handling frame references in ppc inline asm when the frame offset
doesn't fit into 16 bits. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43032 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/PowerPC/2007-10-16-InlineAsmFrameOffset.ll')
-rw-r--r--test/CodeGen/PowerPC/2007-10-16-InlineAsmFrameOffset.ll14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/CodeGen/PowerPC/2007-10-16-InlineAsmFrameOffset.ll b/test/CodeGen/PowerPC/2007-10-16-InlineAsmFrameOffset.ll
new file mode 100644
index 00000000000..e71a8fb0f16
--- /dev/null
+++ b/test/CodeGen/PowerPC/2007-10-16-InlineAsmFrameOffset.ll
@@ -0,0 +1,14 @@
+; RUN: llvm-as < %s | llc -march=ppc32
+; rdar://5538377
+
+ %struct.disk_unsigned = type { i32 }
+ %struct._StorePageMax = type { %struct.disk_unsigned, %struct.disk_unsigned, [65536 x i8] }
+
+define i32 @test() {
+entry:
+ %data = alloca i32 ; <i32*> [#uses=1]
+ %compressedPage = alloca %struct._StorePageMax ; <%struct._StorePageMax*> [#uses=0]
+ %tmp107 = call i32 asm "lwbrx $0, $2, $1", "=r,r,bO,*m"( i8* null, i32 0, i32* %data ) ; <i32> [#uses=0]
+ unreachable
+}
+