# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/android/config.gni")
import("//build/config/arm.gni")
import("//build/config/mips.gni")
import("//build/config/sanitizers/sanitizers.gni")

if (is_android) {
  import("//build/config/android/rules.gni")
}

# Because standalone V8 builds are not supported, assume this is part of a
# Chromium build.
import("//build_overrides/v8.gni")

import("snapshot_toolchain.gni")

declare_args() {
  # Use ICU data file (icudtl.dat) if true or library (shared on windows,
  # static otherwise).
  icu_use_data_file_flag = true

  # Enable the snapshot feature, for fast context creation.
  # http://v8project.blogspot.com/2015/09/custom-startup-snapshots.html
  v8_use_snapshot = true

  # Use external files for startup data blobs:
  # the JS builtins sources and the start snapshot.
  v8_use_external_startup_data = true

  # Sets -DVERIFY_HEAP.
  v8_enable_verify_heap = false

  # Enable compiler warnings when using V8_DEPRECATED apis.
  v8_deprecation_warnings = false

  # Enable compiler warnings when using V8_DEPRECATE_SOON apis.
  v8_imminent_deprecation_warnings = false

  # Sets -dENABLE_DISASSEMBLER.
  v8_enable_disassembler = false

  # Sets -dENABLE_GDB_JIT_INTERFACE.
  v8_enable_gdbjit = false

  # Sets -dENABLE_HANDLE_ZAPPING.
  v8_enable_handle_zapping = is_debug

  # Enable ECMAScript Internationalization API. Enabling this feature will
  # add a dependency on the ICU library.
  v8_enable_i18n_support = true

  # Interpreted regexp engine exists as platform-independent alternative
  # based where the regular expression is compiled to a bytecode.
  v8_interpreted_regexp = false

  # Sets -dOBJECT_PRINT.
  v8_object_print = false

  # With post mortem support enabled, metadata is embedded into libv8 that
  # describes various parameters of the VM for use by debuggers. See
  # tools/gen-postmortem-metadata.py for details.
  v8_postmortem_support = false

  # Similar to vfp but on MIPS.
  v8_can_use_fpu_instructions = true

  # Similar to the ARM hard float ABI but on MIPS.
  v8_use_mips_abi_hardfloat = true
}

v8_random_seed = "314159265"
v8_toolset_for_shell = "host"

if (is_msan) {
  # Running the V8-generated code on an ARM simulator is a powerful hack that
  # allows the tool to see the memory accesses from JITted code. Without this
  # flag, JS code causes false positive reports from MSan.
  v8_target_arch = "arm64"
} else {
  v8_target_arch = target_cpu
}

if (v8_use_snapshot && v8_use_external_startup_data) {
  snapshot_target = ":v8_external_snapshot"
} else if (v8_use_snapshot) {
  snapshot_target = ":v8_snapshot"
} else {
  assert(!v8_use_external_startup_data)
  snapshot_target = ":v8_nosnapshot"
}

###############################################################################
# Configurations
#
config("internal_config") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  include_dirs = [ "." ]

  if (is_component_build) {
    defines = [
      "V8_SHARED",
      "BUILDING_V8_SHARED",
    ]
  }
}

config("internal_config_base") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  include_dirs = [ "." ]
}

# This config should be applied to code using the libplatform.
config("libplatform_config") {
  include_dirs = [ "include" ]
}

# This config should only be applied to code using V8 and not any V8 code
# itself.
config("external_config") {
  if (is_component_build) {
    defines = [
      "V8_SHARED",
      "USING_V8_SHARED",
    ]
  }
  include_dirs = [ "include" ]
  libs = []
  if (is_android && current_toolchain != host_toolchain) {
    libs += [ "log" ]
  }
}

# This config should only be applied to code that needs to be explicitly
# aware of whether we are using startup data or not.
config("external_startup_data") {
  if (v8_use_external_startup_data) {
    defines = [ "V8_USE_EXTERNAL_STARTUP_DATA" ]
  }
}

config("features") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  defines = []

  if (v8_enable_disassembler) {
    defines += [ "ENABLE_DISASSEMBLER" ]
  }
  if (v8_enable_gdbjit) {
    defines += [ "ENABLE_GDB_JIT_INTERFACE" ]
  }
  if (v8_object_print) {
    defines += [ "OBJECT_PRINT" ]
  }
  if (v8_enable_verify_heap) {
    defines += [ "VERIFY_HEAP" ]
  }
  if (v8_interpreted_regexp) {
    defines += [ "V8_INTERPRETED_REGEXP" ]
  }
  if (v8_deprecation_warnings) {
    defines += [ "V8_DEPRECATION_WARNINGS" ]
  }
  if (v8_imminent_deprecation_warnings) {
    defines += [ "V8_IMMINENT_DEPRECATION_WARNINGS" ]
  }
  if (v8_enable_i18n_support) {
    defines += [ "V8_I18N_SUPPORT" ]
  }
  if (v8_enable_handle_zapping) {
    defines += [ "ENABLE_HANDLE_ZAPPING" ]
  }
  if (v8_use_external_startup_data) {
    defines += [ "V8_USE_EXTERNAL_STARTUP_DATA" ]
  }
}

config("toolchain") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  defines = []
  cflags = []

  if (v8_target_arch == "arm") {
    defines += [ "V8_TARGET_ARCH_ARM" ]
    if (arm_version == 7) {
      defines += [ "CAN_USE_ARMV7_INSTRUCTIONS" ]
    }
    if (arm_fpu == "vfpv3-d16") {
      defines += [ "CAN_USE_VFP3_INSTRUCTIONS" ]
    } else if (arm_fpu == "vfpv3") {
      defines += [
        "CAN_USE_VFP3_INSTRUCTIONS",
        "CAN_USE_VFP32DREGS",
      ]
    } else if (arm_fpu == "neon") {
      defines += [
        "CAN_USE_VFP3_INSTRUCTIONS",
        "CAN_USE_VFP32DREGS",
        "CAN_USE_NEON",
      ]
    }

    # TODO(jochen): Add support for arm_test_noprobe.

    if (current_cpu != "arm") {
      # These defines ares used for the ARM simulator.
      if (arm_float_abi == "hard") {
        defines += [ "USE_EABI_HARDFLOAT=1" ]
      } else if (arm_float_abi == "softfp") {
        defines += [ "USE_EABI_HARDFLOAT=0" ]
      }
    }
  }
  if (v8_target_arch == "arm64") {
    defines += [ "V8_TARGET_ARCH_ARM64" ]
  }

  # TODO(jochen): Add support for mips.
  if (v8_target_arch == "mipsel") {
    defines += [ "V8_TARGET_ARCH_MIPS" ]
    if (v8_can_use_fpu_instructions) {
      defines += [ "CAN_USE_FPU_INSTRUCTIONS" ]
    }
    if (v8_use_mips_abi_hardfloat) {
      defines += [
        "__mips_hard_float=1",
        "CAN_USE_FPU_INSTRUCTIONS",
      ]
    } else {
      defines += [ "__mips_soft_float=1" ]
    }
    if (mips_arch_variant == "r6") {
      defines += [
        "_MIPS_ARCH_MIPS32R6",
        "FPU_MODE_FP64",
      ]
    } else if (mips_arch_variant == "r2") {
      defines += [ "_MIPS_ARCH_MIPS32R2" ]
      if (mips_fpu_mode == "fp64") {
        defines += [ "FPU_MODE_FP64" ]
      } else if (mips_fpu_mode == "fpxx") {
        defines += [ "FPU_MODE_FPXX" ]
      } else if (mips_fpu_mode == "fp32") {
        defines += [ "FPU_MODE_FP32" ]
      }
    } else if (mips_arch_variant == "r1") {
      defines += [ "FPU_MODE_FP32" ]
    }

    # TODO(jochen): Add support for mips_arch_variant rx and loongson.
  }

  # TODO(jochen): Add support for mips64.
  if (v8_target_arch == "mips64el") {
    defines += [ "V8_TARGET_ARCH_MIPS64" ]
    if (v8_can_use_fpu_instructions) {
      defines += [ "CAN_USE_FPU_INSTRUCTIONS" ]
    }

    # TODO(jochen): Add support for big endian host byteorder.
    defines += [ "V8_TARGET_ARCH_MIPS64_LE" ]
    if (v8_use_mips_abi_hardfloat) {
      defines += [
        "__mips_hard_float=1",
        "CAN_USE_FPU_INSTRUCTIONS",
      ]
    } else {
      defines += [ "__mips_soft_float=1" ]
    }
    if (mips_arch_variant == "r6") {
      defines += [ "_MIPS_ARCH_MIPS64R6" ]
    } else if (mips_arch_variant == "r2") {
      defines += [ "_MIPS_ARCH_MIPS64R2" ]
    }
  }
  if (v8_target_arch == "s390") {
    defines += [ "V8_TARGET_ARCH_S390" ]
  }
  if (v8_target_arch == "s390x") {
    defines += [
      "V8_TARGET_ARCH_S390",
      "V8_TARGET_ARCH_S390X",
    ]
  }
  if (v8_target_arch == "x86") {
    defines += [ "V8_TARGET_ARCH_IA32" ]
  }
  if (v8_target_arch == "x64") {
    defines += [ "V8_TARGET_ARCH_X64" ]
  }

  if (is_win) {
    defines += [ "WIN32" ]
    # TODO(jochen): Support v8_enable_prof.
  }

  # TODO(jochen): Add support for compiling with simulators.

  if (is_debug) {
    # TODO(jochen): Add support for different debug optimization levels.
    defines += [
      "ENABLE_DISASSEMBLER",
      "V8_ENABLE_CHECKS",
      "OBJECT_PRINT",
      "VERIFY_HEAP",
      "DEBUG",
      "TRACE_MAPS",
    ]
    if (!v8_optimized_debug) {
      defines += [ "ENABLE_SLOW_DCHECKS" ]
    }
  }
}

###############################################################################
# Templates
#

