1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s 2*9880d681SAndroid Build Coastguard Worker; PR2671 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdefine void @a(<2 x double>* %p, <2 x i8>* %q) { 5*9880d681SAndroid Build Coastguard Worker %t = load <2 x double>, <2 x double>* %p 6*9880d681SAndroid Build Coastguard Worker %r = fptosi <2 x double> %t to <2 x i8> 7*9880d681SAndroid Build Coastguard Worker store <2 x i8> %r, <2 x i8>* %q 8*9880d681SAndroid Build Coastguard Worker ret void 9*9880d681SAndroid Build Coastguard Worker} 10*9880d681SAndroid Build Coastguard Workerdefine void @b(<2 x double>* %p, <2 x i8>* %q) { 11*9880d681SAndroid Build Coastguard Worker %t = load <2 x double>, <2 x double>* %p 12*9880d681SAndroid Build Coastguard Worker %r = fptoui <2 x double> %t to <2 x i8> 13*9880d681SAndroid Build Coastguard Worker store <2 x i8> %r, <2 x i8>* %q 14*9880d681SAndroid Build Coastguard Worker ret void 15*9880d681SAndroid Build Coastguard Worker} 16*9880d681SAndroid Build Coastguard Workerdefine void @c(<2 x i8>* %p, <2 x double>* %q) { 17*9880d681SAndroid Build Coastguard Worker %t = load <2 x i8>, <2 x i8>* %p 18*9880d681SAndroid Build Coastguard Worker %r = sitofp <2 x i8> %t to <2 x double> 19*9880d681SAndroid Build Coastguard Worker store <2 x double> %r, <2 x double>* %q 20*9880d681SAndroid Build Coastguard Worker ret void 21*9880d681SAndroid Build Coastguard Worker} 22*9880d681SAndroid Build Coastguard Workerdefine void @d(<2 x i8>* %p, <2 x double>* %q) { 23*9880d681SAndroid Build Coastguard Worker %t = load <2 x i8>, <2 x i8>* %p 24*9880d681SAndroid Build Coastguard Worker %r = uitofp <2 x i8> %t to <2 x double> 25*9880d681SAndroid Build Coastguard Worker store <2 x double> %r, <2 x double>* %q 26*9880d681SAndroid Build Coastguard Worker ret void 27*9880d681SAndroid Build Coastguard Worker} 28*9880d681SAndroid Build Coastguard Workerdefine void @e(<2 x i8>* %p, <2 x i16>* %q) { 29*9880d681SAndroid Build Coastguard Worker %t = load <2 x i8>, <2 x i8>* %p 30*9880d681SAndroid Build Coastguard Worker %r = sext <2 x i8> %t to <2 x i16> 31*9880d681SAndroid Build Coastguard Worker store <2 x i16> %r, <2 x i16>* %q 32*9880d681SAndroid Build Coastguard Worker ret void 33*9880d681SAndroid Build Coastguard Worker} 34*9880d681SAndroid Build Coastguard Workerdefine void @f(<2 x i8>* %p, <2 x i16>* %q) { 35*9880d681SAndroid Build Coastguard Worker %t = load <2 x i8>, <2 x i8>* %p 36*9880d681SAndroid Build Coastguard Worker %r = zext <2 x i8> %t to <2 x i16> 37*9880d681SAndroid Build Coastguard Worker store <2 x i16> %r, <2 x i16>* %q 38*9880d681SAndroid Build Coastguard Worker ret void 39*9880d681SAndroid Build Coastguard Worker} 40*9880d681SAndroid Build Coastguard Workerdefine void @g(<2 x i16>* %p, <2 x i8>* %q) { 41*9880d681SAndroid Build Coastguard Worker %t = load <2 x i16>, <2 x i16>* %p 42*9880d681SAndroid Build Coastguard Worker %r = trunc <2 x i16> %t to <2 x i8> 43*9880d681SAndroid Build Coastguard Worker store <2 x i8> %r, <2 x i8>* %q 44*9880d681SAndroid Build Coastguard Worker ret void 45*9880d681SAndroid Build Coastguard Worker} 46