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/compiler/code-generator-impl.h" | 7 #include "src/compiler/code-generator-impl.h" |
8 #include "src/compiler/gap-resolver.h" | 8 #include "src/compiler/gap-resolver.h" |
9 #include "src/compiler/node-matchers.h" | 9 #include "src/compiler/node-matchers.h" |
10 #include "src/scopes.h" | 10 #include "src/scopes.h" |
(...skipping 603 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
614 BuildTranslation(instr, -1, 0, OutputFrameStateCombine::Ignore()); | 614 BuildTranslation(instr, -1, 0, OutputFrameStateCombine::Ignore()); |
615 AssembleDeoptimizerCall(deopt_state_id, Deoptimizer::EAGER); | 615 AssembleDeoptimizerCall(deopt_state_id, Deoptimizer::EAGER); |
616 break; | 616 break; |
617 } | 617 } |
618 case kArchRet: | 618 case kArchRet: |
619 AssembleReturn(); | 619 AssembleReturn(); |
620 break; | 620 break; |
621 case kArchStackPointer: | 621 case kArchStackPointer: |
622 __ movq(i.OutputRegister(), rsp); | 622 __ movq(i.OutputRegister(), rsp); |
623 break; | 623 break; |
| 624 case kArchFramePointer: |
| 625 __ movq(i.OutputRegister(), rbp); |
| 626 break; |
624 case kArchTruncateDoubleToI: { | 627 case kArchTruncateDoubleToI: { |
625 auto result = i.OutputRegister(); | 628 auto result = i.OutputRegister(); |
626 auto input = i.InputDoubleRegister(0); | 629 auto input = i.InputDoubleRegister(0); |
627 auto ool = new (zone()) OutOfLineTruncateDoubleToI(this, result, input); | 630 auto ool = new (zone()) OutOfLineTruncateDoubleToI(this, result, input); |
628 __ cvttsd2siq(result, input); | 631 __ cvttsd2siq(result, input); |
629 __ cmpq(result, Immediate(1)); | 632 __ cmpq(result, Immediate(1)); |
630 __ j(overflow, ool->entry()); | 633 __ j(overflow, ool->entry()); |
631 __ bind(ool->exit()); | 634 __ bind(ool->exit()); |
632 break; | 635 break; |
633 } | 636 } |
(...skipping 1071 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1705 } | 1708 } |
1706 } | 1709 } |
1707 MarkLazyDeoptSite(); | 1710 MarkLazyDeoptSite(); |
1708 } | 1711 } |
1709 | 1712 |
1710 #undef __ | 1713 #undef __ |
1711 | 1714 |
1712 } // namespace internal | 1715 } // namespace internal |
1713 } // namespace compiler | 1716 } // namespace compiler |
1714 } // namespace v8 | 1717 } // namespace v8 |
OLD | NEW |