| Index: src/x64/regexp-macro-assembler-x64.cc
|
| ===================================================================
|
| --- src/x64/regexp-macro-assembler-x64.cc (revision 8110)
|
| +++ src/x64/regexp-macro-assembler-x64.cc (working copy)
|
| @@ -431,10 +431,15 @@
|
| // Isolate.
|
| __ LoadAddress(rcx, ExternalReference::isolate_address());
|
| #endif
|
| - ExternalReference compare =
|
| - ExternalReference::re_case_insensitive_compare_uc16(masm_.isolate());
|
| - __ CallCFunction(compare, num_arguments);
|
|
|
| + { // NOLINT: Can't find a way to open this scope without confusing the
|
| + // linter.
|
| + AllowExternalCallThatCantCauseGC scope(&masm_);
|
| + ExternalReference compare =
|
| + ExternalReference::re_case_insensitive_compare_uc16(masm_.isolate());
|
| + __ CallCFunction(compare, num_arguments);
|
| + }
|
| +
|
| // Restore original values before reacting on result value.
|
| __ Move(code_object_pointer(), masm_.CodeObject());
|
| __ pop(backtrack_stackpointer());
|
| @@ -708,7 +713,12 @@
|
| // registers we need.
|
| // Entry code:
|
| __ bind(&entry_label_);
|
| - // Start new stack frame.
|
| +
|
| + // Tell the system that we have a stack frame. Because the type is MANUAL, no
|
| + // is generated.
|
| + FrameScope scope(&masm_, StackFrame::MANUAL);
|
| +
|
| + // Actually emit code to start a new stack frame.
|
| __ push(rbp);
|
| __ movq(rbp, rsp);
|
| // Save parameters and callee-save registers. Order here should correspond
|
|
|