Chromium Code Reviews| 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 503 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 514 // Platform-specific support for allocating a new closure based on | 514 // Platform-specific support for allocating a new closure based on |
| 515 // the given function info. | 515 // the given function info. |
| 516 void EmitNewClosure(Handle<SharedFunctionInfo> info, bool pretenure); | 516 void EmitNewClosure(Handle<SharedFunctionInfo> info, bool pretenure); |
| 517 | 517 |
| 518 // Platform-specific support for compiling assignments. | 518 // Platform-specific support for compiling assignments. |
| 519 | 519 |
| 520 // Load a value from a named property. | 520 // Load a value from a named property. |
| 521 // The receiver is left on the stack by the IC. | 521 // The receiver is left on the stack by the IC. |
| 522 void EmitNamedPropertyLoad(Property* expr); | 522 void EmitNamedPropertyLoad(Property* expr); |
| 523 | 523 |
| 524 // Load a value from super.named prroperty. | |
|
arv (Not doing code reviews)
2014/09/29 14:37:27
typo
| |
| 525 // Expect receiver ('this' value) and home_object on the stack. | |
| 524 void EmitNamedSuperPropertyLoad(Property* expr); | 526 void EmitNamedSuperPropertyLoad(Property* expr); |
| 525 | 527 |
| 526 // Load a value from a keyed property. | 528 // Load a value from a keyed property. |
| 527 // The receiver and the key is left on the stack by the IC. | 529 // The receiver and the key is left on the stack by the IC. |
| 528 void EmitKeyedPropertyLoad(Property* expr); | 530 void EmitKeyedPropertyLoad(Property* expr); |
| 529 | 531 |
| 530 // Apply the compound assignment operator. Expects the left operand on top | 532 // Apply the compound assignment operator. Expects the left operand on top |
| 531 // of the stack and the right one in the accumulator. | 533 // of the stack and the right one in the accumulator. |
| 532 void EmitBinaryOp(BinaryOperation* expr, | 534 void EmitBinaryOp(BinaryOperation* expr, |
| 533 Token::Value op, | 535 Token::Value op, |
| (...skipping 17 matching lines...) Expand all Loading... | |
| 551 Token::Value op); | 553 Token::Value op); |
| 552 | 554 |
| 553 // Helper functions to EmitVariableAssignment | 555 // Helper functions to EmitVariableAssignment |
| 554 void EmitStoreToStackLocalOrContextSlot(Variable* var, | 556 void EmitStoreToStackLocalOrContextSlot(Variable* var, |
| 555 MemOperand location); | 557 MemOperand location); |
| 556 | 558 |
| 557 // Complete a named property assignment. The receiver is expected on top | 559 // Complete a named property assignment. The receiver is expected on top |
| 558 // of the stack and the right-hand-side value in the accumulator. | 560 // of the stack and the right-hand-side value in the accumulator. |
| 559 void EmitNamedPropertyAssignment(Assignment* expr); | 561 void EmitNamedPropertyAssignment(Assignment* expr); |
| 560 | 562 |
| 563 // Complete a super named property assignment. The right-hand-side value | |
| 564 // is expected in accumulator. | |
| 565 void EmitNamedSuperPropertyAssignment(Assignment* expr); | |
| 566 | |
| 561 // Complete a keyed property assignment. The receiver and key are | 567 // Complete a keyed property assignment. The receiver and key are |
| 562 // expected on top of the stack and the right-hand-side value in the | 568 // expected on top of the stack and the right-hand-side value in the |
| 563 // accumulator. | 569 // accumulator. |
| 564 void EmitKeyedPropertyAssignment(Assignment* expr); | 570 void EmitKeyedPropertyAssignment(Assignment* expr); |
| 565 | 571 |
| 566 void EmitLoadHomeObject(SuperReference* expr); | 572 void EmitLoadHomeObject(SuperReference* expr); |
| 567 | 573 |
| 568 void CallIC(Handle<Code> code, | 574 void CallIC(Handle<Code> code, |
| 569 TypeFeedbackId id = TypeFeedbackId::None()); | 575 TypeFeedbackId id = TypeFeedbackId::None()); |
| 570 | 576 |
| (...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 947 | 953 |
| 948 Address start_; | 954 Address start_; |
| 949 Address instruction_start_; | 955 Address instruction_start_; |
| 950 uint32_t length_; | 956 uint32_t length_; |
| 951 }; | 957 }; |
| 952 | 958 |
| 953 | 959 |
| 954 } } // namespace v8::internal | 960 } } // namespace v8::internal |
| 955 | 961 |
| 956 #endif // V8_FULL_CODEGEN_H_ | 962 #endif // V8_FULL_CODEGEN_H_ |
| OLD | NEW |