template("v8_source_set") {
  source_set(target_name) {
    forward_variables_from(invoker, "*", [ "configs" ])
    configs += invoker.configs
    configs -= [ "//build/config/compiler:chromium_code" ]
    configs += [ "//build/config/compiler:no_chromium_code" ]
    configs += [
      ":features",
      ":toolchain",
    ]

    if (!is_debug || v8_optimized_debug) {
      configs -= [ "//build/config/compiler:default_optimization" ]
      configs += [ "//build/config/compiler:optimize_max" ]
    }
  }
}

###############################################################################
# Actions
#

action("js2c") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  script = "tools/js2c.py"

  # The script depends on this other script, this rule causes a rebuild if it
  # changes.
  inputs = [
    "tools/jsmin.py",
  ]

  # NOSORT
  sources = [
    "src/js/macros.py",
    "src/messages.h",
    "src/js/prologue.js",
    "src/js/runtime.js",
    "src/js/v8natives.js",
    "src/js/symbol.js",
    "src/js/array.js",
    "src/js/string.js",
    "src/js/uri.js",
    "src/js/math.js",
    "src/third_party/fdlibm/fdlibm.js",
    "src/js/regexp.js",
    "src/js/arraybuffer.js",
    "src/js/typedarray.js",
    "src/js/iterator-prototype.js",
    "src/js/collection.js",
    "src/js/weak-collection.js",
    "src/js/collection-iterator.js",
    "src/js/promise.js",
    "src/js/messages.js",
    "src/js/json.js",
    "src/js/array-iterator.js",
    "src/js/string-iterator.js",
    "src/js/templates.js",
    "src/js/spread.js",
    "src/js/proxy.js",
    "src/debug/mirrors.js",
    "src/debug/debug.js",
    "src/debug/liveedit.js",
  ]

  outputs = [
    "$target_gen_dir/libraries.cc",
  ]

  if (v8_enable_i18n_support) {
    sources += [ "src/js/i18n.js" ]
  }

  args = [
           rebase_path("$target_gen_dir/libraries.cc", root_build_dir),
           "CORE",
         ] + rebase_path(sources, root_build_dir)

  if (v8_use_external_startup_data) {
    outputs += [ "$target_gen_dir/libraries.bin" ]
    args += [
      "--startup_blob",
      rebase_path("$target_gen_dir/libraries.bin", root_build_dir),
    ]
  }
}

action("js2c_experimental") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  script = "tools/js2c.py"

  # The script depends on this other script, this rule causes a rebuild if it
  # changes.
  inputs = [
    "tools/jsmin.py",
  ]

  # NOSORT
  sources = [
    "src/js/macros.py",
    "src/messages.h",
    "src/js/harmony-async-await.js",
    "src/js/harmony-atomics.js",
    "src/js/harmony-regexp-exec.js",
    "src/js/harmony-sharedarraybuffer.js",
    "src/js/harmony-simd.js",
    "src/js/harmony-species.js",
    "src/js/harmony-unicode-regexps.js",
    "src/js/harmony-string-padding.js",
    "src/js/promise-extra.js",
  ]

  outputs = [
    "$target_gen_dir/experimental-libraries.cc",
  ]

  if (v8_enable_i18n_support) {
    sources += [
      "src/js/icu-case-mapping.js",
      "src/js/intl-extra.js",
    ]
  }

  args = [
           rebase_path("$target_gen_dir/experimental-libraries.cc",
                       root_build_dir),
           "EXPERIMENTAL",
         ] + rebase_path(sources, root_build_dir)

  if (v8_use_external_startup_data) {
    outputs += [ "$target_gen_dir/libraries_experimental.bin" ]
    args += [
      "--startup_blob",
      rebase_path("$target_gen_dir/libraries_experimental.bin", root_build_dir),
    ]
  }
}

action("js2c_extras") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  script = "tools/js2c.py"

  # The script depends on this other script, this rule causes a rebuild if it
  # changes.
  inputs = [
    "tools/jsmin.py",
  ]

  sources = v8_extra_library_files

  outputs = [
    "$target_gen_dir/extras-libraries.cc",
  ]

  args = [
           rebase_path("$target_gen_dir/extras-libraries.cc", root_build_dir),
           "EXTRAS",
         ] + rebase_path(sources, root_build_dir)

  if (v8_use_external_startup_data) {
    outputs += [ "$target_gen_dir/libraries_extras.bin" ]
    args += [
      "--startup_blob",
      rebase_path("$target_gen_dir/libraries_extras.bin", root_build_dir),
    ]
  }
}

action("js2c_experimental_extras") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  script = "tools/js2c.py"

  # The script depends on this other script, this rule causes a rebuild if it
  # changes.
  inputs = [
    "tools/jsmin.py",
  ]

  sources = v8_experimental_extra_library_files

  outputs = [
    "$target_gen_dir/experimental-extras-libraries.cc",
  ]

  args = [
           rebase_path("$target_gen_dir/experimental-extras-libraries.cc",
                       root_build_dir),
           "EXPERIMENTAL_EXTRAS",
         ] + rebase_path(sources, root_build_dir)

  if (v8_use_external_startup_data) {
    outputs += [ "$target_gen_dir/libraries_experimental_extras.bin" ]
    args += [
      "--startup_blob",
      rebase_path("$target_gen_dir/libraries_experimental_extras.bin",
                  root_build_dir),
    ]
  }
}

action("d8_js2c") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  script = "tools/js2c.py"

  # NOSORT
  inputs = [
    "src/d8.js",
    "src/js/macros.py",
  ]

  outputs = [
    "$target_gen_dir/d8-js.cc",
  ]

  args = rebase_path(outputs, root_build_dir) + [ "D8" ] +
         rebase_path(inputs, root_build_dir)
}

if (is_android) {
  android_assets("v8_external_startup_data_assets") {
    if (v8_use_external_startup_data) {
      deps = [
        "//v8",
      ]
      renaming_sources = v8_external_startup_data_renaming_sources
      renaming_destinations = v8_external_startup_data_renaming_destinations
      disable_compression = true
    }
  }
}

if (v8_use_external_startup_data) {
  action("natives_blob") {
    visibility = [ ":*" ]  # Only targets in this file can depend on this.

    deps = [
      ":js2c",
      ":js2c_experimental",
      ":js2c_experimental_extras",
      ":js2c_extras",
    ]

    # NOSORT
    sources = [
      "$target_gen_dir/libraries.bin",
      "$target_gen_dir/libraries_experimental.bin",
      "$target_gen_dir/libraries_extras.bin",
      "$target_gen_dir/libraries_experimental_extras.bin",
    ]

    outputs = [
      "$root_out_dir/natives_blob.bin",
    ]

    script = "tools/concatenate-files.py"

    args = rebase_path(sources + outputs, root_build_dir)
  }
}

action("postmortem-metadata") {
  # Only targets in this file and the top-level visibility target can
  # depend on this.
  visibility = [
    ":*",
    "//:gn_visibility",
  ]

  script = "tools/gen-postmortem-metadata.py"

  # NOSORT
  sources = [
    "src/objects.h",
    "src/objects-inl.h",
  ]

  outputs = [
    "$target_gen_dir/debug-support.cc",
  ]

  args = rebase_path(outputs, root_build_dir) +
         rebase_path(sources, root_build_dir)
}

action("run_mksnapshot") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  deps = [
    ":mksnapshot($snapshot_toolchain)",
  ]

  script = "tools/run.py"

  outputs = [
    "$target_gen_dir/snapshot.cc",
  ]

  args = [
    "./" + rebase_path(get_label_info(":mksnapshot($snapshot_toolchain)",
                                      "root_out_dir") + "/mksnapshot",
                       root_build_dir),
    "--startup_src",
    rebase_path("$target_gen_dir/snapshot.cc", root_build_dir),
  ]

  if (v8_random_seed != "0") {
    args += [
      "--random-seed",
      v8_random_seed,
    ]
  }

  if (v8_use_external_startup_data) {
    outputs += [ "$root_out_dir/snapshot_blob.bin" ]
    args += [
      "--startup_blob",
      rebase_path("$root_out_dir/snapshot_blob.bin", root_build_dir),
    ]
  }
}

###############################################################################
# Source Sets (aka static libraries)
#

v8_source_set("v8_nosnapshot") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  deps = [
    ":js2c",
    ":js2c_experimental",
    ":js2c_experimental_extras",
    ":js2c_extras",
    ":v8_base",
  ]

  sources = [
    "$target_gen_dir/experimental-extras-libraries.cc",
    "$target_gen_dir/experimental-libraries.cc",
    "$target_gen_dir/extras-libraries.cc",
    "$target_gen_dir/libraries.cc",
    "src/snapshot/snapshot-empty.cc",
  ]

  configs = [ ":internal_config" ]
}

v8_source_set("v8_snapshot") {
  # Only targets in this file and the top-level visibility target can
  # depend on this.
  visibility = [
    ":*",
    "//:gn_visibility",
  ]

  deps = [
    ":js2c",
    ":js2c_experimental",
    ":js2c_experimental_extras",
    ":js2c_extras",
    ":v8_base",
  ]
  public_deps = [
    # This should be public so downstream targets can declare the snapshot
    # output file as their inputs.
    ":run_mksnapshot",
  ]

  sources = [
    "$target_gen_dir/experimental-extras-libraries.cc",
    "$target_gen_dir/experimental-libraries.cc",
    "$target_gen_dir/extras-libraries.cc",
    "$target_gen_dir/libraries.cc",
    "$target_gen_dir/snapshot.cc",
  ]

  configs = [ ":internal_config" ]
}

if (v8_use_external_startup_data) {
  v8_source_set("v8_external_snapshot") {
    visibility = [ ":*" ]  # Only targets in this file can depend on this.

    deps = [
      ":js2c",
      ":js2c_experimental",
      ":js2c_experimental_extras",
      ":js2c_extras",
      ":v8_base",
    ]
    public_deps = [
      ":natives_blob",
      ":run_mksnapshot",
    ]

    sources = [
      "src/snapshot/natives-external.cc",
      "src/snapshot/snapshot-external.cc",
    ]

    configs = [ ":internal_config" ]
  }
}

