diff options
author | Chris Lattner <sabre@nondot.org> | 2007-10-16 18:00:18 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2007-10-16 18:00:18 +0000 |
commit | 281a124bb1d183225f09c33a4278a0390a40cec7 (patch) | |
tree | 7f085bfc2e3c4d5a53c00503c3be73c26c1e9bca /test/CodeGen | |
parent | 7520ebba725803acc395964a79d94cfa1ddc7a63 (diff) | |
download | external_llvm-281a124bb1d183225f09c33a4278a0390a40cec7.zip external_llvm-281a124bb1d183225f09c33a4278a0390a40cec7.tar.gz external_llvm-281a124bb1d183225f09c33a4278a0390a40cec7.tar.bz2 |
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')
-rw-r--r-- | test/CodeGen/PowerPC/2007-10-16-InlineAsmFrameOffset.ll | 14 |
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 0000000..e71a8fb --- /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 +} + |