| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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_FULL_CODEGEN_H_ | 5 #ifndef V8_FULL_CODEGEN_H_ |
| 6 #define V8_FULL_CODEGEN_H_ | 6 #define V8_FULL_CODEGEN_H_ |
| 7 | 7 |
| 8 #include "src/v8.h" | 8 #include "src/v8.h" |
| 9 | 9 |
| 10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
| (...skipping 405 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 416 // the expression. | 416 // the expression. |
| 417 } | 417 } |
| 418 | 418 |
| 419 void VisitInDuplicateContext(Expression* expr); | 419 void VisitInDuplicateContext(Expression* expr); |
| 420 | 420 |
| 421 void VisitDeclarations(ZoneList<Declaration*>* declarations) override; | 421 void VisitDeclarations(ZoneList<Declaration*>* declarations) override; |
| 422 void DeclareModules(Handle<FixedArray> descriptions); | 422 void DeclareModules(Handle<FixedArray> descriptions); |
| 423 void DeclareGlobals(Handle<FixedArray> pairs); | 423 void DeclareGlobals(Handle<FixedArray> pairs); |
| 424 int DeclareGlobalsFlags(); | 424 int DeclareGlobalsFlags(); |
| 425 | 425 |
| 426 // Generate code to allocate all (including nested) modules and contexts. | |
| 427 // Because of recursive linking and the presence of module alias declarations, | |
| 428 // this has to be a separate pass _before_ populating or executing any module. | |
| 429 void AllocateModules(ZoneList<Declaration*>* declarations); | |
| 430 | |
| 431 // Generate code to create an iterator result object. The "value" property is | 426 // Generate code to create an iterator result object. The "value" property is |
| 432 // set to a value popped from the stack, and "done" is set according to the | 427 // set to a value popped from the stack, and "done" is set according to the |
| 433 // argument. The result object is left in the result register. | 428 // argument. The result object is left in the result register. |
| 434 void EmitCreateIteratorResult(bool done); | 429 void EmitCreateIteratorResult(bool done); |
| 435 | 430 |
| 436 // Try to perform a comparison as a fast inlined literal compare if | 431 // Try to perform a comparison as a fast inlined literal compare if |
| 437 // the operands allow it. Returns true if the compare operations | 432 // the operands allow it. Returns true if the compare operations |
| 438 // has been matched and all code generated; false otherwise. | 433 // has been matched and all code generated; false otherwise. |
| 439 bool TryLiteralCompare(CompareOperation* compare); | 434 bool TryLiteralCompare(CompareOperation* compare); |
| 440 | 435 |
| (...skipping 659 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1100 | 1095 |
| 1101 Address start_; | 1096 Address start_; |
| 1102 Address instruction_start_; | 1097 Address instruction_start_; |
| 1103 uint32_t length_; | 1098 uint32_t length_; |
| 1104 }; | 1099 }; |
| 1105 | 1100 |
| 1106 | 1101 |
| 1107 } } // namespace v8::internal | 1102 } } // namespace v8::internal |
| 1108 | 1103 |
| 1109 #endif // V8_FULL_CODEGEN_H_ | 1104 #endif // V8_FULL_CODEGEN_H_ |
| OLD | NEW |