llvm-6502/test/Transforms/LevelRaise/2002-07-16-MissedRaise.ll
Tanya Lattner 12ff96854d Adding XFAIL lines for dejagnu support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17514 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-06 20:38:27 +00:00

23 lines
1.0 KiB
LLVM

; This case fails raise because the store requires that it's argument is of a
; particular type, but the gep is unable to propogate types backwards through
; it, because it doesn't know what type to ask it's operand to be.
;
; This could be fixed by making all stores add themselves to a list, and check
; their arguments are consistent AFTER all other values are propogated.
; XFAIL: *
; RUN: llvm-as < %s | opt -raise | llvm-dis | not grep '= cast'
%Tree = type %struct.tree*
%struct.tree = type { int, double, double, %Tree, %Tree, %Tree, %Tree }
void %reverse(%Tree %t) {
bb0: ;[#uses=0]
%cast219 = cast %Tree %t to sbyte*** ; <sbyte***> [#uses=2]
%reg2221 = getelementptr sbyte*** %cast219, long 6 ; <sbyte***> [#uses=1]
%reg108 = load sbyte*** %reg2221 ; <sbyte**> [#uses=2]
%reg247 = getelementptr sbyte*** %cast219, long 5 ; <sbyte***> [#uses=1]
store sbyte** %reg108, sbyte*** %reg247
ret void
}