summaryrefslogtreecommitdiff
path: root/deps/v8/tools/dev/gm.py
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/tools/dev/gm.py')
-rwxr-xr-xdeps/v8/tools/dev/gm.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/deps/v8/tools/dev/gm.py b/deps/v8/tools/dev/gm.py
index 21af4ff31c..1ce17e4f31 100755
--- a/deps/v8/tools/dev/gm.py
+++ b/deps/v8/tools/dev/gm.py
@@ -23,6 +23,7 @@ import errno
import multiprocessing
import os
import pty
+import re
import subprocess
import sys
@@ -41,7 +42,8 @@ MODES = ["release", "debug", "optdebug"]
# Modes that get built/run when you don't specify any.
DEFAULT_MODES = ["release", "debug"]
# Build targets that can be manually specified.
-TARGETS = ["d8", "cctest", "unittests", "v8_fuzzers", "mkgrokdump"]
+TARGETS = ["d8", "cctest", "unittests", "v8_fuzzers", "mkgrokdump",
+ "generate-bytecode-expectations"]
# Build targets that get built when you don't specify any (and specified tests
# don't imply any other targets).
DEFAULT_TARGETS = ["d8"]
@@ -253,12 +255,16 @@ class Config(object):
return_code, output = _CallWithOutput("ninja -C %s %s %s" %
(path, build_opts, targets))
if return_code != 0 and "FAILED: gen/snapshot.cc" in output:
+ csa_trap = re.compile("Specify option( --csa-trap-on-node=[^ ]*)")
+ match = csa_trap.search(output)
+ extra_opt = match.group(1) if match else ""
_Notify("V8 build requires your attention",
"Detected mksnapshot failure, re-running in GDB...")
_Call("gdb -args %(path)s/mksnapshot "
"--startup_src %(path)s/gen/snapshot.cc "
"--random-seed 314159265 "
- "--startup-blob %(path)s/snapshot_blob.bin" % {"path": path})
+ "--startup-blob %(path)s/snapshot_blob.bin"
+ "%(extra)s"% {"path": path, "extra": extra_opt})
return return_code
def RunTests(self):