1*2b54f0dbSXin Li# Copied from TensorFlow's `tensorflow/tree/master/third_party/cpuinfo/BUILD 2*2b54f0dbSXin Li# Licenced under Apache-2.0 License 3*2b54f0dbSXin Li 4*2b54f0dbSXin Li# cpuinfo, a library to detect information about the host CPU 5*2b54f0dbSXin Lipackage(default_visibility = ["//visibility:public"]) 6*2b54f0dbSXin Li 7*2b54f0dbSXin Lilicenses(["notice"]) 8*2b54f0dbSXin Li 9*2b54f0dbSXin Liexports_files(["LICENSE"]) 10*2b54f0dbSXin Li 11*2b54f0dbSXin LiC99OPTS = [ 12*2b54f0dbSXin Li "-std=gnu99", # gnu99, not c99, because dprintf is used 13*2b54f0dbSXin Li "-Wno-vla", 14*2b54f0dbSXin Li "-D_GNU_SOURCE=1", # to use CPU_SETSIZE 15*2b54f0dbSXin Li "-DCPUINFO_INTERNAL=", 16*2b54f0dbSXin Li "-DCPUINFO_PRIVATE=", 17*2b54f0dbSXin Li] 18*2b54f0dbSXin Li 19*2b54f0dbSXin Li# Source code common to all platforms. 20*2b54f0dbSXin LiCOMMON_SRCS = [ 21*2b54f0dbSXin Li "src/api.c", 22*2b54f0dbSXin Li "src/init.c", 23*2b54f0dbSXin Li "src/cache.c", 24*2b54f0dbSXin Li] 25*2b54f0dbSXin Li 26*2b54f0dbSXin Li# Architecture-specific sources and headers. 27*2b54f0dbSXin LiX86_SRCS = [ 28*2b54f0dbSXin Li "src/x86/cache/descriptor.c", 29*2b54f0dbSXin Li "src/x86/cache/deterministic.c", 30*2b54f0dbSXin Li "src/x86/cache/init.c", 31*2b54f0dbSXin Li "src/x86/info.c", 32*2b54f0dbSXin Li "src/x86/init.c", 33*2b54f0dbSXin Li "src/x86/isa.c", 34*2b54f0dbSXin Li "src/x86/name.c", 35*2b54f0dbSXin Li "src/x86/topology.c", 36*2b54f0dbSXin Li "src/x86/uarch.c", 37*2b54f0dbSXin Li "src/x86/vendor.c", 38*2b54f0dbSXin Li] 39*2b54f0dbSXin Li 40*2b54f0dbSXin LiARM_SRCS = [ 41*2b54f0dbSXin Li "src/arm/cache.c", 42*2b54f0dbSXin Li "src/arm/uarch.c", 43*2b54f0dbSXin Li] 44*2b54f0dbSXin Li 45*2b54f0dbSXin Li# Platform-specific sources and headers 46*2b54f0dbSXin LiLINUX_SRCS = [ 47*2b54f0dbSXin Li "src/linux/cpulist.c", 48*2b54f0dbSXin Li "src/linux/multiline.c", 49*2b54f0dbSXin Li "src/linux/processors.c", 50*2b54f0dbSXin Li "src/linux/smallfile.c", 51*2b54f0dbSXin Li] 52*2b54f0dbSXin Li 53*2b54f0dbSXin LiMOCK_LINUX_SRCS = [ 54*2b54f0dbSXin Li "src/linux/mockfile.c", 55*2b54f0dbSXin Li] 56*2b54f0dbSXin Li 57*2b54f0dbSXin LiMACH_SRCS = [ 58*2b54f0dbSXin Li "src/mach/topology.c", 59*2b54f0dbSXin Li] 60*2b54f0dbSXin Li 61*2b54f0dbSXin LiEMSCRIPTEN_SRCS = [ 62*2b54f0dbSXin Li "src/emscripten/init.c", 63*2b54f0dbSXin Li] 64*2b54f0dbSXin Li 65*2b54f0dbSXin LiLINUX_X86_SRCS = [ 66*2b54f0dbSXin Li "src/x86/linux/cpuinfo.c", 67*2b54f0dbSXin Li "src/x86/linux/init.c", 68*2b54f0dbSXin Li] 69*2b54f0dbSXin Li 70*2b54f0dbSXin LiLINUX_ARM_SRCS = [ 71*2b54f0dbSXin Li "src/arm/linux/chipset.c", 72*2b54f0dbSXin Li "src/arm/linux/clusters.c", 73*2b54f0dbSXin Li "src/arm/linux/cpuinfo.c", 74*2b54f0dbSXin Li "src/arm/linux/hwcap.c", 75*2b54f0dbSXin Li "src/arm/linux/init.c", 76*2b54f0dbSXin Li "src/arm/linux/midr.c", 77*2b54f0dbSXin Li] 78*2b54f0dbSXin Li 79*2b54f0dbSXin LiLINUX_ARM32_SRCS = LINUX_ARM_SRCS + ["src/arm/linux/aarch32-isa.c"] 80*2b54f0dbSXin Li 81*2b54f0dbSXin LiLINUX_ARM64_SRCS = LINUX_ARM_SRCS + ["src/arm/linux/aarch64-isa.c"] 82*2b54f0dbSXin Li 83*2b54f0dbSXin LiANDROID_ARM_SRCS = [ 84*2b54f0dbSXin Li "src/arm/android/properties.c", 85*2b54f0dbSXin Li] 86*2b54f0dbSXin Li 87*2b54f0dbSXin LiWINDOWS_X86_SRCS = [ 88*2b54f0dbSXin Li "src/x86/windows/init.c", 89*2b54f0dbSXin Li] 90*2b54f0dbSXin Li 91*2b54f0dbSXin LiMACH_X86_SRCS = [ 92*2b54f0dbSXin Li "src/x86/mach/init.c", 93*2b54f0dbSXin Li] 94*2b54f0dbSXin Li 95*2b54f0dbSXin LiMACH_ARM_SRCS = [ 96*2b54f0dbSXin Li "src/arm/mach/init.c", 97*2b54f0dbSXin Li] 98*2b54f0dbSXin Li 99*2b54f0dbSXin LiEMSCRIPTEN_SRCS = [ 100*2b54f0dbSXin Li "src/emscripten/init.c", 101*2b54f0dbSXin Li] 102*2b54f0dbSXin Li 103*2b54f0dbSXin Licc_library( 104*2b54f0dbSXin Li name = "cpuinfo_impl", 105*2b54f0dbSXin Li srcs = select({ 106*2b54f0dbSXin Li ":linux_x86_64": COMMON_SRCS + X86_SRCS + LINUX_SRCS + LINUX_X86_SRCS, 107*2b54f0dbSXin Li ":linux_arm": COMMON_SRCS + ARM_SRCS + LINUX_SRCS + LINUX_ARM32_SRCS, 108*2b54f0dbSXin Li ":linux_armhf": COMMON_SRCS + ARM_SRCS + LINUX_SRCS + LINUX_ARM32_SRCS, 109*2b54f0dbSXin Li ":linux_armv7a": COMMON_SRCS + ARM_SRCS + LINUX_SRCS + LINUX_ARM32_SRCS, 110*2b54f0dbSXin Li ":linux_armeabi": COMMON_SRCS + ARM_SRCS + LINUX_SRCS + LINUX_ARM32_SRCS, 111*2b54f0dbSXin Li ":linux_aarch64": COMMON_SRCS + ARM_SRCS + LINUX_SRCS + LINUX_ARM64_SRCS, 112*2b54f0dbSXin Li ":linux_mips64": COMMON_SRCS + LINUX_SRCS, 113*2b54f0dbSXin Li ":linux_riscv64": COMMON_SRCS + LINUX_SRCS, 114*2b54f0dbSXin Li ":linux_s390x": COMMON_SRCS + LINUX_SRCS, 115*2b54f0dbSXin Li ":macos_x86_64": COMMON_SRCS + X86_SRCS + MACH_SRCS + MACH_X86_SRCS, 116*2b54f0dbSXin Li ":macos_arm64": COMMON_SRCS + MACH_SRCS + MACH_ARM_SRCS, 117*2b54f0dbSXin Li ":windows_x86_64": COMMON_SRCS + X86_SRCS + WINDOWS_X86_SRCS, 118*2b54f0dbSXin Li ":android_armv7": COMMON_SRCS + ARM_SRCS + LINUX_SRCS + LINUX_ARM32_SRCS + ANDROID_ARM_SRCS, 119*2b54f0dbSXin Li ":android_arm64": COMMON_SRCS + ARM_SRCS + LINUX_SRCS + LINUX_ARM64_SRCS + ANDROID_ARM_SRCS, 120*2b54f0dbSXin Li ":android_x86": COMMON_SRCS + X86_SRCS + LINUX_SRCS + LINUX_X86_SRCS, 121*2b54f0dbSXin Li ":android_x86_64": COMMON_SRCS + X86_SRCS + LINUX_SRCS + LINUX_X86_SRCS, 122*2b54f0dbSXin Li ":ios_x86_64": COMMON_SRCS + X86_SRCS + MACH_SRCS + MACH_X86_SRCS, 123*2b54f0dbSXin Li ":ios_x86": COMMON_SRCS + X86_SRCS + MACH_SRCS + MACH_X86_SRCS, 124*2b54f0dbSXin Li ":ios_armv7": COMMON_SRCS + MACH_SRCS + MACH_ARM_SRCS, 125*2b54f0dbSXin Li ":ios_arm64": COMMON_SRCS + MACH_SRCS + MACH_ARM_SRCS, 126*2b54f0dbSXin Li ":ios_arm64e": COMMON_SRCS + MACH_SRCS + MACH_ARM_SRCS, 127*2b54f0dbSXin Li ":ios_sim_arm64": COMMON_SRCS + MACH_SRCS + MACH_ARM_SRCS, 128*2b54f0dbSXin Li ":watchos_x86_64": COMMON_SRCS + X86_SRCS + MACH_SRCS + MACH_X86_SRCS, 129*2b54f0dbSXin Li ":watchos_x86": COMMON_SRCS + X86_SRCS + MACH_SRCS + MACH_X86_SRCS, 130*2b54f0dbSXin Li ":watchos_armv7k": COMMON_SRCS + MACH_SRCS + MACH_ARM_SRCS, 131*2b54f0dbSXin Li ":watchos_arm64_32": COMMON_SRCS + MACH_SRCS + MACH_ARM_SRCS, 132*2b54f0dbSXin Li ":tvos_x86_64": COMMON_SRCS + X86_SRCS + MACH_SRCS + MACH_X86_SRCS, 133*2b54f0dbSXin Li ":tvos_arm64": COMMON_SRCS + MACH_SRCS + MACH_ARM_SRCS, 134*2b54f0dbSXin Li ":emscripten_wasm": COMMON_SRCS + EMSCRIPTEN_SRCS, 135*2b54f0dbSXin Li }), 136*2b54f0dbSXin Li copts = select({ 137*2b54f0dbSXin Li ":windows_x86_64": [], 138*2b54f0dbSXin Li "//conditions:default": C99OPTS, 139*2b54f0dbSXin Li }) + [ 140*2b54f0dbSXin Li "-Iexternal/cpuinfo/include", 141*2b54f0dbSXin Li "-Iexternal/cpuinfo/src", 142*2b54f0dbSXin Li ], 143*2b54f0dbSXin Li includes = [ 144*2b54f0dbSXin Li "include", 145*2b54f0dbSXin Li "src", 146*2b54f0dbSXin Li ], 147*2b54f0dbSXin Li linkstatic = select({ 148*2b54f0dbSXin Li # https://github.com/bazelbuild/bazel/issues/11552 149*2b54f0dbSXin Li ":macos_x86_64": False, 150*2b54f0dbSXin Li "//conditions:default": True, 151*2b54f0dbSXin Li }), 152*2b54f0dbSXin Li # Headers must be in textual_hdrs to allow us to set the standard to C99 153*2b54f0dbSXin Li textual_hdrs = [ 154*2b54f0dbSXin Li "include/cpuinfo.h", 155*2b54f0dbSXin Li "src/linux/api.h", 156*2b54f0dbSXin Li "src/mach/api.h", 157*2b54f0dbSXin Li "src/cpuinfo/common.h", 158*2b54f0dbSXin Li "src/cpuinfo/internal-api.h", 159*2b54f0dbSXin Li "src/cpuinfo/log.h", 160*2b54f0dbSXin Li "src/cpuinfo/utils.h", 161*2b54f0dbSXin Li "src/x86/api.h", 162*2b54f0dbSXin Li "src/x86/cpuid.h", 163*2b54f0dbSXin Li "src/x86/linux/api.h", 164*2b54f0dbSXin Li "src/arm/android/api.h", 165*2b54f0dbSXin Li "src/arm/linux/api.h", 166*2b54f0dbSXin Li "src/arm/linux/cp.h", 167*2b54f0dbSXin Li "src/arm/api.h", 168*2b54f0dbSXin Li "src/arm/midr.h", 169*2b54f0dbSXin Li ], 170*2b54f0dbSXin Li deps = [ 171*2b54f0dbSXin Li "@org_pytorch_cpuinfo//deps/clog", 172*2b54f0dbSXin Li ], 173*2b54f0dbSXin Li) 174*2b54f0dbSXin Li 175*2b54f0dbSXin Licc_library( 176*2b54f0dbSXin Li name = "cpuinfo", 177*2b54f0dbSXin Li hdrs = [ 178*2b54f0dbSXin Li "include/cpuinfo.h", 179*2b54f0dbSXin Li ], 180*2b54f0dbSXin Li strip_include_prefix = "include", 181*2b54f0dbSXin Li deps = [ 182*2b54f0dbSXin Li ":cpuinfo_impl", 183*2b54f0dbSXin Li ], 184*2b54f0dbSXin Li) 185*2b54f0dbSXin Li 186*2b54f0dbSXin Licc_library( 187*2b54f0dbSXin Li name = "cpuinfo_with_unstripped_include_path", 188*2b54f0dbSXin Li hdrs = [ 189*2b54f0dbSXin Li "include/cpuinfo.h", 190*2b54f0dbSXin Li ], 191*2b54f0dbSXin Li deps = [ 192*2b54f0dbSXin Li ":cpuinfo_impl", 193*2b54f0dbSXin Li ], 194*2b54f0dbSXin Li) 195*2b54f0dbSXin Li 196*2b54f0dbSXin Li############################# Build configurations ############################# 197*2b54f0dbSXin Li 198*2b54f0dbSXin Liconfig_setting( 199*2b54f0dbSXin Li name = "linux_x86_64", 200*2b54f0dbSXin Li values = {"cpu": "k8"}, 201*2b54f0dbSXin Li) 202*2b54f0dbSXin Li 203*2b54f0dbSXin Liconfig_setting( 204*2b54f0dbSXin Li name = "linux_arm", 205*2b54f0dbSXin Li values = {"cpu": "arm"}, 206*2b54f0dbSXin Li) 207*2b54f0dbSXin Li 208*2b54f0dbSXin Liconfig_setting( 209*2b54f0dbSXin Li name = "linux_armhf", 210*2b54f0dbSXin Li values = {"cpu": "armhf"}, 211*2b54f0dbSXin Li) 212*2b54f0dbSXin Li 213*2b54f0dbSXin Liconfig_setting( 214*2b54f0dbSXin Li name = "linux_armv7a", 215*2b54f0dbSXin Li values = {"cpu": "armv7a"}, 216*2b54f0dbSXin Li) 217*2b54f0dbSXin Li 218*2b54f0dbSXin Liconfig_setting( 219*2b54f0dbSXin Li name = "linux_armeabi", 220*2b54f0dbSXin Li values = {"cpu": "armeabi"}, 221*2b54f0dbSXin Li) 222*2b54f0dbSXin Li 223*2b54f0dbSXin Liconfig_setting( 224*2b54f0dbSXin Li name = "linux_aarch64", 225*2b54f0dbSXin Li values = {"cpu": "aarch64"}, 226*2b54f0dbSXin Li) 227*2b54f0dbSXin Li 228*2b54f0dbSXin Liconfig_setting( 229*2b54f0dbSXin Li name = "linux_mips64", 230*2b54f0dbSXin Li values = {"cpu": "mips64"}, 231*2b54f0dbSXin Li) 232*2b54f0dbSXin Li 233*2b54f0dbSXin Liconfig_setting( 234*2b54f0dbSXin Li name = "linux_riscv64", 235*2b54f0dbSXin Li values = {"cpu": "riscv64"}, 236*2b54f0dbSXin Li) 237*2b54f0dbSXin Li 238*2b54f0dbSXin Liconfig_setting( 239*2b54f0dbSXin Li name = "linux_s390x", 240*2b54f0dbSXin Li values = {"cpu": "s390x"}, 241*2b54f0dbSXin Li) 242*2b54f0dbSXin Li 243*2b54f0dbSXin Liconfig_setting( 244*2b54f0dbSXin Li name = "macos_x86_64", 245*2b54f0dbSXin Li values = { 246*2b54f0dbSXin Li "apple_platform_type": "macos", 247*2b54f0dbSXin Li "cpu": "darwin", 248*2b54f0dbSXin Li }, 249*2b54f0dbSXin Li) 250*2b54f0dbSXin Li 251*2b54f0dbSXin Liconfig_setting( 252*2b54f0dbSXin Li name = "windows_x86_64", 253*2b54f0dbSXin Li values = {"cpu": "x64_windows"}, 254*2b54f0dbSXin Li) 255*2b54f0dbSXin Li 256*2b54f0dbSXin Liconfig_setting( 257*2b54f0dbSXin Li name = "android_armv7", 258*2b54f0dbSXin Li values = { 259*2b54f0dbSXin Li "crosstool_top": "//external:android/crosstool", 260*2b54f0dbSXin Li "cpu": "armeabi-v7a", 261*2b54f0dbSXin Li }, 262*2b54f0dbSXin Li visibility = ["//visibility:public"], 263*2b54f0dbSXin Li) 264*2b54f0dbSXin Li 265*2b54f0dbSXin Liconfig_setting( 266*2b54f0dbSXin Li name = "android_arm64", 267*2b54f0dbSXin Li values = { 268*2b54f0dbSXin Li "crosstool_top": "//external:android/crosstool", 269*2b54f0dbSXin Li "cpu": "arm64-v8a", 270*2b54f0dbSXin Li }, 271*2b54f0dbSXin Li visibility = ["//visibility:public"], 272*2b54f0dbSXin Li) 273*2b54f0dbSXin Li 274*2b54f0dbSXin Liconfig_setting( 275*2b54f0dbSXin Li name = "android_x86", 276*2b54f0dbSXin Li values = { 277*2b54f0dbSXin Li "crosstool_top": "//external:android/crosstool", 278*2b54f0dbSXin Li "cpu": "x86", 279*2b54f0dbSXin Li }, 280*2b54f0dbSXin Li visibility = ["//visibility:public"], 281*2b54f0dbSXin Li) 282*2b54f0dbSXin Li 283*2b54f0dbSXin Liconfig_setting( 284*2b54f0dbSXin Li name = "android_x86_64", 285*2b54f0dbSXin Li values = { 286*2b54f0dbSXin Li "crosstool_top": "//external:android/crosstool", 287*2b54f0dbSXin Li "cpu": "x86_64", 288*2b54f0dbSXin Li }, 289*2b54f0dbSXin Li visibility = ["//visibility:public"], 290*2b54f0dbSXin Li) 291*2b54f0dbSXin Li 292*2b54f0dbSXin Liconfig_setting( 293*2b54f0dbSXin Li name = "ios_armv7", 294*2b54f0dbSXin Li values = { 295*2b54f0dbSXin Li "apple_platform_type": "ios", 296*2b54f0dbSXin Li "cpu": "ios_armv7", 297*2b54f0dbSXin Li }, 298*2b54f0dbSXin Li) 299*2b54f0dbSXin Li 300*2b54f0dbSXin Liconfig_setting( 301*2b54f0dbSXin Li name = "ios_arm64", 302*2b54f0dbSXin Li values = { 303*2b54f0dbSXin Li "apple_platform_type": "ios", 304*2b54f0dbSXin Li "cpu": "ios_arm64", 305*2b54f0dbSXin Li }, 306*2b54f0dbSXin Li) 307*2b54f0dbSXin Li 308*2b54f0dbSXin Liconfig_setting( 309*2b54f0dbSXin Li name = "ios_arm64e", 310*2b54f0dbSXin Li values = { 311*2b54f0dbSXin Li "apple_platform_type": "ios", 312*2b54f0dbSXin Li "cpu": "ios_arm64e", 313*2b54f0dbSXin Li }, 314*2b54f0dbSXin Li) 315*2b54f0dbSXin Li 316*2b54f0dbSXin Liconfig_setting( 317*2b54f0dbSXin Li name = "macos_arm64", 318*2b54f0dbSXin Li values = { 319*2b54f0dbSXin Li "apple_platform_type": "macos", 320*2b54f0dbSXin Li "cpu": "darwin_arm64", 321*2b54f0dbSXin Li }, 322*2b54f0dbSXin Li) 323*2b54f0dbSXin Li 324*2b54f0dbSXin Liconfig_setting( 325*2b54f0dbSXin Li name = "ios_x86", 326*2b54f0dbSXin Li values = { 327*2b54f0dbSXin Li "apple_platform_type": "ios", 328*2b54f0dbSXin Li "cpu": "ios_i386", 329*2b54f0dbSXin Li }, 330*2b54f0dbSXin Li) 331*2b54f0dbSXin Li 332*2b54f0dbSXin Liconfig_setting( 333*2b54f0dbSXin Li name = "ios_x86_64", 334*2b54f0dbSXin Li values = { 335*2b54f0dbSXin Li "apple_platform_type": "ios", 336*2b54f0dbSXin Li "cpu": "ios_x86_64", 337*2b54f0dbSXin Li }, 338*2b54f0dbSXin Li) 339*2b54f0dbSXin Li 340*2b54f0dbSXin Liconfig_setting( 341*2b54f0dbSXin Li name = "ios_sim_arm64", 342*2b54f0dbSXin Li values = { 343*2b54f0dbSXin Li "apple_platform_type": "ios", 344*2b54f0dbSXin Li "cpu": "ios_sim_arm64", 345*2b54f0dbSXin Li }, 346*2b54f0dbSXin Li) 347*2b54f0dbSXin Li 348*2b54f0dbSXin Liconfig_setting( 349*2b54f0dbSXin Li name = "watchos_armv7k", 350*2b54f0dbSXin Li values = { 351*2b54f0dbSXin Li "apple_platform_type": "watchos", 352*2b54f0dbSXin Li "cpu": "watchos_armv7k", 353*2b54f0dbSXin Li }, 354*2b54f0dbSXin Li) 355*2b54f0dbSXin Li 356*2b54f0dbSXin Liconfig_setting( 357*2b54f0dbSXin Li name = "watchos_arm64_32", 358*2b54f0dbSXin Li values = { 359*2b54f0dbSXin Li "apple_platform_type": "watchos", 360*2b54f0dbSXin Li "cpu": "watchos_arm64_32", 361*2b54f0dbSXin Li }, 362*2b54f0dbSXin Li) 363*2b54f0dbSXin Li 364*2b54f0dbSXin Liconfig_setting( 365*2b54f0dbSXin Li name = "watchos_x86", 366*2b54f0dbSXin Li values = { 367*2b54f0dbSXin Li "apple_platform_type": "watchos", 368*2b54f0dbSXin Li "cpu": "watchos_i386", 369*2b54f0dbSXin Li }, 370*2b54f0dbSXin Li) 371*2b54f0dbSXin Li 372*2b54f0dbSXin Liconfig_setting( 373*2b54f0dbSXin Li name = "watchos_x86_64", 374*2b54f0dbSXin Li values = { 375*2b54f0dbSXin Li "apple_platform_type": "watchos", 376*2b54f0dbSXin Li "cpu": "watchos_x86_64", 377*2b54f0dbSXin Li }, 378*2b54f0dbSXin Li) 379*2b54f0dbSXin Li 380*2b54f0dbSXin Liconfig_setting( 381*2b54f0dbSXin Li name = "tvos_arm64", 382*2b54f0dbSXin Li values = { 383*2b54f0dbSXin Li "apple_platform_type": "tvos", 384*2b54f0dbSXin Li "cpu": "tvos_arm64", 385*2b54f0dbSXin Li }, 386*2b54f0dbSXin Li) 387*2b54f0dbSXin Li 388*2b54f0dbSXin Liconfig_setting( 389*2b54f0dbSXin Li name = "tvos_x86_64", 390*2b54f0dbSXin Li values = { 391*2b54f0dbSXin Li "apple_platform_type": "tvos", 392*2b54f0dbSXin Li "cpu": "tvos_x86_64", 393*2b54f0dbSXin Li }, 394*2b54f0dbSXin Li) 395*2b54f0dbSXin Li 396*2b54f0dbSXin Liconfig_setting( 397*2b54f0dbSXin Li name = "emscripten_wasm", 398*2b54f0dbSXin Li values = { 399*2b54f0dbSXin Li "cpu": "wasm", 400*2b54f0dbSXin Li }, 401*2b54f0dbSXin Li) 402*2b54f0dbSXin Li 403*2b54f0dbSXin Liconfig_setting( 404*2b54f0dbSXin Li name = "emscripten_wasmsimd", 405*2b54f0dbSXin Li values = { 406*2b54f0dbSXin Li "cpu": "wasm", 407*2b54f0dbSXin Li "features": "wasm_simd", 408*2b54f0dbSXin Li }, 409*2b54f0dbSXin Li) 410*2b54f0dbSXin Li 411*2b54f0dbSXin Liconfig_setting( 412*2b54f0dbSXin Li name = "emscripten_asmjs", 413*2b54f0dbSXin Li values = { 414*2b54f0dbSXin Li "cpu": "asmjs", 415*2b54f0dbSXin Li }, 416*2b54f0dbSXin Li) 417