Chromium Code Reviews| Index: src/full-codegen/x64/full-codegen-x64.cc |
| diff --git a/src/full-codegen/x64/full-codegen-x64.cc b/src/full-codegen/x64/full-codegen-x64.cc |
| index 0624c28288b390e1dcb93e2c3505f1b595eb1f91..b8b47a190fa3cc1ab17e608799cd0895aaa0d84a 100644 |
| --- a/src/full-codegen/x64/full-codegen-x64.cc |
| +++ b/src/full-codegen/x64/full-codegen-x64.cc |
| @@ -1900,6 +1900,17 @@ void FullCodeGenerator::EmitClassDefineProperties(ClassLiteral* lit) { |
| } |
| +void FullCodeGenerator::EmitClassDefineNameProperty(ClassLiteral* lit) { |
| + DCHECK(lit->constructor()->raw_name() != nullptr); |
| + |
| + if (!lit->constructor()->raw_name()->IsEmpty()) { |
|
Toon Verwaest
2016/11/24 07:13:38
Here you can know at compile-time that the name is
|
| + PushOperand(Operand(rsp, 0)); // constructor |
| + PushOperand(lit->constructor()->name()); |
| + CallRuntimeWithOperands(Runtime::kDefineClassNameProperty); |
| + } |
| +} |
| + |
| + |
| void FullCodeGenerator::EmitBinaryOp(BinaryOperation* expr, Token::Value op) { |
| PopOperand(rdx); |
| Handle<Code> code = CodeFactory::BinaryOpIC(isolate(), op).code(); |