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 697 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
708 AssembleArchTableSwitch(instr); | 708 AssembleArchTableSwitch(instr); |
709 break; | 709 break; |
710 case kArchComment: { | 710 case kArchComment: { |
711 Address comment_string = i.InputExternalReference(0).address(); | 711 Address comment_string = i.InputExternalReference(0).address(); |
712 __ RecordComment(reinterpret_cast<const char*>(comment_string)); | 712 __ RecordComment(reinterpret_cast<const char*>(comment_string)); |
713 break; | 713 break; |
714 } | 714 } |
715 case kArchDebugBreak: | 715 case kArchDebugBreak: |
716 __ int3(); | 716 __ int3(); |
717 break; | 717 break; |
| 718 case kArchImpossible: |
| 719 __ Abort(kConversionFromImpossibleValue); |
| 720 break; |
718 case kArchNop: | 721 case kArchNop: |
719 case kArchThrowTerminator: | 722 case kArchThrowTerminator: |
720 // don't emit code for nops. | 723 // don't emit code for nops. |
721 break; | 724 break; |
722 case kArchDeoptimize: { | 725 case kArchDeoptimize: { |
723 int deopt_state_id = | 726 int deopt_state_id = |
724 BuildTranslation(instr, -1, 0, OutputFrameStateCombine::Ignore()); | 727 BuildTranslation(instr, -1, 0, OutputFrameStateCombine::Ignore()); |
725 int double_register_param_count = 0; | 728 int double_register_param_count = 0; |
726 int x87_layout = 0; | 729 int x87_layout = 0; |
727 for (size_t i = 0; i < instr->InputCount(); i++) { | 730 for (size_t i = 0; i < instr->InputCount(); i++) { |
(...skipping 1996 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2724 int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; | 2727 int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; |
2725 __ Nop(padding_size); | 2728 __ Nop(padding_size); |
2726 } | 2729 } |
2727 } | 2730 } |
2728 | 2731 |
2729 #undef __ | 2732 #undef __ |
2730 | 2733 |
2731 } // namespace compiler | 2734 } // namespace compiler |
2732 } // namespace internal | 2735 } // namespace internal |
2733 } // namespace v8 | 2736 } // namespace v8 |
OLD | NEW |