v8_source_set("v8_base") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  sources = [
    # TODO(fmeawad): This needs to be updated to support standalone V8 builds.
    "../base/trace_event/common/trace_event_common.h",
    "include/v8-debug.h",
    "include/v8-experimental.h",
    "include/v8-platform.h",
    "include/v8-profiler.h",
    "include/v8-testing.h",
    "include/v8-util.h",
    "include/v8-version.h",
    "include/v8.h",
    "include/v8config.h",
    "src/accessors.cc",
    "src/accessors.h",
    "src/address-map.cc",
    "src/address-map.h",
    "src/allocation-site-scopes.cc",
    "src/allocation-site-scopes.h",
    "src/allocation.cc",
    "src/allocation.h",
    "src/api-arguments.cc",
    "src/api-arguments.h",
    "src/api-experimental.cc",
    "src/api-experimental.h",
    "src/api-natives.cc",
    "src/api-natives.h",
    "src/api.cc",
    "src/api.h",
    "src/arguments.cc",
    "src/arguments.h",
    "src/assembler.cc",
    "src/assembler.h",
    "src/assert-scope.cc",
    "src/assert-scope.h",
    "src/ast/ast-expression-rewriter.cc",
    "src/ast/ast-expression-rewriter.h",
    "src/ast/ast-expression-visitor.cc",
    "src/ast/ast-expression-visitor.h",
    "src/ast/ast-literal-reindexer.cc",
    "src/ast/ast-literal-reindexer.h",
    "src/ast/ast-numbering.cc",
    "src/ast/ast-numbering.h",
    "src/ast/ast-type-bounds.h",
    "src/ast/ast-value-factory.cc",
    "src/ast/ast-value-factory.h",
    "src/ast/ast.cc",
    "src/ast/ast.h",
    "src/ast/modules.cc",
    "src/ast/modules.h",
    "src/ast/prettyprinter.cc",
    "src/ast/prettyprinter.h",
    "src/ast/scopeinfo.cc",
    "src/ast/scopeinfo.h",
    "src/ast/scopes.cc",
    "src/ast/scopes.h",
    "src/ast/variables.cc",
    "src/ast/variables.h",
    "src/background-parsing-task.cc",
    "src/background-parsing-task.h",
    "src/bailout-reason.cc",
    "src/bailout-reason.h",
    "src/basic-block-profiler.cc",
    "src/basic-block-profiler.h",
    "src/bignum-dtoa.cc",
    "src/bignum-dtoa.h",
    "src/bignum.cc",
    "src/bignum.h",
    "src/bit-vector.cc",
    "src/bit-vector.h",
    "src/bootstrapper.cc",
    "src/bootstrapper.h",
    "src/builtins.cc",
    "src/builtins.h",
    "src/cached-powers.cc",
    "src/cached-powers.h",
    "src/cancelable-task.cc",
    "src/cancelable-task.h",
    "src/char-predicates-inl.h",
    "src/char-predicates.cc",
    "src/char-predicates.h",
    "src/checks.h",
    "src/code-factory.cc",
    "src/code-factory.h",
    "src/code-stub-assembler.cc",
    "src/code-stub-assembler.h",
    "src/code-stubs-hydrogen.cc",
    "src/code-stubs.cc",
    "src/code-stubs.h",
    "src/codegen.cc",
    "src/codegen.h",
    "src/collector.h",
    "src/compilation-cache.cc",
    "src/compilation-cache.h",
    "src/compilation-dependencies.cc",
    "src/compilation-dependencies.h",
    "src/compilation-statistics.cc",
    "src/compilation-statistics.h",
    "src/compiler.cc",
    "src/compiler.h",
    "src/compiler/access-builder.cc",
    "src/compiler/access-builder.h",
    "src/compiler/access-info.cc",
    "src/compiler/access-info.h",
    "src/compiler/all-nodes.cc",
    "src/compiler/all-nodes.h",
    "src/compiler/ast-graph-builder.cc",
    "src/compiler/ast-graph-builder.h",
    "src/compiler/ast-loop-assignment-analyzer.cc",
    "src/compiler/ast-loop-assignment-analyzer.h",
    "src/compiler/basic-block-instrumentor.cc",
    "src/compiler/basic-block-instrumentor.h",
    "src/compiler/branch-elimination.cc",
    "src/compiler/branch-elimination.h",
    "src/compiler/bytecode-branch-analysis.cc",
    "src/compiler/bytecode-branch-analysis.h",
    "src/compiler/bytecode-graph-builder.cc",
    "src/compiler/bytecode-graph-builder.h",
    "src/compiler/c-linkage.cc",
    "src/compiler/coalesced-live-ranges.cc",
    "src/compiler/coalesced-live-ranges.h",
    "src/compiler/code-assembler.cc",
    "src/compiler/code-assembler.h",
    "src/compiler/code-generator-impl.h",
    "src/compiler/code-generator.cc",
    "src/compiler/code-generator.h",
    "src/compiler/common-node-cache.cc",
    "src/compiler/common-node-cache.h",
    "src/compiler/common-operator-reducer.cc",
    "src/compiler/common-operator-reducer.h",
    "src/compiler/common-operator.cc",
    "src/compiler/common-operator.h",
    "src/compiler/control-builders.cc",
    "src/compiler/control-builders.h",
    "src/compiler/control-equivalence.cc",
    "src/compiler/control-equivalence.h",
    "src/compiler/control-flow-optimizer.cc",
    "src/compiler/control-flow-optimizer.h",
    "src/compiler/dead-code-elimination.cc",
    "src/compiler/dead-code-elimination.h",
    "src/compiler/diamond.h",
    "src/compiler/effect-control-linearizer.cc",
    "src/compiler/effect-control-linearizer.h",
    "src/compiler/escape-analysis-reducer.cc",
    "src/compiler/escape-analysis-reducer.h",
    "src/compiler/escape-analysis.cc",
    "src/compiler/escape-analysis.h",
    "src/compiler/frame-elider.cc",
    "src/compiler/frame-elider.h",
    "src/compiler/frame-states.cc",
    "src/compiler/frame-states.h",
    "src/compiler/frame.cc",
    "src/compiler/frame.h",
    "src/compiler/gap-resolver.cc",
    "src/compiler/gap-resolver.h",
    "src/compiler/graph-reducer.cc",
    "src/compiler/graph-reducer.h",
    "src/compiler/graph-replay.cc",
    "src/compiler/graph-replay.h",
    "src/compiler/graph-trimmer.cc",
    "src/compiler/graph-trimmer.h",
    "src/compiler/graph-visualizer.cc",
    "src/compiler/graph-visualizer.h",
    "src/compiler/graph.cc",
    "src/compiler/graph.h",
    "src/compiler/greedy-allocator.cc",
    "src/compiler/greedy-allocator.h",
    "src/compiler/instruction-codes.h",
    "src/compiler/instruction-scheduler.cc",
    "src/compiler/instruction-scheduler.h",
    "src/compiler/instruction-selector-impl.h",
    "src/compiler/instruction-selector.cc",
    "src/compiler/instruction-selector.h",
    "src/compiler/instruction.cc",
    "src/compiler/instruction.h",
    "src/compiler/int64-lowering.cc",
    "src/compiler/int64-lowering.h",
    "src/compiler/js-builtin-reducer.cc",
    "src/compiler/js-builtin-reducer.h",
    "src/compiler/js-call-reducer.cc",
    "src/compiler/js-call-reducer.h",
    "src/compiler/js-context-specialization.cc",
    "src/compiler/js-context-specialization.h",
    "src/compiler/js-create-lowering.cc",
    "src/compiler/js-create-lowering.h",
    "src/compiler/js-frame-specialization.cc",
    "src/compiler/js-frame-specialization.h",
    "src/compiler/js-generic-lowering.cc",
    "src/compiler/js-generic-lowering.h",
    "src/compiler/js-global-object-specialization.cc",
    "src/compiler/js-global-object-specialization.h",
    "src/compiler/js-graph.cc",
    "src/compiler/js-graph.h",
    "src/compiler/js-inlining-heuristic.cc",
    "src/compiler/js-inlining-heuristic.h",
    "src/compiler/js-inlining.cc",
    "src/compiler/js-inlining.h",
    "src/compiler/js-intrinsic-lowering.cc",
    "src/compiler/js-intrinsic-lowering.h",
    "src/compiler/js-native-context-specialization.cc",
    "src/compiler/js-native-context-specialization.h",
    "src/compiler/js-operator.cc",
    "src/compiler/js-operator.h",
    "src/compiler/js-typed-lowering.cc",
    "src/compiler/js-typed-lowering.h",
    "src/compiler/jump-threading.cc",
    "src/compiler/jump-threading.h",
    "src/compiler/linkage.cc",
    "src/compiler/linkage.h",
    "src/compiler/live-range-separator.cc",
    "src/compiler/live-range-separator.h",
    "src/compiler/liveness-analyzer.cc",
    "src/compiler/liveness-analyzer.h",
    "src/compiler/load-elimination.cc",
    "src/compiler/load-elimination.h",
    "src/compiler/loop-analysis.cc",
    "src/compiler/loop-analysis.h",
    "src/compiler/loop-peeling.cc",
    "src/compiler/machine-operator-reducer.cc",
    "src/compiler/machine-operator-reducer.h",
    "src/compiler/machine-operator.cc",
    "src/compiler/machine-operator.h",
    "src/compiler/memory-optimizer.cc",
    "src/compiler/memory-optimizer.h",
    "src/compiler/move-optimizer.cc",
    "src/compiler/move-optimizer.h",
    "src/compiler/node-aux-data.h",
    "src/compiler/node-cache.cc",
    "src/compiler/node-cache.h",
    "src/compiler/node-marker.cc",
    "src/compiler/node-marker.h",
    "src/compiler/node-matchers.cc",
    "src/compiler/node-matchers.h",
    "src/compiler/node-properties.cc",
    "src/compiler/node-properties.h",
    "src/compiler/node.cc",
    "src/compiler/node.h",
    "src/compiler/opcodes.cc",
    "src/compiler/opcodes.h",
    "src/compiler/operator-properties.cc",
    "src/compiler/operator-properties.h",
    "src/compiler/operator.cc",
    "src/compiler/operator.h",
    "src/compiler/osr.cc",
    "src/compiler/osr.h",
    "src/compiler/pipeline-statistics.cc",
    "src/compiler/pipeline-statistics.h",
    "src/compiler/pipeline.cc",
    "src/compiler/pipeline.h",
    "src/compiler/raw-machine-assembler.cc",
    "src/compiler/raw-machine-assembler.h",
    "src/compiler/register-allocator-verifier.cc",
    "src/compiler/register-allocator-verifier.h",
    "src/compiler/register-allocator.cc",
    "src/compiler/register-allocator.h",
    "src/compiler/representation-change.cc",
    "src/compiler/representation-change.h",
    "src/compiler/schedule.cc",
    "src/compiler/schedule.h",
    "src/compiler/scheduler.cc",
    "src/compiler/scheduler.h",
    "src/compiler/select-lowering.cc",
    "src/compiler/select-lowering.h",
    "src/compiler/simplified-lowering.cc",
    "src/compiler/simplified-lowering.h",
    "src/compiler/simplified-operator-reducer.cc",
    "src/compiler/simplified-operator-reducer.h",
    "src/compiler/simplified-operator.cc",
    "src/compiler/simplified-operator.h",
    "src/compiler/source-position.cc",
    "src/compiler/source-position.h",
    "src/compiler/state-values-utils.cc",
    "src/compiler/state-values-utils.h",
    "src/compiler/tail-call-optimization.cc",
    "src/compiler/tail-call-optimization.h",
    "src/compiler/type-hint-analyzer.cc",
    "src/compiler/type-hint-analyzer.h",
    "src/compiler/type-hints.cc",
    "src/compiler/type-hints.h",
    "src/compiler/typer.cc",
    "src/compiler/typer.h",
    "src/compiler/value-numbering-reducer.cc",
    "src/compiler/value-numbering-reducer.h",
    "src/compiler/verifier.cc",
    "src/compiler/verifier.h",
    "src/compiler/wasm-compiler.cc",
    "src/compiler/wasm-compiler.h",
    "src/compiler/wasm-linkage.cc",
    "src/compiler/zone-pool.cc",
    "src/compiler/zone-pool.h",
    "src/context-measure.cc",
    "src/context-measure.h",
    "src/contexts-inl.h",
    "src/contexts.cc",
    "src/contexts.h",
    "src/conversions-inl.h",
    "src/conversions.cc",
    "src/conversions.h",
    "src/counters-inl.h",
    "src/counters.cc",
    "src/counters.h",
    "src/crankshaft/compilation-phase.cc",
    "src/crankshaft/compilation-phase.h",
    "src/crankshaft/hydrogen-alias-analysis.h",
    "src/crankshaft/hydrogen-bce.cc",
    "src/crankshaft/hydrogen-bce.h",
    "src/crankshaft/hydrogen-canonicalize.cc",
    "src/crankshaft/hydrogen-canonicalize.h",
    "src/crankshaft/hydrogen-check-elimination.cc",
    "src/crankshaft/hydrogen-check-elimination.h",
    "src/crankshaft/hydrogen-dce.cc",
    "src/crankshaft/hydrogen-dce.h",
    "src/crankshaft/hydrogen-dehoist.cc",
    "src/crankshaft/hydrogen-dehoist.h",
    "src/crankshaft/hydrogen-environment-liveness.cc",
    "src/crankshaft/hydrogen-environment-liveness.h",
    "src/crankshaft/hydrogen-escape-analysis.cc",
    "src/crankshaft/hydrogen-escape-analysis.h",
    "src/crankshaft/hydrogen-flow-engine.h",
    "src/crankshaft/hydrogen-gvn.cc",
    "src/crankshaft/hydrogen-gvn.h",
    "src/crankshaft/hydrogen-infer-representation.cc",
    "src/crankshaft/hydrogen-infer-representation.h",
    "src/crankshaft/hydrogen-infer-types.cc",
    "src/crankshaft/hydrogen-infer-types.h",
    "src/crankshaft/hydrogen-instructions.cc",
    "src/crankshaft/hydrogen-instructions.h",
    "src/crankshaft/hydrogen-load-elimination.cc",
    "src/crankshaft/hydrogen-load-elimination.h",
    "src/crankshaft/hydrogen-mark-deoptimize.cc",
    "src/crankshaft/hydrogen-mark-deoptimize.h",
    "src/crankshaft/hydrogen-mark-unreachable.cc",
    "src/crankshaft/hydrogen-mark-unreachable.h",
    "src/crankshaft/hydrogen-osr.cc",
    "src/crankshaft/hydrogen-osr.h",
    "src/crankshaft/hydrogen-range-analysis.cc",
    "src/crankshaft/hydrogen-range-analysis.h",
    "src/crankshaft/hydrogen-redundant-phi.cc",
    "src/crankshaft/hydrogen-redundant-phi.h",
    "src/crankshaft/hydrogen-removable-simulates.cc",
    "src/crankshaft/hydrogen-removable-simulates.h",
    "src/crankshaft/hydrogen-representation-changes.cc",
    "src/crankshaft/hydrogen-representation-changes.h",
    "src/crankshaft/hydrogen-sce.cc",
    "src/crankshaft/hydrogen-sce.h",
    "src/crankshaft/hydrogen-store-elimination.cc",
    "src/crankshaft/hydrogen-store-elimination.h",
    "src/crankshaft/hydrogen-types.cc",
    "src/crankshaft/hydrogen-types.h",
    "src/crankshaft/hydrogen-uint32-analysis.cc",
    "src/crankshaft/hydrogen-uint32-analysis.h",
    "src/crankshaft/hydrogen.cc",
    "src/crankshaft/hydrogen.h",
    "src/crankshaft/lithium-allocator-inl.h",
    "src/crankshaft/lithium-allocator.cc",
    "src/crankshaft/lithium-allocator.h",
    "src/crankshaft/lithium-codegen.cc",
    "src/crankshaft/lithium-codegen.h",
    "src/crankshaft/lithium.cc",
    "src/crankshaft/lithium.h",
    "src/crankshaft/typing.cc",
    "src/crankshaft/typing.h",
    "src/crankshaft/unique.h",
    "src/date.cc",
    "src/date.h",
    "src/dateparser-inl.h",
    "src/dateparser.cc",
    "src/dateparser.h",
    "src/debug/debug-evaluate.cc",
    "src/debug/debug-evaluate.h",
    "src/debug/debug-frames.cc",
    "src/debug/debug-frames.h",
    "src/debug/debug-scopes.cc",
    "src/debug/debug-scopes.h",
    "src/debug/debug.cc",
    "src/debug/debug.h",
    "src/debug/liveedit.cc",
    "src/debug/liveedit.h",
    "src/deoptimizer.cc",
    "src/deoptimizer.h",
    "src/disasm.h",
    "src/disassembler.cc",
    "src/disassembler.h",
    "src/diy-fp.cc",
    "src/diy-fp.h",
    "src/double.h",
    "src/dtoa.cc",
    "src/dtoa.h",
    "src/effects.h",
    "src/elements-kind.cc",
    "src/elements-kind.h",
    "src/elements.cc",
    "src/elements.h",
    "src/execution.cc",
    "src/execution.h",
    "src/extensions/externalize-string-extension.cc",
    "src/extensions/externalize-string-extension.h",
    "src/extensions/free-buffer-extension.cc",
    "src/extensions/free-buffer-extension.h",
    "src/extensions/gc-extension.cc",
    "src/extensions/gc-extension.h",
    "src/extensions/ignition-statistics-extension.cc",
    "src/extensions/ignition-statistics-extension.h",
    "src/extensions/statistics-extension.cc",
    "src/extensions/statistics-extension.h",
    "src/extensions/trigger-failure-extension.cc",
    "src/extensions/trigger-failure-extension.h",
    "src/external-reference-table.cc",
    "src/external-reference-table.h",
    "src/factory.cc",
    "src/factory.h",
    "src/fast-accessor-assembler.cc",
    "src/fast-accessor-assembler.h",
    "src/fast-dtoa.cc",
    "src/fast-dtoa.h",
    "src/field-index-inl.h",
    "src/field-index.h",
    "src/field-type.cc",
    "src/field-type.h",
    "src/fixed-dtoa.cc",
    "src/fixed-dtoa.h",
    "src/flag-definitions.h",
    "src/flags.cc",
    "src/flags.h",
    "src/frames-inl.h",
    "src/frames.cc",
    "src/frames.h",
    "src/full-codegen/full-codegen.cc",
    "src/full-codegen/full-codegen.h",
    "src/futex-emulation.cc",
    "src/futex-emulation.h",
    "src/gdb-jit.cc",
    "src/gdb-jit.h",
    "src/global-handles.cc",
    "src/global-handles.h",
    "src/globals.h",
    "src/handles-inl.h",
    "src/handles.cc",
    "src/handles.h",
    "src/hashmap.h",
    "src/heap-symbols.h",
    "src/heap/array-buffer-tracker.cc",
    "src/heap/array-buffer-tracker.h",
    "src/heap/gc-idle-time-handler.cc",
    "src/heap/gc-idle-time-handler.h",
    "src/heap/gc-tracer.cc",
    "src/heap/gc-tracer.h",
    "src/heap/heap-inl.h",
    "src/heap/heap.cc",
    "src/heap/heap.h",
    "src/heap/incremental-marking-job.cc",
    "src/heap/incremental-marking-job.h",
    "src/heap/incremental-marking.cc",
    "src/heap/incremental-marking.h",
    "src/heap/mark-compact-inl.h",
    "src/heap/mark-compact.cc",
    "src/heap/mark-compact.h",
    "src/heap/memory-reducer.cc",
    "src/heap/memory-reducer.h",
    "src/heap/object-stats.cc",
    "src/heap/object-stats.h",
    "src/heap/objects-visiting-inl.h",
    "src/heap/objects-visiting.cc",
    "src/heap/objects-visiting.h",
    "src/heap/page-parallel-job.h",
    "src/heap/remembered-set.cc",
    "src/heap/remembered-set.h",
    "src/heap/scavenge-job.cc",
    "src/heap/scavenge-job.h",
    "src/heap/scavenger-inl.h",
    "src/heap/scavenger.cc",
    "src/heap/scavenger.h",
    "src/heap/slot-set.h",
    "src/heap/spaces-inl.h",
    "src/heap/spaces.cc",
    "src/heap/spaces.h",
    "src/heap/store-buffer.cc",
    "src/heap/store-buffer.h",
    "src/i18n.cc",
    "src/i18n.h",
    "src/ic/access-compiler.cc",
    "src/ic/access-compiler.h",
    "src/ic/call-optimization.cc",
    "src/ic/call-optimization.h",
    "src/ic/handler-compiler.cc",
    "src/ic/handler-compiler.h",
    "src/ic/ic-compiler.cc",
    "src/ic/ic-compiler.h",
    "src/ic/ic-inl.h",
    "src/ic/ic-state.cc",
    "src/ic/ic-state.h",
    "src/ic/ic.cc",
    "src/ic/ic.h",
    "src/ic/stub-cache.cc",
    "src/ic/stub-cache.h",
    "src/icu_util.cc",
    "src/icu_util.h",
    "src/identity-map.cc",
    "src/identity-map.h",
    "src/interface-descriptors.cc",
    "src/interface-descriptors.h",
    "src/interpreter/bytecode-array-builder.cc",
    "src/interpreter/bytecode-array-builder.h",
    "src/interpreter/bytecode-array-iterator.cc",
    "src/interpreter/bytecode-array-iterator.h",
    "src/interpreter/bytecode-array-writer.cc",
    "src/interpreter/bytecode-array-writer.h",
    "src/interpreter/bytecode-generator.cc",
    "src/interpreter/bytecode-generator.h",
    "src/interpreter/bytecode-peephole-optimizer.cc",
    "src/interpreter/bytecode-peephole-optimizer.h",
    "src/interpreter/bytecode-pipeline.cc",
    "src/interpreter/bytecode-pipeline.h",
    "src/interpreter/bytecode-register-allocator.cc",
    "src/interpreter/bytecode-register-allocator.h",
    "src/interpreter/bytecode-traits.h",
    "src/interpreter/bytecodes.cc",
    "src/interpreter/bytecodes.h",
    "src/interpreter/constant-array-builder.cc",
    "src/interpreter/constant-array-builder.h",
    "src/interpreter/control-flow-builders.cc",
    "src/interpreter/control-flow-builders.h",
    "src/interpreter/handler-table-builder.cc",
    "src/interpreter/handler-table-builder.h",
    "src/interpreter/interpreter-assembler.cc",
    "src/interpreter/interpreter-assembler.h",
    "src/interpreter/interpreter-intrinsics.cc",
    "src/interpreter/interpreter-intrinsics.h",
    "src/interpreter/interpreter.cc",
    "src/interpreter/interpreter.h",
    "src/interpreter/source-position-table.cc",
    "src/interpreter/source-position-table.h",
    "src/isolate-inl.h",
    "src/isolate.cc",
    "src/isolate.h",
    "src/json-parser.h",
    "src/json-stringifier.h",
    "src/keys.cc",
    "src/keys.h",
    "src/layout-descriptor-inl.h",
    "src/layout-descriptor.cc",
    "src/layout-descriptor.h",
    "src/list-inl.h",
    "src/list.h",
    "src/log-inl.h",
    "src/log-utils.cc",
    "src/log-utils.h",
    "src/log.cc",
    "src/log.h",
    "src/lookup.cc",
    "src/lookup.h",
    "src/machine-type.cc",
    "src/machine-type.h",
    "src/macro-assembler.h",
    "src/messages.cc",
    "src/messages.h",
    "src/msan.h",
    "src/objects-body-descriptors-inl.h",
    "src/objects-body-descriptors.h",
    "src/objects-debug.cc",
    "src/objects-inl.h",
    "src/objects-printer.cc",
    "src/objects.cc",
    "src/objects.h",
    "src/optimizing-compile-dispatcher.cc",
    "src/optimizing-compile-dispatcher.h",
    "src/ostreams.cc",
    "src/ostreams.h",
    "src/parsing/expression-classifier.h",
    "src/parsing/func-name-inferrer.cc",
    "src/parsing/func-name-inferrer.h",
    "src/parsing/parameter-initializer-rewriter.cc",
    "src/parsing/parameter-initializer-rewriter.h",
    "src/parsing/parser-base.h",
    "src/parsing/parser.cc",
    "src/parsing/parser.h",
    "src/parsing/pattern-rewriter.cc",
    "src/parsing/preparse-data-format.h",
    "src/parsing/preparse-data.cc",
    "src/parsing/preparse-data.h",
    "src/parsing/preparser.cc",
    "src/parsing/preparser.h",
    "src/parsing/rewriter.cc",
    "src/parsing/rewriter.h",
    "src/parsing/scanner-character-streams.cc",
    "src/parsing/scanner-character-streams.h",
    "src/parsing/scanner.cc",
    "src/parsing/scanner.h",
    "src/parsing/token.cc",
    "src/parsing/token.h",
    "src/pending-compilation-error-handler.cc",
    "src/pending-compilation-error-handler.h",
    "src/perf-jit.cc",
    "src/perf-jit.h",
    "src/profiler/allocation-tracker.cc",
    "src/profiler/allocation-tracker.h",
    "src/profiler/circular-queue-inl.h",
    "src/profiler/circular-queue.h",
    "src/profiler/cpu-profiler-inl.h",
    "src/profiler/cpu-profiler.cc",
    "src/profiler/cpu-profiler.h",
    "src/profiler/heap-profiler.cc",
    "src/profiler/heap-profiler.h",
    "src/profiler/heap-snapshot-generator-inl.h",
    "src/profiler/heap-snapshot-generator.cc",
    "src/profiler/heap-snapshot-generator.h",
    "src/profiler/profile-generator-inl.h",
    "src/profiler/profile-generator.cc",
    "src/profiler/profile-generator.h",
    "src/profiler/sampler.cc",
    "src/profiler/sampler.h",
    "src/profiler/sampling-heap-profiler.cc",
    "src/profiler/sampling-heap-profiler.h",
    "src/profiler/strings-storage.cc",
    "src/profiler/strings-storage.h",
    "src/profiler/tick-sample.cc",
    "src/profiler/tick-sample.h",
    "src/profiler/unbound-queue-inl.h",
    "src/profiler/unbound-queue.h",
    "src/property-descriptor.cc",
    "src/property-descriptor.h",
    "src/property-details.h",
    "src/property.cc",
    "src/property.h",
    "src/prototype.h",
    "src/regexp/bytecodes-irregexp.h",
    "src/regexp/interpreter-irregexp.cc",
    "src/regexp/interpreter-irregexp.h",
    "src/regexp/jsregexp-inl.h",
    "src/regexp/jsregexp.cc",
    "src/regexp/jsregexp.h",
    "src/regexp/regexp-ast.cc",
    "src/regexp/regexp-ast.h",
    "src/regexp/regexp-macro-assembler-irregexp-inl.h",
    "src/regexp/regexp-macro-assembler-irregexp.cc",
    "src/regexp/regexp-macro-assembler-irregexp.h",
    "src/regexp/regexp-macro-assembler-tracer.cc",
    "src/regexp/regexp-macro-assembler-tracer.h",
    "src/regexp/regexp-macro-assembler.cc",
    "src/regexp/regexp-macro-assembler.h",
    "src/regexp/regexp-parser.cc",
    "src/regexp/regexp-parser.h",
    "src/regexp/regexp-stack.cc",
    "src/regexp/regexp-stack.h",
    "src/register-configuration.cc",
    "src/register-configuration.h",
    "src/runtime-profiler.cc",
    "src/runtime-profiler.h",
    "src/runtime/runtime-array.cc",
    "src/runtime/runtime-atomics.cc",
    "src/runtime/runtime-classes.cc",
    "src/runtime/runtime-collections.cc",
    "src/runtime/runtime-compiler.cc",
    "src/runtime/runtime-date.cc",
    "src/runtime/runtime-debug.cc",
    "src/runtime/runtime-forin.cc",
    "src/runtime/runtime-function.cc",
    "src/runtime/runtime-futex.cc",
    "src/runtime/runtime-generator.cc",
    "src/runtime/runtime-i18n.cc",
    "src/runtime/runtime-internal.cc",
    "src/runtime/runtime-interpreter.cc",
    "src/runtime/runtime-json.cc",
    "src/runtime/runtime-literals.cc",
    "src/runtime/runtime-liveedit.cc",
    "src/runtime/runtime-maths.cc",
    "src/runtime/runtime-numbers.cc",
    "src/runtime/runtime-object.cc",
    "src/runtime/runtime-operators.cc",
    "src/runtime/runtime-proxy.cc",
    "src/runtime/runtime-regexp.cc",
    "src/runtime/runtime-scopes.cc",
    "src/runtime/runtime-simd.cc",
    "src/runtime/runtime-strings.cc",
    "src/runtime/runtime-symbol.cc",
    "src/runtime/runtime-test.cc",
    "src/runtime/runtime-typedarray.cc",
    "src/runtime/runtime-uri.cc",
    "src/runtime/runtime-utils.h",
    "src/runtime/runtime.cc",
    "src/runtime/runtime.h",
    "src/safepoint-table.cc",
    "src/safepoint-table.h",
    "src/signature.h",
    "src/simulator.h",
    "src/small-pointer-list.h",
    "src/snapshot/code-serializer.cc",
    "src/snapshot/code-serializer.h",
    "src/snapshot/deserializer.cc",
    "src/snapshot/deserializer.h",
    "src/snapshot/natives-common.cc",
    "src/snapshot/natives.h",
    "src/snapshot/partial-serializer.cc",
    "src/snapshot/partial-serializer.h",
    "src/snapshot/serializer-common.cc",
    "src/snapshot/serializer-common.h",
    "src/snapshot/serializer.cc",
    "src/snapshot/serializer.h",
    "src/snapshot/snapshot-common.cc",
    "src/snapshot/snapshot-source-sink.cc",
    "src/snapshot/snapshot-source-sink.h",
    "src/snapshot/snapshot.h",
    "src/snapshot/startup-serializer.cc",
    "src/snapshot/startup-serializer.h",
    "src/source-position.h",
    "src/splay-tree-inl.h",
    "src/splay-tree.h",
    "src/startup-data-util.cc",
    "src/startup-data-util.h",
    "src/string-builder.cc",
    "src/string-builder.h",
    "src/string-search.h",
    "src/string-stream.cc",
    "src/string-stream.h",
    "src/strtod.cc",
    "src/strtod.h",
    "src/third_party/fdlibm/fdlibm.cc",
    "src/third_party/fdlibm/fdlibm.h",
    "src/tracing/trace-event.cc",
    "src/tracing/trace-event.h",
    "src/transitions-inl.h",
    "src/transitions.cc",
    "src/transitions.h",
    "src/type-cache.cc",
    "src/type-cache.h",
    "src/type-feedback-vector-inl.h",
    "src/type-feedback-vector.cc",
    "src/type-feedback-vector.h",
    "src/type-info.cc",
    "src/type-info.h",
    "src/types.cc",
    "src/types.h",
    "src/typing-asm.cc",
    "src/typing-asm.h",
    "src/unicode-cache-inl.h",
    "src/unicode-cache.h",
    "src/unicode-decoder.cc",
    "src/unicode-decoder.h",
    "src/unicode-inl.h",
    "src/unicode.cc",
    "src/unicode.h",
    "src/uri.cc",
    "src/uri.h",
    "src/utils-inl.h",
    "src/utils.cc",
    "src/utils.h",
    "src/v8.cc",
    "src/v8.h",
    "src/v8memory.h",
    "src/v8threads.cc",
    "src/v8threads.h",
    "src/version.cc",
    "src/version.h",
    "src/vm-state-inl.h",
    "src/vm-state.h",
    "src/wasm/asm-wasm-builder.cc",
    "src/wasm/asm-wasm-builder.h",
    "src/wasm/ast-decoder.cc",
    "src/wasm/ast-decoder.h",
    "src/wasm/decoder.h",
    "src/wasm/encoder.cc",
    "src/wasm/encoder.h",
    "src/wasm/leb-helper.h",
    "src/wasm/module-decoder.cc",
    "src/wasm/module-decoder.h",
    "src/wasm/switch-logic.cc",
    "src/wasm/switch-logic.h",
    "src/wasm/wasm-external-refs.cc",
    "src/wasm/wasm-external-refs.h",
    "src/wasm/wasm-function-name-table.cc",
    "src/wasm/wasm-function-name-table.h",
    "src/wasm/wasm-js.cc",
    "src/wasm/wasm-js.h",
    "src/wasm/wasm-macro-gen.h",
    "src/wasm/wasm-module.cc",
    "src/wasm/wasm-module.h",
    "src/wasm/wasm-opcodes.cc",
    "src/wasm/wasm-opcodes.h",
    "src/wasm/wasm-result.cc",
    "src/wasm/wasm-result.h",
    "src/zone-allocator.h",
    "src/zone-containers.h",
    "src/zone.cc",
    "src/zone.h",
  ]

  if (v8_target_arch == "x86") {
    sources += [
      "src/compiler/ia32/code-generator-ia32.cc",
      "src/compiler/ia32/instruction-codes-ia32.h",
      "src/compiler/ia32/instruction-scheduler-ia32.cc",
      "src/compiler/ia32/instruction-selector-ia32.cc",
      "src/crankshaft/ia32/lithium-codegen-ia32.cc",
      "src/crankshaft/ia32/lithium-codegen-ia32.h",
      "src/crankshaft/ia32/lithium-gap-resolver-ia32.cc",
      "src/crankshaft/ia32/lithium-gap-resolver-ia32.h",
      "src/crankshaft/ia32/lithium-ia32.cc",
      "src/crankshaft/ia32/lithium-ia32.h",
      "src/debug/ia32/debug-ia32.cc",
      "src/full-codegen/ia32/full-codegen-ia32.cc",
      "src/ia32/assembler-ia32-inl.h",
      "src/ia32/assembler-ia32.cc",
      "src/ia32/assembler-ia32.h",
      "src/ia32/builtins-ia32.cc",
      "src/ia32/code-stubs-ia32.cc",
      "src/ia32/code-stubs-ia32.h",
      "src/ia32/codegen-ia32.cc",
      "src/ia32/codegen-ia32.h",
      "src/ia32/cpu-ia32.cc",
      "src/ia32/deoptimizer-ia32.cc",
      "src/ia32/disasm-ia32.cc",
      "src/ia32/frames-ia32.cc",
      "src/ia32/frames-ia32.h",
      "src/ia32/interface-descriptors-ia32.cc",
      "src/ia32/macro-assembler-ia32.cc",
      "src/ia32/macro-assembler-ia32.h",
      "src/ic/ia32/access-compiler-ia32.cc",
      "src/ic/ia32/handler-compiler-ia32.cc",
      "src/ic/ia32/ic-compiler-ia32.cc",
      "src/ic/ia32/ic-ia32.cc",
      "src/ic/ia32/stub-cache-ia32.cc",
      "src/regexp/ia32/regexp-macro-assembler-ia32.cc",
      "src/regexp/ia32/regexp-macro-assembler-ia32.h",
    ]
  } else if (v8_target_arch == "x64") {
    sources += [
      "src/compiler/x64/code-generator-x64.cc",
      "src/compiler/x64/instruction-codes-x64.h",
      "src/compiler/x64/instruction-scheduler-x64.cc",
      "src/compiler/x64/instruction-selector-x64.cc",
      "src/crankshaft/x64/lithium-codegen-x64.cc",
      "src/crankshaft/x64/lithium-codegen-x64.h",
      "src/crankshaft/x64/lithium-gap-resolver-x64.cc",
      "src/crankshaft/x64/lithium-gap-resolver-x64.h",
      "src/crankshaft/x64/lithium-x64.cc",
      "src/crankshaft/x64/lithium-x64.h",
      "src/debug/x64/debug-x64.cc",
      "src/full-codegen/x64/full-codegen-x64.cc",
      "src/ic/x64/access-compiler-x64.cc",
      "src/ic/x64/handler-compiler-x64.cc",
      "src/ic/x64/ic-compiler-x64.cc",
      "src/ic/x64/ic-x64.cc",
      "src/ic/x64/stub-cache-x64.cc",
      "src/regexp/x64/regexp-macro-assembler-x64.cc",
      "src/regexp/x64/regexp-macro-assembler-x64.h",
      "src/x64/assembler-x64-inl.h",
      "src/x64/assembler-x64.cc",
      "src/x64/assembler-x64.h",
      "src/x64/builtins-x64.cc",
      "src/x64/code-stubs-x64.cc",
      "src/x64/code-stubs-x64.h",
      "src/x64/codegen-x64.cc",
      "src/x64/codegen-x64.h",
      "src/x64/cpu-x64.cc",
      "src/x64/deoptimizer-x64.cc",
      "src/x64/disasm-x64.cc",
      "src/x64/frames-x64.cc",
      "src/x64/frames-x64.h",
      "src/x64/interface-descriptors-x64.cc",
      "src/x64/macro-assembler-x64.cc",
      "src/x64/macro-assembler-x64.h",
    ]
  } else if (v8_target_arch == "arm") {
    sources += [
      "src/arm/assembler-arm-inl.h",
      "src/arm/assembler-arm.cc",
      "src/arm/assembler-arm.h",
      "src/arm/builtins-arm.cc",
      "src/arm/code-stubs-arm.cc",
      "src/arm/code-stubs-arm.h",
      "src/arm/codegen-arm.cc",
      "src/arm/codegen-arm.h",
      "src/arm/constants-arm.cc",
      "src/arm/constants-arm.h",
      "src/arm/cpu-arm.cc",
      "src/arm/deoptimizer-arm.cc",
      "src/arm/disasm-arm.cc",
      "src/arm/frames-arm.cc",
      "src/arm/frames-arm.h",
      "src/arm/interface-descriptors-arm.cc",
      "src/arm/interface-descriptors-arm.h",
      "src/arm/macro-assembler-arm.cc",
      "src/arm/macro-assembler-arm.h",
      "src/arm/simulator-arm.cc",
      "src/arm/simulator-arm.h",
      "src/compiler/arm/code-generator-arm.cc",
      "src/compiler/arm/instruction-codes-arm.h",
      "src/compiler/arm/instruction-scheduler-arm.cc",
      "src/compiler/arm/instruction-selector-arm.cc",
      "src/crankshaft/arm/lithium-arm.cc",
      "src/crankshaft/arm/lithium-arm.h",
      "src/crankshaft/arm/lithium-codegen-arm.cc",
      "src/crankshaft/arm/lithium-codegen-arm.h",
      "src/crankshaft/arm/lithium-gap-resolver-arm.cc",
      "src/crankshaft/arm/lithium-gap-resolver-arm.h",
      "src/debug/arm/debug-arm.cc",
      "src/full-codegen/arm/full-codegen-arm.cc",
      "src/ic/arm/access-compiler-arm.cc",
      "src/ic/arm/handler-compiler-arm.cc",
      "src/ic/arm/ic-arm.cc",
      "src/ic/arm/ic-compiler-arm.cc",
      "src/ic/arm/stub-cache-arm.cc",
      "src/regexp/arm/regexp-macro-assembler-arm.cc",
      "src/regexp/arm/regexp-macro-assembler-arm.h",
    ]
  } else if (v8_target_arch == "arm64") {
    sources += [
      "src/arm64/assembler-arm64-inl.h",
      "src/arm64/assembler-arm64.cc",
      "src/arm64/assembler-arm64.h",
      "src/arm64/builtins-arm64.cc",
      "src/arm64/code-stubs-arm64.cc",
      "src/arm64/code-stubs-arm64.h",
      "src/arm64/codegen-arm64.cc",
      "src/arm64/codegen-arm64.h",
      "src/arm64/constants-arm64.h",
      "src/arm64/cpu-arm64.cc",
      "src/arm64/decoder-arm64-inl.h",
      "src/arm64/decoder-arm64.cc",
      "src/arm64/decoder-arm64.h",
      "src/arm64/deoptimizer-arm64.cc",
      "src/arm64/disasm-arm64.cc",
      "src/arm64/disasm-arm64.h",
      "src/arm64/frames-arm64.cc",
      "src/arm64/frames-arm64.h",
      "src/arm64/instructions-arm64.cc",
      "src/arm64/instructions-arm64.h",
      "src/arm64/instrument-arm64.cc",
      "src/arm64/instrument-arm64.h",
      "src/arm64/interface-descriptors-arm64.cc",
      "src/arm64/interface-descriptors-arm64.h",
      "src/arm64/macro-assembler-arm64-inl.h",
      "src/arm64/macro-assembler-arm64.cc",
      "src/arm64/macro-assembler-arm64.h",
      "src/arm64/simulator-arm64.cc",
      "src/arm64/simulator-arm64.h",
      "src/arm64/utils-arm64.cc",
      "src/arm64/utils-arm64.h",
      "src/compiler/arm64/code-generator-arm64.cc",
      "src/compiler/arm64/instruction-codes-arm64.h",
      "src/compiler/arm64/instruction-scheduler-arm64.cc",
      "src/compiler/arm64/instruction-selector-arm64.cc",
      "src/crankshaft/arm64/delayed-masm-arm64-inl.h",
      "src/crankshaft/arm64/delayed-masm-arm64.cc",
      "src/crankshaft/arm64/delayed-masm-arm64.h",
      "src/crankshaft/arm64/lithium-arm64.cc",
      "src/crankshaft/arm64/lithium-arm64.h",
      "src/crankshaft/arm64/lithium-codegen-arm64.cc",
      "src/crankshaft/arm64/lithium-codegen-arm64.h",
      "src/crankshaft/arm64/lithium-gap-resolver-arm64.cc",
      "src/crankshaft/arm64/lithium-gap-resolver-arm64.h",
      "src/debug/arm64/debug-arm64.cc",
      "src/full-codegen/arm64/full-codegen-arm64.cc",
      "src/ic/arm64/access-compiler-arm64.cc",
      "src/ic/arm64/handler-compiler-arm64.cc",
      "src/ic/arm64/ic-arm64.cc",
      "src/ic/arm64/ic-compiler-arm64.cc",
      "src/ic/arm64/stub-cache-arm64.cc",
      "src/regexp/arm64/regexp-macro-assembler-arm64.cc",
      "src/regexp/arm64/regexp-macro-assembler-arm64.h",
    ]
  } else if (v8_target_arch == "mipsel") {
    sources += [
      "src/compiler/mips/code-generator-mips.cc",
      "src/compiler/mips/instruction-codes-mips.h",
      "src/compiler/mips/instruction-scheduler-mips.cc",
      "src/compiler/mips/instruction-selector-mips.cc",
      "src/crankshaft/mips/lithium-codegen-mips.cc",
      "src/crankshaft/mips/lithium-codegen-mips.h",
      "src/crankshaft/mips/lithium-gap-resolver-mips.cc",
      "src/crankshaft/mips/lithium-gap-resolver-mips.h",
      "src/crankshaft/mips/lithium-mips.cc",
      "src/crankshaft/mips/lithium-mips.h",
      "src/debug/mips/debug-mips.cc",
      "src/full-codegen/mips/full-codegen-mips.cc",
      "src/ic/mips/access-compiler-mips.cc",
      "src/ic/mips/handler-compiler-mips.cc",
      "src/ic/mips/ic-compiler-mips.cc",
      "src/ic/mips/ic-mips.cc",
      "src/ic/mips/stub-cache-mips.cc",
      "src/mips/assembler-mips-inl.h",
      "src/mips/assembler-mips.cc",
      "src/mips/assembler-mips.h",
      "src/mips/builtins-mips.cc",
      "src/mips/code-stubs-mips.cc",
      "src/mips/code-stubs-mips.h",
      "src/mips/codegen-mips.cc",
      "src/mips/codegen-mips.h",
      "src/mips/constants-mips.cc",
      "src/mips/constants-mips.h",
      "src/mips/cpu-mips.cc",
      "src/mips/deoptimizer-mips.cc",
      "src/mips/disasm-mips.cc",
      "src/mips/frames-mips.cc",
      "src/mips/frames-mips.h",
      "src/mips/interface-descriptors-mips.cc",
      "src/mips/macro-assembler-mips.cc",
      "src/mips/macro-assembler-mips.h",
      "src/mips/simulator-mips.cc",
      "src/mips/simulator-mips.h",
      "src/regexp/mips/regexp-macro-assembler-mips.cc",
      "src/regexp/mips/regexp-macro-assembler-mips.h",
    ]
  } else if (v8_target_arch == "mips64el") {
    sources += [
      "src/compiler/mips64/code-generator-mips64.cc",
      "src/compiler/mips64/instruction-codes-mips64.h",
      "src/compiler/mips64/instruction-scheduler-mips64.cc",
      "src/compiler/mips64/instruction-selector-mips64.cc",
      "src/crankshaft/mips64/lithium-codegen-mips64.cc",
      "src/crankshaft/mips64/lithium-codegen-mips64.h",
      "src/crankshaft/mips64/lithium-gap-resolver-mips64.cc",
      "src/crankshaft/mips64/lithium-gap-resolver-mips64.h",
      "src/crankshaft/mips64/lithium-mips64.cc",
      "src/crankshaft/mips64/lithium-mips64.h",
      "src/debug/mips64/debug-mips64.cc",
      "src/full-codegen/mips64/full-codegen-mips64.cc",
      "src/ic/mips64/access-compiler-mips64.cc",
      "src/ic/mips64/handler-compiler-mips64.cc",
      "src/ic/mips64/ic-compiler-mips64.cc",
      "src/ic/mips64/ic-mips64.cc",
      "src/ic/mips64/stub-cache-mips64.cc",
      "src/mips64/assembler-mips64-inl.h",
      "src/mips64/assembler-mips64.cc",
      "src/mips64/assembler-mips64.h",
      "src/mips64/builtins-mips64.cc",
      "src/mips64/code-stubs-mips64.cc",
      "src/mips64/code-stubs-mips64.h",
      "src/mips64/codegen-mips64.cc",
      "src/mips64/codegen-mips64.h",
      "src/mips64/constants-mips64.cc",
      "src/mips64/constants-mips64.h",
      "src/mips64/cpu-mips64.cc",
      "src/mips64/deoptimizer-mips64.cc",
      "src/mips64/disasm-mips64.cc",
      "src/mips64/frames-mips64.cc",
      "src/mips64/frames-mips64.h",
      "src/mips64/interface-descriptors-mips64.cc",
      "src/mips64/macro-assembler-mips64.cc",
      "src/mips64/macro-assembler-mips64.h",
      "src/mips64/simulator-mips64.cc",
      "src/mips64/simulator-mips64.h",
      "src/regexp/mips64/regexp-macro-assembler-mips64.cc",
      "src/regexp/mips64/regexp-macro-assembler-mips64.h",
    ]
  } else if (v8_target_arch == "s390" || v8_target_arch == "s390x") {
    sources += [
      "src/compiler/s390/code-generator-s390.cc",
      "src/compiler/s390/instruction-codes-s390.h",
      "src/compiler/s390/instruction-scheduler-s390.cc",
      "src/compiler/s390/instruction-selector-s390.cc",
      "src/crankshaft/s390/lithium-codegen-s390.cc",
      "src/crankshaft/s390/lithium-codegen-s390.h",
      "src/crankshaft/s390/lithium-gap-resolver-s390.cc",
      "src/crankshaft/s390/lithium-gap-resolver-s390.h",
      "src/crankshaft/s390/lithium-s390.cc",
      "src/crankshaft/s390/lithium-s390.h",
      "src/debug/s390/debug-s390.cc",
      "src/full-codegen/s390/full-codegen-s390.cc",
      "src/ic/s390/access-compiler-s390.cc",
      "src/ic/s390/handler-compiler-s390.cc",
      "src/ic/s390/ic-compiler-s390.cc",
      "src/ic/s390/ic-s390.cc",
      "src/ic/s390/stub-cache-s390.cc",
      "src/regexp/s390/regexp-macro-assembler-s390.cc",
      "src/regexp/s390/regexp-macro-assembler-s390.h",
      "src/s390/assembler-s390-inl.h",
      "src/s390/assembler-s390.cc",
      "src/s390/assembler-s390.h",
      "src/s390/builtins-s390.cc",
      "src/s390/code-stubs-s390.cc",
      "src/s390/code-stubs-s390.h",
      "src/s390/codegen-s390.cc",
      "src/s390/codegen-s390.h",
      "src/s390/constants-s390.cc",
      "src/s390/constants-s390.h",
      "src/s390/cpu-s390.cc",
      "src/s390/deoptimizer-s390.cc",
      "src/s390/disasm-s390.cc",
      "src/s390/frames-s390.cc",
      "src/s390/frames-s390.h",
      "src/s390/interface-descriptors-s390.cc",
      "src/s390/macro-assembler-s390.cc",
      "src/s390/macro-assembler-s390.h",
      "src/s390/simulator-s390.cc",
      "src/s390/simulator-s390.h",
    ]
  }

  configs = [ ":internal_config" ]

  defines = []
  deps = [
    ":v8_libbase",
  ]

  if (is_win) {
    # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
    cflags = [ "/wd4267" ]
  }

  if (v8_enable_i18n_support) {
    deps += [ "//third_party/icu" ]
    if (is_win) {
      deps += [ "//third_party/icu:icudata" ]
    }

    if (icu_use_data_file_flag) {
      defines += [ "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE" ]
    } else if (is_win) {
      defines += [ "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_SHARED" ]
    } else {
      defines += [ "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC" ]
    }
  } else {
    sources -= [
      "src/i18n.cc",
      "src/i18n.h",
    ]
  }

  if (v8_postmortem_support) {
    sources += [ "$target_gen_dir/debug-support.cc" ]
    deps += [ ":postmortem-metadata" ]
  }
}

