forked from OSchip/llvm-project
Test case for PR8287: SD scheduling time. Fixed in r118904.
llvm-svn: 118906
This commit is contained in:
parent
0deb9c20c0
commit
ff5f8680d8
|
@ -0,0 +1,31 @@
|
|||
; RUN: llc < %s PR8287: SelectionDag scheduling time.
|
||||
; Yes, some front end really produces this code. But that is a
|
||||
; separate bug. This is more an example than a real test, because I
|
||||
; don't know how give llvm-lit a timeout.
|
||||
|
||||
define void @foo([4096 x i8]* %arg1, [4096 x i8]* %arg2) {
|
||||
%buffer = alloca [4096 x i8]
|
||||
%pbuf = alloca [4096 x i8]*
|
||||
store [4096 x i8]* %buffer, [4096 x i8]** %pbuf
|
||||
|
||||
%parg1 = alloca [4096 x i8]*
|
||||
store [4096 x i8]* %arg1, [4096 x i8]** %parg1
|
||||
|
||||
%parg2 = alloca [4096 x i8]*
|
||||
store [4096 x i8]* %arg2, [4096 x i8]** %parg2
|
||||
|
||||
; The original test case has intermediate blocks.
|
||||
; Presumably something fills in "buffer".
|
||||
|
||||
%bufferCopy1 = load [4096 x i8]** %pbuf
|
||||
%dataCopy1 = load [4096 x i8]* %bufferCopy1
|
||||
%arg1Copy = load [4096 x i8]** %parg1
|
||||
store [4096 x i8] %dataCopy1, [4096 x i8]* %arg1Copy
|
||||
|
||||
%bufferCopy2 = load [4096 x i8]** %pbuf
|
||||
%dataCopy2 = load [4096 x i8]* %bufferCopy2
|
||||
%arg2Copy = load [4096 x i8]** %parg2
|
||||
store [4096 x i8] %dataCopy2, [4096 x i8]* %arg2Copy
|
||||
|
||||
ret void
|
||||
}
|
Loading…
Reference in New Issue