Index: src/full-codegen/arm64/full-codegen-arm64.cc |
diff --git a/src/full-codegen/arm64/full-codegen-arm64.cc b/src/full-codegen/arm64/full-codegen-arm64.cc |
index f2acd2aba30bd5447b34e5ac3f9fb3141cce456f..9d6f3c9d8ab8baaa70ef9a211f7616c22916a8f3 100644 |
--- a/src/full-codegen/arm64/full-codegen-arm64.cc |
+++ b/src/full-codegen/arm64/full-codegen-arm64.cc |
@@ -255,37 +255,10 @@ void FullCodeGenerator::Generate() { |
PrepareForBailoutForId(BailoutId::FunctionContext(), |
BailoutState::NO_REGISTERS); |
- // Possibly set up a local binding to the this function which is used in |
- // derived constructors with super calls. |
- Variable* this_function_var = info->scope()->this_function_var(); |
- if (this_function_var != nullptr) { |
- Comment cmnt(masm_, "[ This function"); |
- if (!function_in_register_x1) { |
- __ Ldr(x1, MemOperand(fp, JavaScriptFrameConstants::kFunctionOffset)); |
- // The write barrier clobbers register again, keep it marked as such. |
- } |
- SetVar(this_function_var, x1, x0, x2); |
- } |
- |
- // Possibly set up a local binding to the new target value. |
- Variable* new_target_var = info->scope()->new_target_var(); |
- if (new_target_var != nullptr) { |
- Comment cmnt(masm_, "[ new.target"); |
- SetVar(new_target_var, x3, x0, x2); |
- } |
- |
- // Possibly allocate RestParameters |
- Variable* rest_param = info->scope()->rest_parameter(); |
- if (rest_param != nullptr) { |
- Comment cmnt(masm_, "[ Allocate rest parameter array"); |
- if (!function_in_register_x1) { |
- __ Ldr(x1, MemOperand(fp, JavaScriptFrameConstants::kFunctionOffset)); |
- } |
- FastNewRestParameterStub stub(isolate()); |
- __ CallStub(&stub); |
- function_in_register_x1 = false; |
- SetVar(rest_param, x0, x1, x2); |
- } |
+ // We don't support new.target and rest parameters here. |
+ DCHECK_NULL(info->scope()->new_target_var()); |
+ DCHECK_NULL(info->scope()->rest_parameter()); |
+ DCHECK_NULL(info->scope()->this_function_var()); |
Variable* arguments = info->scope()->arguments(); |
if (arguments != NULL) { |