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 "src/compiler/wasm-compiler.h" | 5 #include "src/compiler/wasm-compiler.h" |
6 | 6 |
7 #include "src/isolate-inl.h" | 7 #include "src/isolate-inl.h" |
8 | 8 |
9 #include "src/base/platform/elapsed-timer.h" | 9 #include "src/base/platform/elapsed-timer.h" |
10 #include "src/base/platform/platform.h" | 10 #include "src/base/platform/platform.h" |
(...skipping 1587 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1598 const Operator* load_op = jsgraph()->machine()->Load(type); | 1598 const Operator* load_op = jsgraph()->machine()->Load(type); |
1599 | 1599 |
1600 Node* load = | 1600 Node* load = |
1601 graph()->NewNode(load_op, stack_slot_param0, jsgraph()->Int32Constant(0), | 1601 graph()->NewNode(load_op, stack_slot_param0, jsgraph()->Int32Constant(0), |
1602 *effect_, *control_); | 1602 *effect_, *control_); |
1603 *effect_ = load; | 1603 *effect_ = load; |
1604 return load; | 1604 return load; |
1605 } | 1605 } |
1606 | 1606 |
1607 Node* WasmGraphBuilder::BuildF32SConvertI64(Node* input) { | 1607 Node* WasmGraphBuilder::BuildF32SConvertI64(Node* input) { |
| 1608 // TODO(titzer/bradnelson): Check handlng of asm.js case. |
1608 return BuildIntToFloatConversionInstruction( | 1609 return BuildIntToFloatConversionInstruction( |
1609 input, ExternalReference::wasm_int64_to_float32(jsgraph()->isolate()), | 1610 input, ExternalReference::wasm_int64_to_float32(jsgraph()->isolate()), |
1610 MachineRepresentation::kWord64, MachineType::Float32()); | 1611 MachineRepresentation::kWord64, MachineType::Float32()); |
1611 } | 1612 } |
1612 Node* WasmGraphBuilder::BuildF32UConvertI64(Node* input) { | 1613 Node* WasmGraphBuilder::BuildF32UConvertI64(Node* input) { |
| 1614 // TODO(titzer/bradnelson): Check handlng of asm.js case. |
1613 return BuildIntToFloatConversionInstruction( | 1615 return BuildIntToFloatConversionInstruction( |
1614 input, ExternalReference::wasm_uint64_to_float32(jsgraph()->isolate()), | 1616 input, ExternalReference::wasm_uint64_to_float32(jsgraph()->isolate()), |
1615 MachineRepresentation::kWord64, MachineType::Float32()); | 1617 MachineRepresentation::kWord64, MachineType::Float32()); |
1616 } | 1618 } |
1617 Node* WasmGraphBuilder::BuildF64SConvertI64(Node* input) { | 1619 Node* WasmGraphBuilder::BuildF64SConvertI64(Node* input) { |
1618 return BuildIntToFloatConversionInstruction( | 1620 return BuildIntToFloatConversionInstruction( |
1619 input, ExternalReference::wasm_int64_to_float64(jsgraph()->isolate()), | 1621 input, ExternalReference::wasm_int64_to_float64(jsgraph()->isolate()), |
1620 MachineRepresentation::kWord64, MachineType::Float64()); | 1622 MachineRepresentation::kWord64, MachineType::Float64()); |
1621 } | 1623 } |
1622 Node* WasmGraphBuilder::BuildF64UConvertI64(Node* input) { | 1624 Node* WasmGraphBuilder::BuildF64UConvertI64(Node* input) { |
(...skipping 1030 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2653 static_cast<int>(function.code_end_offset - function.code_start_offset), | 2655 static_cast<int>(function.code_end_offset - function.code_start_offset), |
2654 decode_ms, static_cast<int>(graph.NodeCount()), compile_ms); | 2656 decode_ms, static_cast<int>(graph.NodeCount()), compile_ms); |
2655 } | 2657 } |
2656 return code; | 2658 return code; |
2657 } | 2659 } |
2658 | 2660 |
2659 | 2661 |
2660 } // namespace compiler | 2662 } // namespace compiler |
2661 } // namespace internal | 2663 } // namespace internal |
2662 } // namespace v8 | 2664 } // namespace v8 |
OLD | NEW |