v8_source_set("v8_libbase") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  sources = [
    "src/base/accounting-allocator.cc",
    "src/base/accounting-allocator.h",
    "src/base/adapters.h",
    "src/base/atomic-utils.h",
    "src/base/atomicops.h",
    "src/base/atomicops_internals_arm64_gcc.h",
    "src/base/atomicops_internals_arm_gcc.h",
    "src/base/atomicops_internals_atomicword_compat.h",
    "src/base/atomicops_internals_mac.h",
    "src/base/atomicops_internals_mips64_gcc.h",
    "src/base/atomicops_internals_mips_gcc.h",
    "src/base/atomicops_internals_portable.h",
    "src/base/atomicops_internals_s390_gcc.h",
    "src/base/atomicops_internals_tsan.h",
    "src/base/atomicops_internals_x86_gcc.cc",
    "src/base/atomicops_internals_x86_gcc.h",
    "src/base/atomicops_internals_x86_msvc.h",
    "src/base/bits.cc",
    "src/base/bits.h",
    "src/base/build_config.h",
    "src/base/cpu.cc",
    "src/base/cpu.h",
    "src/base/division-by-constant.cc",
    "src/base/division-by-constant.h",
    "src/base/flags.h",
    "src/base/format-macros.h",
    "src/base/functional.cc",
    "src/base/functional.h",
    "src/base/iterator.h",
    "src/base/lazy-instance.h",
    "src/base/logging.cc",
    "src/base/logging.h",
    "src/base/macros.h",
    "src/base/once.cc",
    "src/base/once.h",
    "src/base/platform/condition-variable.cc",
    "src/base/platform/condition-variable.h",
    "src/base/platform/elapsed-timer.h",
    "src/base/platform/mutex.cc",
    "src/base/platform/mutex.h",
    "src/base/platform/platform.h",
    "src/base/platform/semaphore.cc",
    "src/base/platform/semaphore.h",
    "src/base/platform/time.cc",
    "src/base/platform/time.h",
    "src/base/safe_conversions.h",
    "src/base/safe_conversions_impl.h",
    "src/base/safe_math.h",
    "src/base/safe_math_impl.h",
    "src/base/smart-pointers.h",
    "src/base/sys-info.cc",
    "src/base/sys-info.h",
    "src/base/utils/random-number-generator.cc",
    "src/base/utils/random-number-generator.h",
  ]

  configs = [ ":internal_config_base" ]

  defines = []

  if (is_posix) {
    sources += [ "src/base/platform/platform-posix.cc" ]
  }

  if (is_linux) {
    sources += [ "src/base/platform/platform-linux.cc" ]

    libs = [
      "dl",
      "rt",
    ]
  } else if (is_android) {
    if (current_toolchain == host_toolchain) {
      libs = [
        "dl",
        "rt",
      ]
      if (host_os == "mac") {
        sources += [ "src/base/platform/platform-macos.cc" ]
      } else {
        sources += [ "src/base/platform/platform-linux.cc" ]
      }
    } else {
      sources += [ "src/base/platform/platform-linux.cc" ]
    }
  } else if (is_mac) {
    sources += [ "src/base/platform/platform-macos.cc" ]
  } else if (is_win) {
    # TODO(jochen): Add support for cygwin.
    sources += [
      "src/base/platform/platform-win32.cc",
      "src/base/win32-headers.h",
    ]

    defines += [ "_CRT_RAND_S" ]  # for rand_s()

    libs = [
      "winmm.lib",
      "ws2_32.lib",
    ]
  }

  # TODO(jochen): Add support for qnx, freebsd, openbsd, netbsd, and solaris.
}

