summaryrefslogtreecommitdiffstats
path: root/third_party/libwebrtc/build/config/mips.gni
blob: 8ad7e27911d77150879b3309b87b1b74ddbf6374 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# Copyright 2015 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/v8_target_cpu.gni")

# These are primarily relevant in target_cpu == "mips*" contexts, where
# MIPS code is being compiled.  But they can also be relevant in the
# other contexts when the code will change its behavior based on the
# cpu it wants to generate code for.
declare_args() {
  # MIPS MultiMedia Instruction compilation flag.
  mips_use_mmi = false
}

if (target_cpu == "mipsel" || v8_target_cpu == "mipsel" ||
    target_cpu == "mips" || v8_target_cpu == "mips") {
  declare_args() {
    # MIPS arch variant. Possible values are:
    #   "r1"
    #   "r2"
    #   "r6"
    #   "loongson3"
    mips_arch_variant = "r1"

    # MIPS DSP ASE revision. Possible values are:
    #   0: unavailable
    #   1: revision 1
    #   2: revision 2
    mips_dsp_rev = 0

    # MIPS SIMD Arch compilation flag.
    mips_use_msa = false

    # MIPS floating-point ABI. Possible values are:
    #   "hard": sets the GCC -mhard-float option.
    #   "soft": sets the GCC -msoft-float option.
    mips_float_abi = "hard"

    # MIPS32 floating-point register width. Possible values are:
    #   "fp32": sets the GCC -mfp32 option.
    #   "fp64": sets the GCC -mfp64 option.
    #   "fpxx": sets the GCC -mfpxx option.
    mips_fpu_mode = "fp32"
  }
} else if (target_cpu == "mips64el" || v8_target_cpu == "mips64el" ||
           target_cpu == "mips64" || v8_target_cpu == "mips64") {
  # MIPS arch variant. Possible values are:
  #   "r2"
  #   "r6"
  #   "loongson3"
  if (current_os == "android" || target_os == "android") {
    declare_args() {
      mips_arch_variant = "r6"

      # MIPS SIMD Arch compilation flag.
      mips_use_msa = true
    }
  } else {
    declare_args() {
      mips_arch_variant = "r2"

      # MIPS SIMD Arch compilation flag.
      mips_use_msa = false
    }
  }
}