29 lines
694 B
LLVM
29 lines
694 B
LLVM
; RUN: llvm-as %s -o - | llvm-dis > %t1.ll
|
|
; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
|
|
; RUN: diff %t1.ll %t2.ll
|
|
|
|
define void @"NewCasts" (i17 %x) {
|
|
%a = zext i17 %x to i32
|
|
%b = sext i17 %x to i32
|
|
%c = trunc i17 %x to i8
|
|
%d = uitofp i17 %x to float
|
|
%e = sitofp i17 %x to double
|
|
%f = fptoui float %d to i17
|
|
%g = fptosi double %e to i17
|
|
%i = fpext float %d to double
|
|
%j = fptrunc double %i to float
|
|
%k = bitcast i32 %a to float
|
|
%l = inttoptr i17 %x to i32*
|
|
%m = ptrtoint i32* %l to i64
|
|
ret void
|
|
}
|
|
|
|
|
|
define i17 @"ZExtConst" () {
|
|
ret i17 trunc ( i32 zext ( i17 42 to i32) to i17 )
|
|
}
|
|
|
|
define i17 @"SExtConst" () {
|
|
ret i17 trunc (i32 sext (i17 42 to i32) to i17 )
|
|
}
|