| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef VM_FLOW_GRAPH_COMPILER_X64_H_ | 5 #ifndef VM_FLOW_GRAPH_COMPILER_X64_H_ |
| 6 #define VM_FLOW_GRAPH_COMPILER_X64_H_ | 6 #define VM_FLOW_GRAPH_COMPILER_X64_H_ |
| 7 | 7 |
| 8 #ifndef VM_FLOW_GRAPH_COMPILER_H_ | 8 #ifndef VM_FLOW_GRAPH_COMPILER_H_ |
| 9 #error Include flow_graph_compiler.h instead of flow_graph_compiler_x64.h. | 9 #error Include flow_graph_compiler.h instead of flow_graph_compiler_x64.h. |
| 10 #endif | 10 #endif |
| (...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 121 intptr_t try_index, | 121 intptr_t try_index, |
| 122 const AbstractType& dst_type, | 122 const AbstractType& dst_type, |
| 123 const String& dst_name); | 123 const String& dst_name); |
| 124 | 124 |
| 125 void GenerateInstanceOf(intptr_t cid, | 125 void GenerateInstanceOf(intptr_t cid, |
| 126 intptr_t token_index, | 126 intptr_t token_index, |
| 127 intptr_t try_index, | 127 intptr_t try_index, |
| 128 const AbstractType& type, | 128 const AbstractType& type, |
| 129 bool negate_result); | 129 bool negate_result); |
| 130 | 130 |
| 131 void EmitClassChecksNoSmi(const ZoneGrowableArray<intptr_t>& class_ids, |
| 132 Register instance_reg, |
| 133 Register temp_reg, |
| 134 Label* deopt); |
| 135 |
| 131 enum TypeTestStubKind { | 136 enum TypeTestStubKind { |
| 132 kTestTypeOneArg, | 137 kTestTypeOneArg, |
| 133 kTestTypeTwoArgs, | 138 kTestTypeTwoArgs, |
| 134 kTestTypeThreeArgs, | 139 kTestTypeThreeArgs, |
| 135 }; | 140 }; |
| 136 | 141 |
| 137 RawSubtypeTestCache* GenerateCallSubtypeTestStub(TypeTestStubKind test_kind, | 142 RawSubtypeTestCache* GenerateCallSubtypeTestStub(TypeTestStubKind test_kind, |
| 138 Register instance_reg, | 143 Register instance_reg, |
| 139 Register type_arguments_reg, | 144 Register type_arguments_reg, |
| 140 Register temp_reg, | 145 Register temp_reg, |
| 141 Label* is_instance_lbl, | 146 Label* is_instance_lbl, |
| 142 Label* is_not_instance_lbl); | 147 Label* is_not_instance_lbl); |
| 143 | 148 |
| 144 void GenerateBoolToJump(Register bool_reg, Label* is_true, Label* is_false); | 149 void GenerateBoolToJump(Register bool_reg, Label* is_true, Label* is_false); |
| 145 | 150 |
| 146 void CopyParameters(); | 151 void CopyParameters(); |
| 147 | 152 |
| 148 virtual void GenerateInlinedGetter(intptr_t offset); | 153 virtual void GenerateInlinedGetter(intptr_t offset); |
| 149 virtual void GenerateInlinedSetter(intptr_t offset); | 154 virtual void GenerateInlinedSetter(intptr_t offset); |
| 150 | 155 |
| 151 DISALLOW_COPY_AND_ASSIGN(FlowGraphCompiler); | 156 DISALLOW_COPY_AND_ASSIGN(FlowGraphCompiler); |
| 152 }; | 157 }; |
| 153 | 158 |
| 154 } // namespace dart | 159 } // namespace dart |
| 155 | 160 |
| 156 #endif // VM_FLOW_GRAPH_COMPILER_X64_H_ | 161 #endif // VM_FLOW_GRAPH_COMPILER_X64_H_ |
| OLD | NEW |