| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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/code-generator.h" | 5 #include "src/compiler/code-generator.h" |
| 6 | 6 |
| 7 #include "src/ast/scopes.h" | 7 #include "src/ast/scopes.h" |
| 8 #include "src/compiler/code-generator-impl.h" | 8 #include "src/compiler/code-generator-impl.h" |
| 9 #include "src/compiler/gap-resolver.h" | 9 #include "src/compiler/gap-resolver.h" |
| 10 #include "src/compiler/node-matchers.h" | 10 #include "src/compiler/node-matchers.h" |
| (...skipping 1719 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1730 __ Subsd(i.InputDoubleRegister(0), kScratchDoubleReg); | 1730 __ Subsd(i.InputDoubleRegister(0), kScratchDoubleReg); |
| 1731 break; | 1731 break; |
| 1732 case kX64Movsxbl: | 1732 case kX64Movsxbl: |
| 1733 ASSEMBLE_MOVX(movsxbl); | 1733 ASSEMBLE_MOVX(movsxbl); |
| 1734 __ AssertZeroExtended(i.OutputRegister()); | 1734 __ AssertZeroExtended(i.OutputRegister()); |
| 1735 break; | 1735 break; |
| 1736 case kX64Movzxbl: | 1736 case kX64Movzxbl: |
| 1737 ASSEMBLE_MOVX(movzxbl); | 1737 ASSEMBLE_MOVX(movzxbl); |
| 1738 __ AssertZeroExtended(i.OutputRegister()); | 1738 __ AssertZeroExtended(i.OutputRegister()); |
| 1739 break; | 1739 break; |
| 1740 case kX64Movsxbq: | |
| 1741 ASSEMBLE_MOVX(movsxbq); | |
| 1742 __ AssertZeroExtended(i.OutputRegister()); | |
| 1743 break; | |
| 1744 case kX64Movzxbq: | |
| 1745 ASSEMBLE_MOVX(movzxbq); | |
| 1746 __ AssertZeroExtended(i.OutputRegister()); | |
| 1747 break; | |
| 1748 case kX64Movb: { | 1740 case kX64Movb: { |
| 1749 size_t index = 0; | 1741 size_t index = 0; |
| 1750 Operand operand = i.MemoryOperand(&index); | 1742 Operand operand = i.MemoryOperand(&index); |
| 1751 if (HasImmediateInput(instr, index)) { | 1743 if (HasImmediateInput(instr, index)) { |
| 1752 __ movb(operand, Immediate(i.InputInt8(index))); | 1744 __ movb(operand, Immediate(i.InputInt8(index))); |
| 1753 } else { | 1745 } else { |
| 1754 __ movb(operand, i.InputRegister(index)); | 1746 __ movb(operand, i.InputRegister(index)); |
| 1755 } | 1747 } |
| 1756 break; | 1748 break; |
| 1757 } | 1749 } |
| 1758 case kX64Movsxwl: | 1750 case kX64Movsxwl: |
| 1759 ASSEMBLE_MOVX(movsxwl); | 1751 ASSEMBLE_MOVX(movsxwl); |
| 1760 __ AssertZeroExtended(i.OutputRegister()); | 1752 __ AssertZeroExtended(i.OutputRegister()); |
| 1761 break; | 1753 break; |
| 1762 case kX64Movzxwl: | 1754 case kX64Movzxwl: |
| 1763 ASSEMBLE_MOVX(movzxwl); | 1755 ASSEMBLE_MOVX(movzxwl); |
| 1764 __ AssertZeroExtended(i.OutputRegister()); | 1756 __ AssertZeroExtended(i.OutputRegister()); |
| 1765 break; | 1757 break; |
| 1766 case kX64Movsxwq: | |
| 1767 ASSEMBLE_MOVX(movsxwq); | |
| 1768 __ AssertZeroExtended(i.OutputRegister()); | |
| 1769 break; | |
| 1770 case kX64Movzxwq: | |
| 1771 ASSEMBLE_MOVX(movzxwq); | |
| 1772 __ AssertZeroExtended(i.OutputRegister()); | |
| 1773 break; | |
| 1774 case kX64Movw: { | 1758 case kX64Movw: { |
| 1775 size_t index = 0; | 1759 size_t index = 0; |
| 1776 Operand operand = i.MemoryOperand(&index); | 1760 Operand operand = i.MemoryOperand(&index); |
| 1777 if (HasImmediateInput(instr, index)) { | 1761 if (HasImmediateInput(instr, index)) { |
| 1778 __ movw(operand, Immediate(i.InputInt16(index))); | 1762 __ movw(operand, Immediate(i.InputInt16(index))); |
| 1779 } else { | 1763 } else { |
| 1780 __ movw(operand, i.InputRegister(index)); | 1764 __ movw(operand, i.InputRegister(index)); |
| 1781 } | 1765 } |
| 1782 break; | 1766 break; |
| 1783 } | 1767 } |
| (...skipping 807 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2591 int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; | 2575 int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; |
| 2592 __ Nop(padding_size); | 2576 __ Nop(padding_size); |
| 2593 } | 2577 } |
| 2594 } | 2578 } |
| 2595 | 2579 |
| 2596 #undef __ | 2580 #undef __ |
| 2597 | 2581 |
| 2598 } // namespace compiler | 2582 } // namespace compiler |
| 2599 } // namespace internal | 2583 } // namespace internal |
| 2600 } // namespace v8 | 2584 } // namespace v8 |
| OLD | NEW |