# Copyright (c) 2020 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.

# This file contains configs that need to be added or removed to all
# SwiftShader libraries

import("../swiftshader.gni")
import("//build_overrides/build.gni")

declare_args() {
  # Subzero doesn't support ARM64, MIPS64, and PPC64.
  supports_subzero = current_cpu != "arm64" && current_cpu != "mips64el" && current_cpu != "ppc64"
  supports_llvm = is_linux || is_chromeos || is_fuchsia || is_win || is_android || is_mac
}

declare_args() {
  # Subzero produces much smaller binaries, so always use it when available,
  # except for MSan builds which only get Reactor code instrumented with LLVM.
  use_swiftshader_with_subzero = supports_subzero && !is_msan
}