llvm/test/ExecutionEngine/test-cast.ll

138 lines
2.8 KiB
LLVM
Raw Normal View History

; RUN: llvm-upgrade %s | llvm-as -f -o %t.bc
; RUN: lli %t.bc > /dev/null
int %foo() {
ret int 0
}
int %main() {
; cast bool to ...
cast bool true to bool
cast bool true to ubyte
cast bool true to sbyte
cast bool true to short
cast bool true to ushort
cast bool true to int
cast bool true to uint
cast bool true to long
cast bool true to ulong
cast bool true to float
cast bool true to double
; cast sbyte to ...
cast sbyte 0 to bool
cast sbyte 1 to bool
cast sbyte 0 to sbyte
cast sbyte -1 to ubyte
cast sbyte 4 to short
cast sbyte 4 to ushort
cast sbyte 4 to long
cast sbyte 4 to ulong
cast sbyte 4 to float
cast sbyte 4 to double
; cast ubyte to ...
cast ubyte 0 to bool
cast ubyte 1 to bool
cast ubyte 0 to sbyte
cast ubyte 1 to ubyte
cast ubyte 4 to short
cast ubyte 4 to ushort
cast ubyte 4 to long
cast ubyte 4 to ulong
cast ubyte 0 to float
cast ubyte 0 to double
; cast short to ...
cast short 1 to bool
cast short -1 to sbyte
cast short 255 to ubyte
cast short 0 to short
cast short 0 to ushort
cast short 0 to long
cast short 0 to ulong
cast short 0 to float
cast short 0 to double
; cast ushort to ...
cast ushort 1 to bool
cast ushort 1 to sbyte
cast ushort 255 to ubyte
cast ushort 0 to short
cast ushort 0 to ushort
cast ushort 0 to long
cast ushort 0 to ulong
cast ushort 0 to float
cast ushort 0 to double
; cast int to ...
cast int 6 to bool
cast int -6 to sbyte
cast int 6 to ubyte
cast int 6 to short
cast int 0 to int
cast int 0 to long
cast int 0 to ulong
cast int 0 to float
cast int 0 to double
; cast uint to ...
cast uint 6 to bool
cast uint 7 to sbyte
cast uint 8 to ubyte
cast uint 9 to short
cast uint 10 to int
cast uint 0 to long
cast uint 0 to ulong
cast uint 0 to float
cast uint 0 to double
; cast long to ...
cast long 0 to bool
cast long 0 to sbyte
cast long 0 to ubyte
cast long 0 to short
cast long 0 to ushort
cast long 0 to int
cast long 0 to uint
cast long 0 to long
cast long 0 to ulong
cast long 0 to float
cast long 0 to double
; cast ulong to ...
cast ulong 1 to bool
cast ulong 1 to sbyte
cast ulong 1 to ubyte
cast ulong 1 to short
cast ulong 1 to ushort
cast ulong 1 to int
cast ulong 1 to uint
cast ulong 1 to long
cast ulong 1 to ulong
cast ulong 1 to float
cast ulong 0 to double
; cast float to ...
;cast float 0.0 to bool
cast float 0.0 to float
cast float 0.0 to double
; cast double to ...
;cast double 0.0 to bool
cast double 0.0 to sbyte
cast double 0.0 to ubyte
cast double 0.0 to short
cast double 0.0 to ushort
cast double 0.0 to int
cast double 0.0 to uint
cast double 0.0 to long
;cast double 0.0 to ulong
cast double 0.0 to float
cast double 0.0 to double
ret int 0
}