| Index: src/full-codegen.cc
|
| diff --git a/src/full-codegen.cc b/src/full-codegen.cc
|
| index 95957d61411ed219736607dd607a23d77b3c7792..759265e5faab5ec645d7abc00ffeed25d71a51bd 100644
|
| --- a/src/full-codegen.cc
|
| +++ b/src/full-codegen.cc
|
| @@ -276,7 +276,12 @@ void BreakableStatementChecker::VisitThisFunction(ThisFunction* expr) {
|
| }
|
|
|
|
|
| -void BreakableStatementChecker::VisitSuperReference(SuperReference* expr) {}
|
| +void BreakableStatementChecker::VisitSuperPropertyReference(
|
| + SuperPropertyReference* expr) {}
|
| +
|
| +
|
| +void BreakableStatementChecker::VisitSuperCallReference(
|
| + SuperCallReference* expr) {}
|
|
|
|
|
| #define __ ACCESS_MASM(masm())
|
| @@ -668,7 +673,13 @@ void FullCodeGenerator::SetStatementPosition(Statement* stmt) {
|
| }
|
|
|
|
|
| -void FullCodeGenerator::VisitSuperReference(SuperReference* super) {
|
| +void FullCodeGenerator::VisitSuperPropertyReference(
|
| + SuperPropertyReference* super) {
|
| + __ CallRuntime(Runtime::kThrowUnsupportedSuperError, 0);
|
| +}
|
| +
|
| +
|
| +void FullCodeGenerator::VisitSuperCallReference(SuperCallReference* super) {
|
| __ CallRuntime(Runtime::kThrowUnsupportedSuperError, 0);
|
| }
|
|
|
| @@ -978,6 +989,12 @@ void FullCodeGenerator::EmitPropertyKey(ObjectLiteralProperty* property,
|
| }
|
|
|
|
|
| +void FullCodeGenerator::EmitLoadSuperConstructor(SuperCallReference* ref) {
|
| + VisitForStackValue(ref->this_function_var());
|
| + __ CallRuntime(Runtime::kGetPrototype, 1);
|
| +}
|
| +
|
| +
|
| void FullCodeGenerator::VisitReturnStatement(ReturnStatement* stmt) {
|
| Comment cmnt(masm_, "[ ReturnStatement");
|
| SetStatementPosition(stmt);
|
|
|