1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 12:12:47 +01:00
llvm-mirror/test/Assembler/2007-02-01-UpgradeShift.ll
Reid Spencer 651c5ed3e8 For PR1319:
Upgrade to new Tcl exec based test framework. This exposes three regressions
in llvm-upgrade:
test/Assembler/2002-08-19-BytecodeReader.llx
test/Assembler/2003-08-21-ConstantExprCast-Fold.llx
test/Assembler/2004-01-11-getelementptrfolding.llx

llvm-svn: 36067
2007-04-15 10:07:55 +00:00

19 lines
710 B
LLVM

; Test that upgrading shift instructions and constant expressions works
; correctly.
; RUN: llvm-upgrade < %s | grep {ashr i32 .X, 2}
; RUN: llvm-upgrade < %s | grep {lshr i32 .X, 2}
; RUN: llvm-upgrade < %s | grep {shl i32 .X, 2}
; RUN: llvm-upgrade < %s | grep {ashr i32 .X, 6}
; RUN: llvm-upgrade < %s | grep {lshr i32 .X, 1}
; RUN: llvm-upgrade < %s | grep {shl i32 .X, 1}
void %test(int %X) {
%A = ashr int %X, ubyte 2
%B = lshr int %X, ubyte 2
%C = shl int %X, ubyte 2
%D = ashr int %X, ubyte trunc ( int shl (int 3, ubyte 1) to ubyte )
%E = lshr int %X, ubyte trunc ( int ashr (int 3, ubyte 1) to ubyte )
%F = shl int %X, ubyte trunc ( int lshr (int 3, ubyte 1) to ubyte )
ret void
}