OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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/arm64/macro-assembler-arm64.h" | 7 #include "src/arm64/macro-assembler-arm64.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 593 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
604 break; | 604 break; |
605 case kOverflow: | 605 case kOverflow: |
606 cc = vs; | 606 cc = vs; |
607 break; | 607 break; |
608 case kNotOverflow: | 608 case kNotOverflow: |
609 cc = vc; | 609 cc = vc; |
610 break; | 610 break; |
611 } | 611 } |
612 __ bind(&check); | 612 __ bind(&check); |
613 __ Cset(reg, cc); | 613 __ Cset(reg, cc); |
614 __ B(&done); | |
615 __ Bind(&done); | 614 __ Bind(&done); |
616 } | 615 } |
617 | 616 |
618 | 617 |
619 // TODO(dcarney): increase stack slots in frame once before first use. | 618 // TODO(dcarney): increase stack slots in frame once before first use. |
620 static int AlignedStackSlots(int stack_slots) { | 619 static int AlignedStackSlots(int stack_slots) { |
621 if (stack_slots & 1) stack_slots++; | 620 if (stack_slots & 1) stack_slots++; |
622 return stack_slots; | 621 return stack_slots; |
623 } | 622 } |
624 | 623 |
(...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
846 v8::internal::Instruction* instr = | 845 v8::internal::Instruction* instr = |
847 reinterpret_cast<v8::internal::Instruction*>(instr_address); | 846 reinterpret_cast<v8::internal::Instruction*>(instr_address); |
848 return instr->IsMovz() && instr->Rd() == xzr.code() && instr->SixtyFourBits(); | 847 return instr->IsMovz() && instr->Rd() == xzr.code() && instr->SixtyFourBits(); |
849 } | 848 } |
850 | 849 |
851 #endif // DEBUG | 850 #endif // DEBUG |
852 | 851 |
853 } // namespace compiler | 852 } // namespace compiler |
854 } // namespace internal | 853 } // namespace internal |
855 } // namespace v8 | 854 } // namespace v8 |
OLD | NEW |