OLD | NEW |
1 //===- subzero/crosstest/test_fcmp_main.cpp - Driver for tests ------------===// | 1 //===- subzero/crosstest/test_fcmp_main.cpp - Driver for tests ------------===// |
2 // | 2 // |
3 // The Subzero Code Generator | 3 // The Subzero Code Generator |
4 // | 4 // |
5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 // | 9 // |
10 // Driver for cross testing the fcmp bitcode instruction | 10 // Driver for cross testing the fcmp bitcode instruction |
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
109 std::cout << Funcs[f].Name << "Double(" << Value1Double << ", " | 109 std::cout << Funcs[f].Name << "Double(" << Value1Double << ", " |
110 << Value2Double << "): sz=" << ResultSz | 110 << Value2Double << "): sz=" << ResultSz |
111 << " llc=" << ResultLlc << "\n"; | 111 << " llc=" << ResultLlc << "\n"; |
112 } | 112 } |
113 } | 113 } |
114 } | 114 } |
115 } | 115 } |
116 } | 116 } |
117 | 117 |
118 void testsVector(size_t &TotalTests, size_t &Passes, size_t &Failures) { | 118 void testsVector(size_t &TotalTests, size_t &Passes, size_t &Failures) { |
| 119 #ifndef ARM32 |
119 typedef v4si32 (*FuncTypeVector)(v4f32, v4f32); | 120 typedef v4si32 (*FuncTypeVector)(v4f32, v4f32); |
120 static struct { | 121 static struct { |
121 const char *Name; | 122 const char *Name; |
122 FuncTypeVector FuncVectorSz; | 123 FuncTypeVector FuncVectorSz; |
123 FuncTypeVector FuncVectorLlc; | 124 FuncTypeVector FuncVectorLlc; |
124 } Funcs[] = { | 125 } Funcs[] = { |
125 #define X(cmp) \ | 126 #define X(cmp) \ |
126 { "fcmp" STR(cmp), Subzero_fcmp##cmp##Vector, fcmp##cmp##Vector } \ | 127 { "fcmp" STR(cmp), Subzero_fcmp##cmp##Vector, fcmp##cmp##Vector } \ |
127 , | 128 , |
128 FCMP_TABLE | 129 FCMP_TABLE |
(...skipping 21 matching lines...) Expand all Loading... |
150 ++Passes; | 151 ++Passes; |
151 } else { | 152 } else { |
152 ++Failures; | 153 ++Failures; |
153 std::cout << Funcs[f].Name << "Vector(" << vectAsString<v4f32>(Value1) | 154 std::cout << Funcs[f].Name << "Vector(" << vectAsString<v4f32>(Value1) |
154 << ", " << vectAsString<v4f32>(Value2) | 155 << ", " << vectAsString<v4f32>(Value2) |
155 << "): sz=" << vectAsString<v4si32>(ResultSz) | 156 << "): sz=" << vectAsString<v4si32>(ResultSz) |
156 << " llc=" << vectAsString<v4si32>(ResultLlc) << "\n"; | 157 << " llc=" << vectAsString<v4si32>(ResultLlc) << "\n"; |
157 } | 158 } |
158 } | 159 } |
159 } | 160 } |
| 161 #endif // ARM32 |
160 } | 162 } |
161 | 163 |
162 #ifdef X8664_STACK_HACK | 164 #ifdef X8664_STACK_HACK |
163 extern "C" int wrapped_main(int argc, char *argv[]) { | 165 extern "C" int wrapped_main(int argc, char *argv[]) { |
164 #else // !defined(X8664_STACK_HACK) | 166 #else // !defined(X8664_STACK_HACK) |
165 int main(int argc, char *argv[]) { | 167 int main(int argc, char *argv[]) { |
166 #endif // X8664_STACK_HACK | 168 #endif // X8664_STACK_HACK |
167 size_t TotalTests = 0; | 169 size_t TotalTests = 0; |
168 size_t Passes = 0; | 170 size_t Passes = 0; |
169 size_t Failures = 0; | 171 size_t Failures = 0; |
170 | 172 |
171 initializeValues(); | 173 initializeValues(); |
172 | 174 |
173 testsScalar(TotalTests, Passes, Failures); | 175 testsScalar(TotalTests, Passes, Failures); |
174 testsVector(TotalTests, Passes, Failures); | 176 testsVector(TotalTests, Passes, Failures); |
175 | 177 |
176 std::cout << "TotalTests=" << TotalTests << " Passes=" << Passes | 178 std::cout << "TotalTests=" << TotalTests << " Passes=" << Passes |
177 << " Failures=" << Failures << "\n"; | 179 << " Failures=" << Failures << "\n"; |
178 return Failures; | 180 return Failures; |
179 } | 181 } |
OLD | NEW |