mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-10-12 14:20:55 +00:00
Rewrite multiple return value handling in SCCP. Before, the -sccp pass
would turn every getresult instruction into undef. This helps with rdar://5778210 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50140 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
11
test/Transforms/SCCP/2008-04-22-multiple-ret-sccp.ll
Normal file
11
test/Transforms/SCCP/2008-04-22-multiple-ret-sccp.ll
Normal file
@@ -0,0 +1,11 @@
|
||||
; RUN: llvm-as < %s | opt -sccp | llvm-dis | grep {ret i32 %Z}
|
||||
; rdar://5778210
|
||||
|
||||
declare {i32, i32} @bar(i32 %A)
|
||||
|
||||
define i32 @foo() {
|
||||
%X = call {i32, i32} @bar(i32 17)
|
||||
%Y = getresult {i32, i32} %X, 0
|
||||
%Z = add i32 %Y, %Y
|
||||
ret i32 %Z
|
||||
}
|
Reference in New Issue
Block a user