v8_source_set("v8_libplatform") {
  sources = [
    "include/libplatform/libplatform.h",
    "src/libplatform/default-platform.cc",
    "src/libplatform/default-platform.h",
    "src/libplatform/task-queue.cc",
    "src/libplatform/task-queue.h",
    "src/libplatform/worker-thread.cc",
    "src/libplatform/worker-thread.h",
  ]

  configs = [ ":internal_config_base" ]

  public_configs = [ ":libplatform_config" ]

  deps = [
    ":v8_libbase",
  ]
}

v8_source_set("fuzzer_support") {
  visibility = [ ":*" ]  # Only targets in this file can depend on this.

  sources = [
    "test/fuzzer/fuzzer-support.cc",
    "test/fuzzer/fuzzer-support.h",
  ]

  configs = [ ":internal_config_base" ]

  deps = [
    snapshot_target,
  ]

  public_deps = [
    ":v8_libplatform",
  ]
}

###############################################################################
# Executables
#

if (current_toolchain == snapshot_toolchain) {
  executable("mksnapshot") {
    visibility = [ ":*" ]  # Only targets in this file can depend on this.

    sources = [
      "src/snapshot/mksnapshot.cc",
    ]

    configs -= [ "//build/config/compiler:chromium_code" ]
    configs += [ "//build/config/compiler:no_chromium_code" ]
    configs += [
      ":internal_config",
      ":features",
      ":toolchain",
    ]

    deps = [
      ":v8_base",
      ":v8_libplatform",
      ":v8_nosnapshot",
      "//build/config/sanitizers:deps",
      "//build/win:default_exe_manifest",
    ]
  }
}

