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 1749 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1760 break; | 1760 break; |
1761 case kCheckedStoreFloat32: | 1761 case kCheckedStoreFloat32: |
1762 ASSEMBLE_CHECKED_STORE_FLOAT(Movss); | 1762 ASSEMBLE_CHECKED_STORE_FLOAT(Movss); |
1763 break; | 1763 break; |
1764 case kCheckedStoreFloat64: | 1764 case kCheckedStoreFloat64: |
1765 ASSEMBLE_CHECKED_STORE_FLOAT(Movsd); | 1765 ASSEMBLE_CHECKED_STORE_FLOAT(Movsd); |
1766 break; | 1766 break; |
1767 case kX64StackCheck: | 1767 case kX64StackCheck: |
1768 __ CompareRoot(rsp, Heap::kStackLimitRootIndex); | 1768 __ CompareRoot(rsp, Heap::kStackLimitRootIndex); |
1769 break; | 1769 break; |
| 1770 case kAtomicLoadInt8: |
| 1771 case kAtomicLoadUint8: |
| 1772 case kAtomicLoadInt16: |
| 1773 case kAtomicLoadUint16: |
| 1774 case kAtomicLoadWord32: |
| 1775 UNREACHABLE(); // Won't be generated by instruction selector. |
| 1776 break; |
1770 } | 1777 } |
1771 } // NOLINT(readability/fn_size) | 1778 } // NOLINT(readability/fn_size) |
1772 | 1779 |
1773 | 1780 |
1774 // Assembles branches after this instruction. | 1781 // Assembles branches after this instruction. |
1775 void CodeGenerator::AssembleArchBranch(Instruction* instr, BranchInfo* branch) { | 1782 void CodeGenerator::AssembleArchBranch(Instruction* instr, BranchInfo* branch) { |
1776 X64OperandConverter i(this, instr); | 1783 X64OperandConverter i(this, instr); |
1777 Label::Distance flabel_distance = | 1784 Label::Distance flabel_distance = |
1778 branch->fallthru ? Label::kNear : Label::kFar; | 1785 branch->fallthru ? Label::kNear : Label::kFar; |
1779 Label* tlabel = branch->true_label; | 1786 Label* tlabel = branch->true_label; |
(...skipping 492 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2272 int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; | 2279 int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; |
2273 __ Nop(padding_size); | 2280 __ Nop(padding_size); |
2274 } | 2281 } |
2275 } | 2282 } |
2276 | 2283 |
2277 #undef __ | 2284 #undef __ |
2278 | 2285 |
2279 } // namespace compiler | 2286 } // namespace compiler |
2280 } // namespace internal | 2287 } // namespace internal |
2281 } // namespace v8 | 2288 } // namespace v8 |
OLD | NEW |