1*9880d681SAndroid Build Coastguard Worker; RUN: llvm-as < %s | llvm-dis > %t1.ll 2*9880d681SAndroid Build Coastguard Worker; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll 3*9880d681SAndroid Build Coastguard Worker; RUN: diff %t1.ll %t2.ll 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Workerdefine void @"NewCasts" (i16 %x) { 6*9880d681SAndroid Build Coastguard Worker %a = zext i16 %x to i32 7*9880d681SAndroid Build Coastguard Worker %b = sext i16 %x to i32 8*9880d681SAndroid Build Coastguard Worker %c = trunc i16 %x to i8 9*9880d681SAndroid Build Coastguard Worker %d = uitofp i16 %x to float 10*9880d681SAndroid Build Coastguard Worker %e = sitofp i16 %x to double 11*9880d681SAndroid Build Coastguard Worker %f = fptoui float %d to i16 12*9880d681SAndroid Build Coastguard Worker %g = fptosi double %e to i16 13*9880d681SAndroid Build Coastguard Worker %i = fpext float %d to double 14*9880d681SAndroid Build Coastguard Worker %j = fptrunc double %i to float 15*9880d681SAndroid Build Coastguard Worker %k = bitcast i32 %a to float 16*9880d681SAndroid Build Coastguard Worker %l = inttoptr i16 %x to i32* 17*9880d681SAndroid Build Coastguard Worker %m = ptrtoint i32* %l to i64 18*9880d681SAndroid Build Coastguard Worker %n = insertelement <4 x i32> undef, i32 %a, i32 0 19*9880d681SAndroid Build Coastguard Worker %o = sitofp <4 x i32> %n to <4 x float> 20*9880d681SAndroid Build Coastguard Worker %p = uitofp <4 x i32> %n to <4 x float> 21*9880d681SAndroid Build Coastguard Worker %q = fptosi <4 x float> %p to <4 x i32> 22*9880d681SAndroid Build Coastguard Worker %r = fptoui <4 x float> %p to <4 x i32> 23*9880d681SAndroid Build Coastguard Worker %s = inttoptr <4 x i32> %n to <4 x i32*> 24*9880d681SAndroid Build Coastguard Worker %t = addrspacecast <4 x i32*> %s to <4 x i32 addrspace(1)*> 25*9880d681SAndroid Build Coastguard Worker %z = addrspacecast <4 x i32*> %s to <4 x float addrspace(2)*> 26*9880d681SAndroid Build Coastguard Worker ret void 27*9880d681SAndroid Build Coastguard Worker} 28*9880d681SAndroid Build Coastguard Worker 29*9880d681SAndroid Build Coastguard Worker 30*9880d681SAndroid Build Coastguard Workerdefine i16 @"ZExtConst" () { 31*9880d681SAndroid Build Coastguard Worker ret i16 trunc ( i32 zext ( i16 42 to i32) to i16 ) 32*9880d681SAndroid Build Coastguard Worker} 33*9880d681SAndroid Build Coastguard Worker 34*9880d681SAndroid Build Coastguard Workerdefine i16 @"SExtConst" () { 35*9880d681SAndroid Build Coastguard Worker ret i16 trunc (i32 sext (i16 42 to i32) to i16 ) 36*9880d681SAndroid Build Coastguard Worker} 37