OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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 #include <stdint.h> | 5 #include <stdint.h> |
6 #include <stdlib.h> | 6 #include <stdlib.h> |
7 #include <string.h> | 7 #include <string.h> |
8 | 8 |
9 #include "src/wasm/wasm-macro-gen.h" | 9 #include "src/wasm/wasm-macro-gen.h" |
10 | 10 |
(...skipping 2612 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2623 expected = *i; | 2623 expected = *i; |
2624 } else { | 2624 } else { |
2625 expected = *j; | 2625 expected = *j; |
2626 } | 2626 } |
2627 | 2627 |
2628 CHECK_DOUBLE_EQ(expected, r.Call(*i, *j)); | 2628 CHECK_DOUBLE_EQ(expected, r.Call(*i, *j)); |
2629 } | 2629 } |
2630 } | 2630 } |
2631 } | 2631 } |
2632 | 2632 |
2633 // TODO(ahaas): Fix on arm and mips and reenable. | 2633 // TODO(ahaas): Fix on mips and reenable. |
2634 #if !V8_TARGET_ARCH_ARM && !V8_TARGET_ARCH_MIPS && !V8_TARGET_ARCH_MIPS64 | 2634 #if !V8_TARGET_ARCH_MIPS && !V8_TARGET_ARCH_MIPS64 |
2635 | 2635 |
2636 TEST(Run_Wasm_F32Min_Snan) { | 2636 TEST(Run_Wasm_F32Min_Snan) { |
2637 // Test that the instruction does not return a signalling NaN. | 2637 // Test that the instruction does not return a signalling NaN. |
2638 { | 2638 { |
2639 WasmRunner<float> r; | 2639 WasmRunner<float> r; |
2640 BUILD(r, | 2640 BUILD(r, |
2641 WASM_F32_MIN(WASM_F32(bit_cast<float>(0xff80f1e2)), WASM_F32(57.67))); | 2641 WASM_F32_MIN(WASM_F32(bit_cast<float>(0xff80f1e2)), WASM_F32(57.67))); |
2642 CHECK_EQ(0xffc0f1e2, bit_cast<uint32_t>(r.Call())); | 2642 CHECK_EQ(0xffc0f1e2, bit_cast<uint32_t>(r.Call())); |
2643 } | 2643 } |
2644 { | 2644 { |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2822 WasmRunner<int32_t> r(MachineType::Int32(), MachineType::Int32()); | 2822 WasmRunner<int32_t> r(MachineType::Int32(), MachineType::Int32()); |
2823 BUILD(r, WASM_I32_REMS(WASM_GET_LOCAL(0), WASM_GET_LOCAL(1)), WASM_ZERO); | 2823 BUILD(r, WASM_I32_REMS(WASM_GET_LOCAL(0), WASM_GET_LOCAL(1)), WASM_ZERO); |
2824 const int32_t kMin = std::numeric_limits<int32_t>::min(); | 2824 const int32_t kMin = std::numeric_limits<int32_t>::min(); |
2825 CHECK_EQ(0, r.Call(133, 100)); | 2825 CHECK_EQ(0, r.Call(133, 100)); |
2826 CHECK_EQ(0, r.Call(kMin, -1)); | 2826 CHECK_EQ(0, r.Call(kMin, -1)); |
2827 CHECK_EQ(0, r.Call(0, 1)); | 2827 CHECK_EQ(0, r.Call(0, 1)); |
2828 CHECK_TRAP(r.Call(100, 0)); | 2828 CHECK_TRAP(r.Call(100, 0)); |
2829 CHECK_TRAP(r.Call(-1001, 0)); | 2829 CHECK_TRAP(r.Call(-1001, 0)); |
2830 CHECK_TRAP(r.Call(kMin, 0)); | 2830 CHECK_TRAP(r.Call(kMin, 0)); |
2831 } | 2831 } |
OLD | NEW |