###############################################################################
# Public targets
#

if (is_component_build) {
  component("v8") {
    sources = [
      "src/v8dll-main.cc",
    ]

    public_deps = [
      ":v8_base",
      snapshot_target,
    ]

    configs -= [ "//build/config/compiler:chromium_code" ]
    configs += [ "//build/config/compiler:no_chromium_code" ]
    configs += [
      ":internal_config",
      ":features",
      ":toolchain",
    ]

    public_configs = [ ":external_config" ]
  }
} else {
  group("v8") {
    public_deps = [
      ":v8_base",
      snapshot_target,
    ]
    public_configs = [ ":external_config" ]
  }
}

executable("d8") {
  sources = [
    "src/d8.cc",
    "src/d8.h",
  ]

  configs -= [ "//build/config/compiler:chromium_code" ]
  configs += [ "//build/config/compiler:no_chromium_code" ]
  configs += [
    # Note: don't use :internal_config here because this target will get
    # the :external_config applied to it by virtue of depending on :v8, and
    # you can't have both applied to the same target.
    ":internal_config_base",
    ":features",
    ":toolchain",
  ]

  deps = [
    ":d8_js2c",
    ":v8",
    ":v8_libplatform",
    "//build/config/sanitizers:deps",
    "//build/win:default_exe_manifest",
  ]

  # TODO(jochen): Add support for vtunejit.

  if (is_posix) {
    sources += [ "src/d8-posix.cc" ]
  } else if (is_win) {
    sources += [ "src/d8-windows.cc" ]
  }

  if (!is_component_build) {
    sources += [ "$target_gen_dir/d8-js.cc" ]
  }
  if (v8_enable_i18n_support) {
    deps += [ "//third_party/icu" ]
  }
}

