Index: test/cctest/compiler/test-run-machops.cc |
diff --git a/test/cctest/compiler/test-run-machops.cc b/test/cctest/compiler/test-run-machops.cc |
index fba9e0e1a505e8ca89dd2866a51f50bb1af9c7fa..65843a2e27a52c4490d96e5cc08f46eee4155be7 100644 |
--- a/test/cctest/compiler/test-run-machops.cc |
+++ b/test/cctest/compiler/test-run-machops.cc |
@@ -5653,78 +5653,6 @@ TEST(RunCallCFunction8) { |
} |
#endif // USE_SIMULATOR |
-template <typename T> |
-void TestExternalReferenceFunction( |
- BufferedRawMachineAssemblerTester<int32_t>* m, ExternalReference ref, |
- T (*comparison)(T)) { |
- T parameter; |
- |
- Node* function = m->ExternalConstant(ref); |
- m->CallCFunction1(MachineType::Pointer(), MachineType::Pointer(), function, |
- m->PointerConstant(¶meter)); |
- m->Return(m->Int32Constant(4356)); |
- FOR_FLOAT64_INPUTS(i) { |
- parameter = *i; |
- m->Call(); |
- CheckDoubleEq(comparison(*i), parameter); |
- } |
-} |
- |
-TEST(RunCallExternalReferenceF32Trunc) { |
- BufferedRawMachineAssemblerTester<int32_t> m; |
- ExternalReference ref = |
- ExternalReference::f32_trunc_wrapper_function(m.isolate()); |
- TestExternalReferenceFunction<float>(&m, ref, truncf); |
-} |
- |
-TEST(RunCallExternalReferenceF32Floor) { |
- BufferedRawMachineAssemblerTester<int32_t> m; |
- ExternalReference ref = |
- ExternalReference::f32_floor_wrapper_function(m.isolate()); |
- TestExternalReferenceFunction<float>(&m, ref, floorf); |
-} |
- |
-TEST(RunCallExternalReferenceF32Ceil) { |
- BufferedRawMachineAssemblerTester<int32_t> m; |
- ExternalReference ref = |
- ExternalReference::f32_ceil_wrapper_function(m.isolate()); |
- TestExternalReferenceFunction<float>(&m, ref, ceilf); |
-} |
- |
-TEST(RunCallExternalReferenceF32RoundTiesEven) { |
- BufferedRawMachineAssemblerTester<int32_t> m; |
- ExternalReference ref = |
- ExternalReference::f32_nearest_int_wrapper_function(m.isolate()); |
- TestExternalReferenceFunction<float>(&m, ref, nearbyintf); |
-} |
- |
-TEST(RunCallExternalReferenceF64Trunc) { |
- BufferedRawMachineAssemblerTester<int32_t> m; |
- ExternalReference ref = |
- ExternalReference::f64_trunc_wrapper_function(m.isolate()); |
- TestExternalReferenceFunction<double>(&m, ref, trunc); |
-} |
- |
-TEST(RunCallExternalReferenceF64Floor) { |
- BufferedRawMachineAssemblerTester<int32_t> m; |
- ExternalReference ref = |
- ExternalReference::f64_floor_wrapper_function(m.isolate()); |
- TestExternalReferenceFunction<double>(&m, ref, floor); |
-} |
- |
-TEST(RunCallExternalReferenceF64Ceil) { |
- BufferedRawMachineAssemblerTester<int32_t> m; |
- ExternalReference ref = |
- ExternalReference::f64_ceil_wrapper_function(m.isolate()); |
- TestExternalReferenceFunction<double>(&m, ref, ceil); |
-} |
- |
-TEST(RunCallExternalReferenceF64RoundTiesEven) { |
- BufferedRawMachineAssemblerTester<int32_t> m; |
- ExternalReference ref = |
- ExternalReference::f64_nearest_int_wrapper_function(m.isolate()); |
- TestExternalReferenceFunction<double>(&m, ref, nearbyint); |
-} |
#if V8_TARGET_ARCH_64_BIT |
// TODO(titzer): run int64 tests on all platforms when supported. |
@@ -6122,6 +6050,14 @@ TEST(RunRoundUint64ToFloat32) { |
{0x1ffffffffff, 0x54000000}, |
{0x8000008000000000, 0x5f000000}, |
{0x8000008000000001, 0x5f000001}, |
+ {0x8000008000000002, 0x5f000001}, |
+ {0x8000008000000004, 0x5f000001}, |
+ {0x8000008000000008, 0x5f000001}, |
+ {0x8000008000000010, 0x5f000001}, |
+ {0x8000008000000020, 0x5f000001}, |
+ {0x8000008000000040, 0x5f000001}, |
+ {0x8000008000000080, 0x5f000001}, |
+ {0x8000008000000100, 0x5f000001}, |
{0x8000000000000400, 0x5f000000}, |
{0x8000000000000401, 0x5f000000}}; |