OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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 #ifndef V8_CODE_STUB_ASSEMBLER_H_ | 5 #ifndef V8_CODE_STUB_ASSEMBLER_H_ |
6 #define V8_CODE_STUB_ASSEMBLER_H_ | 6 #define V8_CODE_STUB_ASSEMBLER_H_ |
7 | 7 |
8 #include <functional> | 8 #include <functional> |
9 | 9 |
10 #include "src/compiler/code-assembler.h" | 10 #include "src/compiler/code-assembler.h" |
(...skipping 1124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1135 compiler::Node* CallGetterIfAccessor(compiler::Node* value, | 1135 compiler::Node* CallGetterIfAccessor(compiler::Node* value, |
1136 compiler::Node* details, | 1136 compiler::Node* details, |
1137 compiler::Node* context, | 1137 compiler::Node* context, |
1138 compiler::Node* receiver, | 1138 compiler::Node* receiver, |
1139 Label* if_bailout); | 1139 Label* if_bailout); |
1140 | 1140 |
1141 void HandleLoadICHandlerCase( | 1141 void HandleLoadICHandlerCase( |
1142 const LoadICParameters* p, compiler::Node* handler, Label* miss, | 1142 const LoadICParameters* p, compiler::Node* handler, Label* miss, |
1143 ElementSupport support_elements = kOnlyProperties); | 1143 ElementSupport support_elements = kOnlyProperties); |
1144 | 1144 |
| 1145 void HandleLoadICSmiHandlerCase(const LoadICParameters* p, |
| 1146 compiler::Node* holder, |
| 1147 compiler::Node* smi_handler, Label* miss, |
| 1148 ElementSupport support_elements); |
| 1149 |
1145 void HandleLoadICProtoHandler(const LoadICParameters* p, | 1150 void HandleLoadICProtoHandler(const LoadICParameters* p, |
1146 compiler::Node* handler, Variable* var_holder, | 1151 compiler::Node* handler, Variable* var_holder, |
1147 Variable* var_smi_handler, | 1152 Variable* var_smi_handler, |
1148 Label* if_smi_handler, Label* miss); | 1153 Label* if_smi_handler, Label* miss); |
1149 | 1154 |
| 1155 compiler::Node* EmitLoadICProtoArrayCheck(const LoadICParameters* p, |
| 1156 compiler::Node* handler, |
| 1157 compiler::Node* handler_length, |
| 1158 compiler::Node* handler_flags, |
| 1159 Label* miss); |
| 1160 |
1150 void CheckPrototype(compiler::Node* prototype_cell, compiler::Node* name, | 1161 void CheckPrototype(compiler::Node* prototype_cell, compiler::Node* name, |
1151 Label* miss); | 1162 Label* miss); |
1152 | 1163 |
1153 void NameDictionaryNegativeLookup(compiler::Node* object, | 1164 void NameDictionaryNegativeLookup(compiler::Node* object, |
1154 compiler::Node* name, Label* miss); | 1165 compiler::Node* name, Label* miss); |
1155 | 1166 |
1156 // If |transition| is nullptr then the normal field store is generated or | 1167 // If |transition| is nullptr then the normal field store is generated or |
1157 // transitioning store otherwise. | 1168 // transitioning store otherwise. |
1158 void HandleStoreFieldAndReturn(compiler::Node* handler_word, | 1169 void HandleStoreFieldAndReturn(compiler::Node* handler_word, |
1159 compiler::Node* holder, | 1170 compiler::Node* holder, |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1287 } | 1298 } |
1288 #else | 1299 #else |
1289 #define CSA_SLOW_ASSERT(csa, x) ((void)0) | 1300 #define CSA_SLOW_ASSERT(csa, x) ((void)0) |
1290 #endif | 1301 #endif |
1291 | 1302 |
1292 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); | 1303 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); |
1293 | 1304 |
1294 } // namespace internal | 1305 } // namespace internal |
1295 } // namespace v8 | 1306 } // namespace v8 |
1296 #endif // V8_CODE_STUB_ASSEMBLER_H_ | 1307 #endif // V8_CODE_STUB_ASSEMBLER_H_ |
OLD | NEW |