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