Don't assume an empty stderr.
[oota-llvm.git] / test / Bitcode / binaryFloatInstructions.3.2.ll
1 ; RUN:  llvm-dis < %s.bc| FileCheck %s\r
2 \r
3 ; BinaryFloatOperation.3.2.ll.bc was generated by passing this file to llvm-as-3.2.\r
4 ; The test checks that LLVM does not misread binary float instructions from\r
5 ; older bitcode files.\r
6 \r
7 define void @fadd(float %x1, double %x2 ,half %x3, fp128 %x4, x86_fp80 %x5, ppc_fp128 %x6){\r
8 entry:\r
9 ; CHECK: %res1 = fadd float %x1, %x1\r
10   %res1 = fadd float %x1, %x1\r
11 \r
12 ; CHECK-NEXT: %res2 = fadd double %x2, %x2\r
13   %res2 = fadd double %x2, %x2\r
14 \r
15 ; CHECK-NEXT: %res3 = fadd half %x3, %x3\r
16   %res3 = fadd half %x3, %x3\r
17 \r
18 ; CHECK-NEXT: %res4 = fadd fp128 %x4, %x4\r
19   %res4 = fadd fp128 %x4, %x4\r
20 \r
21 ; CHECK-NEXT: %res5 = fadd x86_fp80 %x5, %x5\r
22   %res5 = fadd x86_fp80 %x5, %x5\r
23   \r
24 ; CHECK-NEXT: %res6 = fadd ppc_fp128 %x6, %x6\r
25   %res6 = fadd ppc_fp128 %x6, %x6\r
26   \r
27   ret void\r
28 }\r
29 \r
30 define void @faddFloatVec(<2 x float> %x1, <3 x float> %x2 ,<4 x float> %x3, <8 x float> %x4, <16 x float> %x5){\r
31 entry:\r
32 ; CHECK: %res1 = fadd <2 x float> %x1, %x1\r
33   %res1 = fadd <2 x float> %x1, %x1\r
34 \r
35 ; CHECK-NEXT: %res2 = fadd <3 x float> %x2, %x2\r
36   %res2 = fadd <3 x float> %x2, %x2\r
37 \r
38 ; CHECK-NEXT: %res3 = fadd <4 x float> %x3, %x3\r
39   %res3 = fadd <4 x float> %x3, %x3\r
40 \r
41 ; CHECK-NEXT: %res4 = fadd <8 x float> %x4, %x4\r
42   %res4 = fadd <8 x float> %x4, %x4\r
43 \r
44 ; CHECK-NEXT: %res5 = fadd <16 x float> %x5, %x5\r
45   %res5 = fadd <16 x float> %x5, %x5\r
46   \r
47   ret void\r
48 }\r
49 \r
50 define void @faddDoubleVec(<2 x double> %x1, <3 x double> %x2 ,<4 x double> %x3, <8 x double> %x4, <16 x double> %x5){\r
51 entry:\r
52 ; CHECK: %res1 = fadd <2 x double> %x1, %x1\r
53   %res1 = fadd <2 x double> %x1, %x1\r
54 \r
55 ; CHECK-NEXT: %res2 = fadd <3 x double> %x2, %x2\r
56   %res2 = fadd <3 x double> %x2, %x2\r
57 \r
58 ; CHECK-NEXT: %res3 = fadd <4 x double> %x3, %x3\r
59   %res3 = fadd <4 x double> %x3, %x3\r
60 \r
61 ; CHECK-NEXT: %res4 = fadd <8 x double> %x4, %x4\r
62   %res4 = fadd <8 x double> %x4, %x4\r
63 \r
64 ; CHECK-NEXT: %res5 = fadd <16 x double> %x5, %x5\r
65   %res5 = fadd <16 x double> %x5, %x5\r
66   \r
67   ret void\r
68 }\r
69 \r
70 define void @faddHalfVec(<2 x half> %x1, <3 x half> %x2 ,<4 x half> %x3, <8 x half> %x4, <16 x half> %x5){\r
71 entry:\r
72 ; CHECK: %res1 = fadd <2 x half> %x1, %x1\r
73   %res1 = fadd <2 x half> %x1, %x1\r
74 \r
75 ; CHECK-NEXT: %res2 = fadd <3 x half> %x2, %x2\r
76   %res2 = fadd <3 x half> %x2, %x2\r
77 \r
78 ; CHECK-NEXT: %res3 = fadd <4 x half> %x3, %x3\r
79   %res3 = fadd <4 x half> %x3, %x3\r
80 \r
81 ; CHECK-NEXT: %res4 = fadd <8 x half> %x4, %x4\r
82   %res4 = fadd <8 x half> %x4, %x4\r
83 \r
84 ; CHECK-NEXT: %res5 = fadd <16 x half> %x5, %x5\r
85   %res5 = fadd <16 x half> %x5, %x5\r
86   \r
87   ret void\r
88 }\r
89 \r
90 define void @fsub(float %x1){\r
91 entry:\r
92 ; CHECK: %res1 = fsub float %x1, %x1\r
93   %res1 = fsub float %x1, %x1\r
94 \r
95   ret void\r
96 }\r
97 \r
98 define void @fmul(float %x1){\r
99 entry:\r
100 ; CHECK: %res1 = fmul float %x1, %x1\r
101   %res1 = fmul float %x1, %x1\r
102   \r
103   ret void\r
104 }\r
105 \r
106 define void @fdiv(float %x1){\r
107 entry:\r
108 ; CHECK: %res1 = fdiv float %x1, %x1\r
109   %res1 = fdiv float %x1, %x1\r
110   \r
111   ret void\r
112 }\r
113 \r
114 define void @frem(float %x1){\r
115 entry:\r
116 ; CHECK: %res1 = frem float %x1, %x1\r
117   %res1 = frem float %x1, %x1\r
118 \r
119   ret void\r
120 }\r