if ((current_toolchain == host_toolchain && v8_toolset_for_shell == "host") || (current_toolchain == snapshot_toolchain && v8_toolset_for_shell == "host") || (current_toolchain != host_toolchain && v8_toolset_for_shell == "target")) {
  executable("v8_shell") {
    sources = [
      "samples/shell.cc",
    ]

    configs -= [ "//build/config/compiler:chromium_code" ]
    configs += [ "//build/config/compiler:no_chromium_code" ]
    configs += [
      # Note: don't use :internal_config here because this target will get
      # the :external_config applied to it by virtue of depending on :v8, and
      # you can't have both applied to the same target.
      ":internal_config_base",
      ":features",
      ":toolchain",
    ]

    deps = [
      ":v8",
      ":v8_libplatform",
      "//build/config/sanitizers:deps",
      "//build/win:default_exe_manifest",
    ]

    if (v8_enable_i18n_support) {
      deps += [ "//third_party/icu" ]
    }
  }
}

v8_source_set("json_fuzzer") {
  sources = [
    "test/fuzzer/json.cc",
  ]

  deps = [
    ":fuzzer_support",
  ]

  configs = [ ":internal_config" ]
}

v8_source_set("parser_fuzzer") {
  sources = [
    "test/fuzzer/parser.cc",
  ]

  deps = [
    ":fuzzer_support",
  ]

  configs = [ ":internal_config" ]
}

v8_source_set("regexp_fuzzer") {
  sources = [
    "test/fuzzer/regexp.cc",
  ]

  deps = [
    ":fuzzer_support",
  ]

  configs = [ ":internal_config" ]
}

v8_source_set("wasm_fuzzer") {
  sources = [
    "test/fuzzer/wasm.cc",
  ]

  deps = [
    ":fuzzer_support",
  ]

  configs = [ ":internal_config" ]
}

v8_source_set("wasm_asmjs_fuzzer") {
  sources = [
    "test/fuzzer/wasm-asmjs.cc",
  ]

  deps = [
    ":fuzzer_support",
  ]

  configs = [ ":internal_config" ]
}
