blob: a26918b8f2428b08b8c3ffcd80d5cd9044b9474d [file] [log] [blame]
Dan Gohmanfce288f2009-09-09 00:09:15 +00001; RUN: llc < %s
Dan Gohman7f8613e2008-08-14 20:04:46 +00002; PR2671
3
Nate Begeman5f969432009-04-27 18:42:40 +00004define void @a(<2 x double>* %p, <2 x i8>* %q) {
5 %t = load <2 x double>* %p
6 %r = fptosi <2 x double> %t to <2 x i8>
7 store <2 x i8> %r, <2 x i8>* %q
8 ret void
9}
10define void @b(<2 x double>* %p, <2 x i8>* %q) {
11 %t = load <2 x double>* %p
12 %r = fptoui <2 x double> %t to <2 x i8>
13 store <2 x i8> %r, <2 x i8>* %q
14 ret void
15}
16define void @c(<2 x i8>* %p, <2 x double>* %q) {
17 %t = load <2 x i8>* %p
18 %r = sitofp <2 x i8> %t to <2 x double>
19 store <2 x double> %r, <2 x double>* %q
20 ret void
21}
22define void @d(<2 x i8>* %p, <2 x double>* %q) {
23 %t = load <2 x i8>* %p
24 %r = uitofp <2 x i8> %t to <2 x double>
25 store <2 x double> %r, <2 x double>* %q
26 ret void
27}
28define void @e(<2 x i8>* %p, <2 x i16>* %q) {
29 %t = load <2 x i8>* %p
30 %r = sext <2 x i8> %t to <2 x i16>
31 store <2 x i16> %r, <2 x i16>* %q
32 ret void
33}
34define void @f(<2 x i8>* %p, <2 x i16>* %q) {
35 %t = load <2 x i8>* %p
36 %r = zext <2 x i8> %t to <2 x i16>
37 store <2 x i16> %r, <2 x i16>* %q
38 ret void
39}
Dan Gohman7f8613e2008-08-14 20:04:46 +000040define void @g(<2 x i16>* %p, <2 x i8>* %q) {
Nate Begeman5f969432009-04-27 18:42:40 +000041 %t = load <2 x i16>* %p
42 %r = trunc <2 x i16> %t to <2 x i8>
43 store <2 x i8> %r, <2 x i8>* %q
44 ret void
Dan Gohman7f8613e2008-08-14 20:04:46 +000045}