| 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 482 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 493 // easier when I do them one by one. | 493 // easier when I do them one by one. |
| 494 // kExprI64Add: | 494 // kExprI64Add: |
| 495 case wasm::kExprI64Add: | 495 case wasm::kExprI64Add: |
| 496 op = m->Int64Add(); | 496 op = m->Int64Add(); |
| 497 break; | 497 break; |
| 498 // kExprI64Sub: | 498 // kExprI64Sub: |
| 499 case wasm::kExprI64Sub: | 499 case wasm::kExprI64Sub: |
| 500 op = m->Int64Sub(); | 500 op = m->Int64Sub(); |
| 501 break; | 501 break; |
| 502 // kExprI64Mul: | 502 // kExprI64Mul: |
| 503 case wasm::kExprI64Mul: |
| 504 op = m->Int64Mul(); |
| 505 break; |
| 503 // kExprI64DivS: | 506 // kExprI64DivS: |
| 504 case wasm::kExprI64DivS: | 507 case wasm::kExprI64DivS: |
| 505 return BuildI64DivS(left, right); | 508 return BuildI64DivS(left, right); |
| 506 // kExprI64DivU: | 509 // kExprI64DivU: |
| 507 case wasm::kExprI64DivU: | 510 case wasm::kExprI64DivU: |
| 508 return BuildI64DivU(left, right); | 511 return BuildI64DivU(left, right); |
| 509 // kExprI64RemS: | 512 // kExprI64RemS: |
| 510 case wasm::kExprI64RemS: | 513 case wasm::kExprI64RemS: |
| 511 return BuildI64RemS(left, right); | 514 return BuildI64RemS(left, right); |
| 512 // kExprI64RemU: | 515 // kExprI64RemU: |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 564 std::swap(left, right); | 567 std::swap(left, right); |
| 565 break; | 568 break; |
| 566 case wasm::kExprI64GeU: | 569 case wasm::kExprI64GeU: |
| 567 op = m->Uint64LessThanOrEqual(); | 570 op = m->Uint64LessThanOrEqual(); |
| 568 std::swap(left, right); | 571 std::swap(left, right); |
| 569 break; | 572 break; |
| 570 | 573 |
| 571 #if WASM_64 | 574 #if WASM_64 |
| 572 // Opcodes only supported on 64-bit platforms. | 575 // Opcodes only supported on 64-bit platforms. |
| 573 // TODO(titzer): query the machine operator builder here instead of #ifdef. | 576 // TODO(titzer): query the machine operator builder here instead of #ifdef. |
| 574 case wasm::kExprI64Mul: | |
| 575 op = m->Int64Mul(); | |
| 576 break; | |
| 577 case wasm::kExprI64Ror: | 577 case wasm::kExprI64Ror: |
| 578 op = m->Word64Ror(); | 578 op = m->Word64Ror(); |
| 579 break; | 579 break; |
| 580 case wasm::kExprI64Rol: | 580 case wasm::kExprI64Rol: |
| 581 return BuildI64Rol(left, right); | 581 return BuildI64Rol(left, right); |
| 582 #endif | 582 #endif |
| 583 | 583 |
| 584 case wasm::kExprF32CopySign: | 584 case wasm::kExprF32CopySign: |
| 585 return BuildF32CopySign(left, right); | 585 return BuildF32CopySign(left, right); |
| 586 case wasm::kExprF64CopySign: | 586 case wasm::kExprF64CopySign: |
| (...skipping 2079 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2666 static_cast<int>(function.code_end_offset - function.code_start_offset), | 2666 static_cast<int>(function.code_end_offset - function.code_start_offset), |
| 2667 decode_ms, static_cast<int>(graph.NodeCount()), compile_ms); | 2667 decode_ms, static_cast<int>(graph.NodeCount()), compile_ms); |
| 2668 } | 2668 } |
| 2669 return code; | 2669 return code; |
| 2670 } | 2670 } |
| 2671 | 2671 |
| 2672 | 2672 |
| 2673 } // namespace compiler | 2673 } // namespace compiler |
| 2674 } // namespace internal | 2674 } // namespace internal |
| 2675 } // namespace v8 | 2675 } // namespace v8 |
| OLD | NEW |