OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_CCTEST_COMPILER_VALUE_HELPER_H_ | 5 #ifndef V8_CCTEST_COMPILER_VALUE_HELPER_H_ |
6 #define V8_CCTEST_COMPILER_VALUE_HELPER_H_ | 6 #define V8_CCTEST_COMPILER_VALUE_HELPER_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include "src/compiler/common-operator.h" | 10 #include "src/compiler/common-operator.h" |
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
305 #define FOR_UINT32_INPUTS(var) FOR_INPUTS(uint32_t, uint32, var) | 305 #define FOR_UINT32_INPUTS(var) FOR_INPUTS(uint32_t, uint32, var) |
306 #define FOR_INT64_INPUTS(var) FOR_INPUTS(int64_t, int64, var) | 306 #define FOR_INT64_INPUTS(var) FOR_INPUTS(int64_t, int64, var) |
307 #define FOR_UINT64_INPUTS(var) FOR_INPUTS(uint64_t, uint64, var) | 307 #define FOR_UINT64_INPUTS(var) FOR_INPUTS(uint64_t, uint64, var) |
308 #define FOR_FLOAT32_INPUTS(var) FOR_INPUTS(float, float32, var) | 308 #define FOR_FLOAT32_INPUTS(var) FOR_INPUTS(float, float32, var) |
309 #define FOR_FLOAT64_INPUTS(var) FOR_INPUTS(double, float64, var) | 309 #define FOR_FLOAT64_INPUTS(var) FOR_INPUTS(double, float64, var) |
310 | 310 |
311 #define FOR_INT32_SHIFTS(var) for (int32_t var = 0; var < 32; var++) | 311 #define FOR_INT32_SHIFTS(var) for (int32_t var = 0; var < 32; var++) |
312 | 312 |
313 #define FOR_UINT32_SHIFTS(var) for (uint32_t var = 0; var < 32; var++) | 313 #define FOR_UINT32_SHIFTS(var) for (uint32_t var = 0; var < 32; var++) |
314 | 314 |
| 315 // TODO(bmeurer): Drop this crap once we switch to GTest/Gmock. |
| 316 static inline void CheckFloatEq(volatile float x, volatile float y) { |
| 317 if (std::isnan(x)) { |
| 318 CHECK(std::isnan(y)); |
| 319 } else { |
| 320 CHECK_EQ(x, y); |
| 321 } |
| 322 } |
| 323 |
| 324 static inline void CheckDoubleEq(volatile double x, volatile double y) { |
| 325 if (std::isnan(x)) { |
| 326 CHECK(std::isnan(y)); |
| 327 } else { |
| 328 CHECK_EQ(x, y); |
| 329 } |
| 330 } |
| 331 |
315 } // namespace compiler | 332 } // namespace compiler |
316 } // namespace internal | 333 } // namespace internal |
317 } // namespace v8 | 334 } // namespace v8 |
318 | 335 |
319 #endif // V8_CCTEST_COMPILER_VALUE_HELPER_H_ | 336 #endif // V8_CCTEST_COMPILER_VALUE_HELPER_H_ |
OLD | NEW |