Browse Source

deps: cherry-pick 0353a1e from upstream V8

Original commit message:

    Avoid disassembling Interpreted Regexp code

    I found that v8 will crash when --print-code is turned on while Regexp
    is interpreted. It crashes when trying to print Relocation info during
    Disassembly. It should probably avoid printing out disassembly when the
    Code object is a bytecode regexp.

    Bug:
    Change-Id: I35b531cb03996a303248652871452266c78fee38
    Reviewed-on: https://chromium-review.googlesource.com/642127
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Jaideep Bajwa <bjaideep@ca.ibm.com>
    Cr-Commit-Position: refs/heads/master@{#47718}

PR-URL: https://github.com/nodejs/node/pull/15599
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
v9.x-staging
Michaël Zasso 7 years ago
parent
commit
2f2f1cfa87
  1. 2
      deps/v8/src/regexp/jsregexp.cc

2
deps/v8/src/regexp/jsregexp.cc

@ -1115,7 +1115,7 @@ RegExpEngine::CompilationResult RegExpCompiler::Assemble(
Handle<HeapObject> code = macro_assembler_->GetCode(pattern); Handle<HeapObject> code = macro_assembler_->GetCode(pattern);
isolate->IncreaseTotalRegexpCodeGenerated(code->Size()); isolate->IncreaseTotalRegexpCodeGenerated(code->Size());
work_list_ = NULL; work_list_ = NULL;
#ifdef ENABLE_DISASSEMBLER #if defined(ENABLE_DISASSEMBLER) && !defined(V8_INTERPRETED_REGEXP)
if (FLAG_print_code) { if (FLAG_print_code) {
CodeTracer::Scope trace_scope(isolate->GetCodeTracer()); CodeTracer::Scope trace_scope(isolate->GetCodeTracer());
OFStream os(trace_scope.file()); OFStream os(trace_scope.file());

Loading…
Cancel
Save