llvm-6502/test/Transforms/InstCombine/cast-sext-zext.ll
Chris Lattner 39c27eddc5 Fix PR3452 (an infinite loop bootstrapping) by disabling the recent
improvements to the EvaluateInDifferentType code.  This code works 
by just inserted a bunch of new code and then seeing if it is 
useful.  Instcombine is not allowed to do this: it can only insert
new code if it is useful, and only when it is converging to a more
canonical fixed point.  Now that we iterate when DCE makes progress,
this causes an infinite loop when the code ends up not being used.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63483 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-31 19:05:27 +00:00

13 lines
325 B
LLVM

; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep sext
; XFAIL: *
define zeroext i16 @t(i8 zeroext %on_off, i16* nocapture %puls) nounwind readonly {
entry:
%0 = zext i8 %on_off to i32
%1 = add i32 %0, -1
%2 = sext i32 %1 to i64
%3 = getelementptr i16* %puls, i64 %2
%4 = load i16* %3, align 2
ret i16 %4
}