mirror of
https://github.com/Alex313031/thorium.git
synced 2025-01-10 03:47:44 -03:00
3828 lines
136 KiB
Text
3828 lines
136 KiB
Text
# Copyright 2024 The Chromium Authors and Alex313031
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
|
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
|
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
|
#
|
|
# THIS FILE IS AUTO-GENERATED. DO NOT EDIT.
|
|
#
|
|
# See //third_party/xnnpack/generate_build_gn.py
|
|
#
|
|
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
|
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
|
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
|
|
|
import("//build/config/android/config.gni")
|
|
|
|
config("xnnpack_config") {
|
|
include_dirs = [
|
|
"//third_party/pthreadpool/src/include",
|
|
"src/deps/clog/include",
|
|
"src/include",
|
|
"src/src",
|
|
]
|
|
|
|
cflags = [
|
|
"-Wno-unused-function",
|
|
"-Wno-deprecated-comma-subscript",
|
|
]
|
|
|
|
defines = [
|
|
"CHROMIUM",
|
|
|
|
# Don't enable this without first talking to Chrome Security!
|
|
# XNNPACK runs in the browser process. The hardening and fuzzing needed
|
|
# to ensure JIT can be used safely is not in place yet.
|
|
"XNN_ENABLE_JIT=0",
|
|
|
|
"XNN_ENABLE_ASSEMBLY=1",
|
|
"XNN_ENABLE_GEMM_M_SPECIALIZATION=1",
|
|
"XNN_ENABLE_MEMOPT=1",
|
|
"XNN_ENABLE_CPUINFO=1",
|
|
"XNN_ENABLE_SPARSE=1",
|
|
"XNN_LOG_LEVEL=0",
|
|
"XNN_LOG_TO_STDIO=0",
|
|
]
|
|
|
|
if (current_cpu == "arm64") {
|
|
defines += [
|
|
"XNN_ENABLE_ARM_DOTPROD=1",
|
|
"XNN_ENABLE_ARM_I8MM=1",
|
|
]
|
|
}
|
|
|
|
if (current_cpu == "x86" || current_cpu == "x64") {
|
|
defines += [ "XNN_ENABLE_AVXVNNI=1" ]
|
|
}
|
|
}
|
|
|
|
if (current_cpu == "x64" || current_cpu == "x86") {
|
|
xnnpack_deps = [
|
|
":amalgam_avx-no-avx2-no-f16c-no-fma",
|
|
":amalgam_avx2-avxvnni-f16c-fma",
|
|
":amalgam_avx512f",
|
|
":amalgam_f16c-fma-avx2",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vbmi",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni-amx-tile-amx-int8",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni-avx512fp16",
|
|
":amalgam_f16c-fma-no-avx2",
|
|
":amalgam_f16c-no-avx2-no-fma",
|
|
":amalgam_sse2-no-sse3",
|
|
":amalgam_sse4.1-no-sse4.2",
|
|
":amalgam_ssse3-no-sse4.1",
|
|
":amalgam_x64",
|
|
":configs_x64",
|
|
":enums_x64",
|
|
":operators_x64",
|
|
":subgraph_x64",
|
|
":tables_x64",
|
|
]
|
|
|
|
xnnpack_standalone_deps = [
|
|
":amalgam_avx-no-avx2-no-f16c-no-fma_standalone",
|
|
":amalgam_avx2-avxvnni-f16c-fma_standalone",
|
|
":amalgam_avx512f_standalone",
|
|
":amalgam_f16c-fma-avx2_standalone",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vbmi_standalone",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni-amx-tile-amx-int8_standalone",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni-avx512fp16_standalone",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni_standalone",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni_standalone",
|
|
":amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl_standalone",
|
|
":amalgam_f16c-fma-no-avx2_standalone",
|
|
":amalgam_f16c-no-avx2-no-fma_standalone",
|
|
":amalgam_sse2-no-sse3_standalone",
|
|
":amalgam_sse4.1-no-sse4.2_standalone",
|
|
":amalgam_ssse3-no-sse4.1_standalone",
|
|
":amalgam_x64_standalone",
|
|
":configs_x64_standalone",
|
|
":enums_x64_standalone",
|
|
":operators_x64_standalone",
|
|
":subgraph_x64_standalone",
|
|
":tables_x64_standalone",
|
|
]
|
|
} else if (current_cpu == "arm64") {
|
|
xnnpack_deps = [
|
|
":amalgam_arch=armv8.2-a+dotprod",
|
|
":amalgam_arch=armv8.2-a+dotprod+fp16",
|
|
":amalgam_arch=armv8.2-a+fp16",
|
|
":amalgam_arch=armv8.2-a+i8mm+fp16",
|
|
":amalgam_arm64",
|
|
":configs_arm64",
|
|
":enums_arm64",
|
|
":f16-gemm_arch=armv8.2-a+fp16+dotprod",
|
|
":f16-igemm_arch=armv8.2-a+fp16+dotprod",
|
|
":f32-dwconv_arch=armv8.2-a+fp16+dotprod",
|
|
":f32-gemm_arch=armv8.2-a+fp16+dotprod",
|
|
":f32-gemminc_arch=armv8.2-a+fp16+dotprod",
|
|
":f32-igemm_arch=armv8.2-a+fp16+dotprod",
|
|
":f32-ppmm_arch=armv8.2-a+fp16+dotprod",
|
|
":f32-qc4w-gemm_arch=armv8.2-a+fp16+dotprod",
|
|
":f32-qc8w-gemm_arch=armv8.2-a+fp16+dotprod",
|
|
":operators_arm64",
|
|
":qd8-f16-qc8w-gemm_arch=armv8.2-a+fp16+dotprod",
|
|
":qd8-f16-qc8w-igemm_arch=armv8.2-a+fp16+dotprod",
|
|
":qd8-f32-qc8w-gemm_arch=armv8.2-a+fp16+dotprod",
|
|
":qd8-f32-qc8w-igemm_arch=armv8.2-a+fp16+dotprod",
|
|
":qs8-qc8w-gemm_arch=armv8.2-a+fp16+dotprod",
|
|
":qs8-qc8w-igemm_arch=armv8.2-a+fp16+dotprod",
|
|
":qu8-gemm_arch=armv8.2-a+fp16+dotprod",
|
|
":qu8-igemm_arch=armv8.2-a+fp16+dotprod",
|
|
":subgraph_arm64",
|
|
":tables_arm64",
|
|
]
|
|
|
|
xnnpack_standalone_deps = [
|
|
":amalgam_arch=armv8.2-a+dotprod+fp16_standalone",
|
|
":amalgam_arch=armv8.2-a+dotprod_standalone",
|
|
":amalgam_arch=armv8.2-a+fp16_standalone",
|
|
":amalgam_arch=armv8.2-a+i8mm+fp16_standalone",
|
|
":amalgam_arm64_standalone",
|
|
":configs_arm64_standalone",
|
|
":enums_arm64_standalone",
|
|
":f16-gemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":f16-igemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":f32-dwconv_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":f32-gemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":f32-gemminc_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":f32-igemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":f32-ppmm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":f32-qc4w-gemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":f32-qc8w-gemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":operators_arm64_standalone",
|
|
":qd8-f16-qc8w-gemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":qd8-f16-qc8w-igemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":qd8-f32-qc8w-gemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":qd8-f32-qc8w-igemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":qs8-qc8w-gemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":qs8-qc8w-igemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":qu8-gemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":qu8-igemm_arch=armv8.2-a+fp16+dotprod_standalone",
|
|
":subgraph_arm64_standalone",
|
|
":tables_arm64_standalone",
|
|
]
|
|
} else {
|
|
xnnpack_deps = []
|
|
xnnpack_standalone_deps = []
|
|
}
|
|
|
|
source_set("xnnpack") {
|
|
public = [ "src/include/xnnpack.h" ]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
sources = [
|
|
"build_identifier.c",
|
|
"src/include/xnnpack.h",
|
|
"src/src/allocator.c",
|
|
"src/src/cache.c",
|
|
"src/src/indirection.c",
|
|
"src/src/init.c",
|
|
"src/src/log.c",
|
|
"src/src/memory-planner.c",
|
|
"src/src/memory.c",
|
|
"src/src/microkernel-utils.c",
|
|
"src/src/microparams-init.c",
|
|
"src/src/mutex.c",
|
|
"src/src/normalization.c",
|
|
"src/src/operator-delete.c",
|
|
"src/src/operator-run.c",
|
|
"src/src/operator-utils.c",
|
|
"src/src/packing.c",
|
|
"src/src/params.c",
|
|
"src/src/runtime.c",
|
|
"src/src/subgraph.c",
|
|
"src/src/tensor.c",
|
|
]
|
|
|
|
deps = xnnpack_deps + [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("xnnpack_standalone") {
|
|
public = [ "src/include/xnnpack.h" ]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
sources = [
|
|
"build_identifier.c",
|
|
"src/include/xnnpack.h",
|
|
"src/src/allocator.c",
|
|
"src/src/cache.c",
|
|
"src/src/indirection.c",
|
|
"src/src/init.c",
|
|
"src/src/log.c",
|
|
"src/src/memory-planner.c",
|
|
"src/src/memory.c",
|
|
"src/src/microkernel-utils.c",
|
|
"src/src/microparams-init.c",
|
|
"src/src/mutex.c",
|
|
"src/src/normalization.c",
|
|
"src/src/operator-delete.c",
|
|
"src/src/operator-run.c",
|
|
"src/src/operator-utils.c",
|
|
"src/src/packing.c",
|
|
"src/src/params.c",
|
|
"src/src/runtime.c",
|
|
"src/src/subgraph.c",
|
|
"src/src/tensor.c",
|
|
]
|
|
|
|
deps = xnnpack_standalone_deps + [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
if (current_cpu == "x64" || current_cpu == "x86") {
|
|
source_set("amalgam_avx-no-avx2-no-f16c-no-fma") {
|
|
cflags = [
|
|
"-mavx",
|
|
"-mno-avx2",
|
|
"-mno-f16c",
|
|
"-mno-fma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_avx-no-avx2-no-f16c-no-fma_standalone") {
|
|
cflags = [
|
|
"-mavx",
|
|
"-mno-avx2",
|
|
"-mno-f16c",
|
|
"-mno-fma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_avx2-avxvnni-f16c-fma") {
|
|
cflags = [
|
|
"-mavx2",
|
|
"-mavxvnni",
|
|
"-mf16c",
|
|
"-mfma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avxvnni.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_avx2-avxvnni-f16c-fma_standalone") {
|
|
cflags = [
|
|
"-mavx2",
|
|
"-mavxvnni",
|
|
"-mf16c",
|
|
"-mfma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avxvnni.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_avx512f") {
|
|
cflags = [ "-mavx512f" ]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx512f.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_avx512f_standalone") {
|
|
cflags = [ "-mavx512f" ]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx512f.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_f16c-fma-avx2") {
|
|
cflags = [
|
|
"-mavx2",
|
|
"-mf16c",
|
|
"-mfma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx2.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_f16c-fma-avx2_standalone") {
|
|
cflags = [
|
|
"-mavx2",
|
|
"-mf16c",
|
|
"-mfma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx2.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl") {
|
|
cflags = [
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512vl",
|
|
"-mf16c",
|
|
"-mfma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx256skx.c",
|
|
"src/src/amalgam/gen/avx512skx.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set(
|
|
"amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl_standalone") {
|
|
cflags = [
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512vl",
|
|
"-mf16c",
|
|
"-mfma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx256skx.c",
|
|
"src/src/amalgam/gen/avx512skx.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set(
|
|
"amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vbmi") {
|
|
cflags = [
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512vbmi",
|
|
"-mavx512vl",
|
|
"-mf16c",
|
|
"-mfma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx512vbmi.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set(
|
|
"amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vbmi_standalone") {
|
|
cflags = [
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512vbmi",
|
|
"-mavx512vl",
|
|
"-mf16c",
|
|
"-mfma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx512vbmi.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set(
|
|
"amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni") {
|
|
cflags = [
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512vl",
|
|
"-mavx512vnni",
|
|
"-mf16c",
|
|
"-mfma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx256vnni.c",
|
|
"src/src/amalgam/gen/avx512vnni.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set(
|
|
"amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni_standalone") {
|
|
cflags = [
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512vl",
|
|
"-mavx512vnni",
|
|
"-mf16c",
|
|
"-mfma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx256vnni.c",
|
|
"src/src/amalgam/gen/avx512vnni.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set(
|
|
"amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni") {
|
|
cflags = [
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512vl",
|
|
"-mavx512vnni",
|
|
"-mf16c",
|
|
"-mfma",
|
|
"-mgfni",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx256vnnigfni.c",
|
|
"src/src/amalgam/gen/avx512vnnigfni.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set(
|
|
"amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni_standalone") {
|
|
cflags = [
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512vl",
|
|
"-mavx512vnni",
|
|
"-mf16c",
|
|
"-mfma",
|
|
"-mgfni",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx256vnnigfni.c",
|
|
"src/src/amalgam/gen/avx512vnnigfni.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set(
|
|
"amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni-amx-tile-amx-int8") {
|
|
cflags = [
|
|
"-mamx-int8",
|
|
"-mamx-tile",
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512vl",
|
|
"-mavx512vnni",
|
|
"-mf16c",
|
|
"-mfma",
|
|
"-mgfni",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx512amx.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set(
|
|
"amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni-amx-tile-amx-int8_standalone") {
|
|
cflags = [
|
|
"-mamx-int8",
|
|
"-mamx-tile",
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512vl",
|
|
"-mavx512vnni",
|
|
"-mf16c",
|
|
"-mfma",
|
|
"-mgfni",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx512amx.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set(
|
|
"amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni-avx512fp16") {
|
|
cflags = [
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512fp16",
|
|
"-mavx512vl",
|
|
"-mavx512vnni",
|
|
"-mf16c",
|
|
"-mfma",
|
|
"-mgfni",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx512fp16.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set(
|
|
"amalgam_f16c-fma-avx512f-avx512cd-avx512bw-avx512dq-avx512vl-avx512vnni-gfni-avx512fp16_standalone") {
|
|
cflags = [
|
|
"-mavx512bw",
|
|
"-mavx512cd",
|
|
"-mavx512dq",
|
|
"-mavx512f",
|
|
"-mavx512fp16",
|
|
"-mavx512vl",
|
|
"-mavx512vnni",
|
|
"-mf16c",
|
|
"-mfma",
|
|
"-mgfni",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/avx512fp16.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_f16c-fma-no-avx2") {
|
|
cflags = [
|
|
"-mf16c",
|
|
"-mfma",
|
|
"-mno-avx2",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/fma3.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_f16c-fma-no-avx2_standalone") {
|
|
cflags = [
|
|
"-mf16c",
|
|
"-mfma",
|
|
"-mno-avx2",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/fma3.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_f16c-no-avx2-no-fma") {
|
|
cflags = [
|
|
"-mf16c",
|
|
"-mno-avx2",
|
|
"-mno-fma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/f16c.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_f16c-no-avx2-no-fma_standalone") {
|
|
cflags = [
|
|
"-mf16c",
|
|
"-mno-avx2",
|
|
"-mno-fma",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/f16c.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_sse2-no-sse3") {
|
|
cflags = [
|
|
"-mno-sse3",
|
|
"-msse2",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/sse.c",
|
|
"src/src/amalgam/gen/sse2.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_sse2-no-sse3_standalone") {
|
|
cflags = [
|
|
"-mno-sse3",
|
|
"-msse2",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/sse.c",
|
|
"src/src/amalgam/gen/sse2.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_sse4.1-no-sse4.2") {
|
|
cflags = [
|
|
"-mno-sse4.2",
|
|
"-msse4.1",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/sse41.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_sse4.1-no-sse4.2_standalone") {
|
|
cflags = [
|
|
"-mno-sse4.2",
|
|
"-msse4.1",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/sse41.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_ssse3-no-sse4.1") {
|
|
cflags = [
|
|
"-mno-sse4.1",
|
|
"-mssse3",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/ssse3.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_ssse3-no-sse4.1_standalone") {
|
|
cflags = [
|
|
"-mno-sse4.1",
|
|
"-mssse3",
|
|
]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/ssse3.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_x64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/scalar.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_x64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/scalar.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("configs_x64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/configs/argmaxpool-config.c",
|
|
"src/src/configs/avgpool-config.c",
|
|
"src/src/configs/binary-elementwise-config.c",
|
|
"src/src/configs/cmul-config.c",
|
|
"src/src/configs/conv-hwc2chw-config.c",
|
|
"src/src/configs/dwconv-config.c",
|
|
"src/src/configs/dwconv2d-chw-config.c",
|
|
"src/src/configs/experiments-config.c",
|
|
"src/src/configs/gavgpool-config.c",
|
|
"src/src/configs/gavgpool-cw-config.c",
|
|
"src/src/configs/gemm-config.c",
|
|
"src/src/configs/hardware-config.c",
|
|
"src/src/configs/ibilinear-chw-config.c",
|
|
"src/src/configs/ibilinear-config.c",
|
|
"src/src/configs/lut32norm-config.c",
|
|
"src/src/configs/maxpool-config.c",
|
|
"src/src/configs/pavgpool-config.c",
|
|
"src/src/configs/prelu-config.c",
|
|
"src/src/configs/raddstoreexpminusmax-config.c",
|
|
"src/src/configs/reduce-config.c",
|
|
"src/src/configs/rmax-config.c",
|
|
"src/src/configs/spmm-config.c",
|
|
"src/src/configs/transpose-config.c",
|
|
"src/src/configs/unary-elementwise-config.c",
|
|
"src/src/configs/unpool-config.c",
|
|
"src/src/configs/vmulcaddc-config.c",
|
|
"src/src/configs/x8-lut-config.c",
|
|
"src/src/configs/xx-fill-config.c",
|
|
"src/src/configs/xx-pad-config.c",
|
|
"src/src/configs/zip-config.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("configs_x64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/configs/argmaxpool-config.c",
|
|
"src/src/configs/avgpool-config.c",
|
|
"src/src/configs/binary-elementwise-config.c",
|
|
"src/src/configs/cmul-config.c",
|
|
"src/src/configs/conv-hwc2chw-config.c",
|
|
"src/src/configs/dwconv-config.c",
|
|
"src/src/configs/dwconv2d-chw-config.c",
|
|
"src/src/configs/experiments-config.c",
|
|
"src/src/configs/gavgpool-config.c",
|
|
"src/src/configs/gavgpool-cw-config.c",
|
|
"src/src/configs/gemm-config.c",
|
|
"src/src/configs/hardware-config.c",
|
|
"src/src/configs/ibilinear-chw-config.c",
|
|
"src/src/configs/ibilinear-config.c",
|
|
"src/src/configs/lut32norm-config.c",
|
|
"src/src/configs/maxpool-config.c",
|
|
"src/src/configs/pavgpool-config.c",
|
|
"src/src/configs/prelu-config.c",
|
|
"src/src/configs/raddstoreexpminusmax-config.c",
|
|
"src/src/configs/reduce-config.c",
|
|
"src/src/configs/rmax-config.c",
|
|
"src/src/configs/spmm-config.c",
|
|
"src/src/configs/transpose-config.c",
|
|
"src/src/configs/unary-elementwise-config.c",
|
|
"src/src/configs/unpool-config.c",
|
|
"src/src/configs/vmulcaddc-config.c",
|
|
"src/src/configs/x8-lut-config.c",
|
|
"src/src/configs/xx-fill-config.c",
|
|
"src/src/configs/xx-pad-config.c",
|
|
"src/src/configs/zip-config.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("enums_x64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/enums/allocation-type.c",
|
|
"src/src/enums/datatype-strings.c",
|
|
"src/src/enums/microkernel-type.c",
|
|
"src/src/enums/node-type.c",
|
|
"src/src/enums/operator-type.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("enums_x64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/enums/allocation-type.c",
|
|
"src/src/enums/datatype-strings.c",
|
|
"src/src/enums/microkernel-type.c",
|
|
"src/src/enums/node-type.c",
|
|
"src/src/enums/operator-type.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("operators_x64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/operators/argmax-pooling-nhwc.c",
|
|
"src/src/operators/average-pooling-nhwc.c",
|
|
"src/src/operators/batch-matrix-multiply-nc.c",
|
|
"src/src/operators/binary-elementwise-nd.c",
|
|
"src/src/operators/channel-shuffle-nc.c",
|
|
"src/src/operators/constant-pad-nd.c",
|
|
"src/src/operators/convolution-nchw.c",
|
|
"src/src/operators/convolution-nhwc.c",
|
|
"src/src/operators/deconvolution-nhwc.c",
|
|
"src/src/operators/dynamic-fully-connected-nc.c",
|
|
"src/src/operators/fully-connected-nc.c",
|
|
"src/src/operators/global-average-pooling-ncw.c",
|
|
"src/src/operators/global-average-pooling-nwc.c",
|
|
"src/src/operators/lut-elementwise-nc.c",
|
|
"src/src/operators/max-pooling-nhwc.c",
|
|
"src/src/operators/post-operation.c",
|
|
"src/src/operators/prelu-nc.c",
|
|
"src/src/operators/reduce-nd.c",
|
|
"src/src/operators/resize-bilinear-nchw.c",
|
|
"src/src/operators/resize-bilinear-nhwc.c",
|
|
"src/src/operators/rope-nthc.c",
|
|
"src/src/operators/scaled-dot-product-attention-nhtc.c",
|
|
"src/src/operators/slice-nd.c",
|
|
"src/src/operators/softmax-nc.c",
|
|
"src/src/operators/transpose-nd.c",
|
|
"src/src/operators/unary-elementwise-nc.c",
|
|
"src/src/operators/unpooling-nhwc.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("operators_x64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/operators/argmax-pooling-nhwc.c",
|
|
"src/src/operators/average-pooling-nhwc.c",
|
|
"src/src/operators/batch-matrix-multiply-nc.c",
|
|
"src/src/operators/binary-elementwise-nd.c",
|
|
"src/src/operators/channel-shuffle-nc.c",
|
|
"src/src/operators/constant-pad-nd.c",
|
|
"src/src/operators/convolution-nchw.c",
|
|
"src/src/operators/convolution-nhwc.c",
|
|
"src/src/operators/deconvolution-nhwc.c",
|
|
"src/src/operators/dynamic-fully-connected-nc.c",
|
|
"src/src/operators/fully-connected-nc.c",
|
|
"src/src/operators/global-average-pooling-ncw.c",
|
|
"src/src/operators/global-average-pooling-nwc.c",
|
|
"src/src/operators/lut-elementwise-nc.c",
|
|
"src/src/operators/max-pooling-nhwc.c",
|
|
"src/src/operators/post-operation.c",
|
|
"src/src/operators/prelu-nc.c",
|
|
"src/src/operators/reduce-nd.c",
|
|
"src/src/operators/resize-bilinear-nchw.c",
|
|
"src/src/operators/resize-bilinear-nhwc.c",
|
|
"src/src/operators/rope-nthc.c",
|
|
"src/src/operators/scaled-dot-product-attention-nhtc.c",
|
|
"src/src/operators/slice-nd.c",
|
|
"src/src/operators/softmax-nc.c",
|
|
"src/src/operators/transpose-nd.c",
|
|
"src/src/operators/unary-elementwise-nc.c",
|
|
"src/src/operators/unpooling-nhwc.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("subgraph_x64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/subgraph/abs.c",
|
|
"src/src/subgraph/add2.c",
|
|
"src/src/subgraph/argmax-pooling-2d.c",
|
|
"src/src/subgraph/average-pooling-2d.c",
|
|
"src/src/subgraph/bankers-rounding.c",
|
|
"src/src/subgraph/batch-matrix-multiply.c",
|
|
"src/src/subgraph/ceiling.c",
|
|
"src/src/subgraph/clamp.c",
|
|
"src/src/subgraph/concatenate.c",
|
|
"src/src/subgraph/convert.c",
|
|
"src/src/subgraph/convolution-2d.c",
|
|
"src/src/subgraph/copy.c",
|
|
"src/src/subgraph/copysign.c",
|
|
"src/src/subgraph/deconvolution-2d.c",
|
|
"src/src/subgraph/depth-to-space-2d.c",
|
|
"src/src/subgraph/depthwise-convolution-2d.c",
|
|
"src/src/subgraph/divide.c",
|
|
"src/src/subgraph/elu.c",
|
|
"src/src/subgraph/even-split.c",
|
|
"src/src/subgraph/exp.c",
|
|
"src/src/subgraph/floor.c",
|
|
"src/src/subgraph/fully-connected-sparse.c",
|
|
"src/src/subgraph/fully-connected.c",
|
|
"src/src/subgraph/gelu.c",
|
|
"src/src/subgraph/global-average-pooling.c",
|
|
"src/src/subgraph/global-sum-pooling.c",
|
|
"src/src/subgraph/hardswish.c",
|
|
"src/src/subgraph/leaky-relu.c",
|
|
"src/src/subgraph/log.c",
|
|
"src/src/subgraph/max-pooling-2d.c",
|
|
"src/src/subgraph/maximum2.c",
|
|
"src/src/subgraph/minimum2.c",
|
|
"src/src/subgraph/multiply2.c",
|
|
"src/src/subgraph/negate.c",
|
|
"src/src/subgraph/prelu.c",
|
|
"src/src/subgraph/reciprocal-square-root.c",
|
|
"src/src/subgraph/reshape-2d.c",
|
|
"src/src/subgraph/reshape-helpers.c",
|
|
"src/src/subgraph/rope.c",
|
|
"src/src/subgraph/scaled-dot-product-attention.c",
|
|
"src/src/subgraph/sigmoid.c",
|
|
"src/src/subgraph/softmax.c",
|
|
"src/src/subgraph/space-to-depth-2d.c",
|
|
"src/src/subgraph/square-root.c",
|
|
"src/src/subgraph/square.c",
|
|
"src/src/subgraph/squared-difference.c",
|
|
"src/src/subgraph/static-constant-pad.c",
|
|
"src/src/subgraph/static-mean.c",
|
|
"src/src/subgraph/static-reshape.c",
|
|
"src/src/subgraph/static-resize-bilinear-2d.c",
|
|
"src/src/subgraph/static-slice.c",
|
|
"src/src/subgraph/static-transpose.c",
|
|
"src/src/subgraph/subtract.c",
|
|
"src/src/subgraph/tanh.c",
|
|
"src/src/subgraph/unpooling-2d.c",
|
|
"src/src/subgraph/validation.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("subgraph_x64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/subgraph/abs.c",
|
|
"src/src/subgraph/add2.c",
|
|
"src/src/subgraph/argmax-pooling-2d.c",
|
|
"src/src/subgraph/average-pooling-2d.c",
|
|
"src/src/subgraph/bankers-rounding.c",
|
|
"src/src/subgraph/batch-matrix-multiply.c",
|
|
"src/src/subgraph/ceiling.c",
|
|
"src/src/subgraph/clamp.c",
|
|
"src/src/subgraph/concatenate.c",
|
|
"src/src/subgraph/convert.c",
|
|
"src/src/subgraph/convolution-2d.c",
|
|
"src/src/subgraph/copy.c",
|
|
"src/src/subgraph/copysign.c",
|
|
"src/src/subgraph/deconvolution-2d.c",
|
|
"src/src/subgraph/depth-to-space-2d.c",
|
|
"src/src/subgraph/depthwise-convolution-2d.c",
|
|
"src/src/subgraph/divide.c",
|
|
"src/src/subgraph/elu.c",
|
|
"src/src/subgraph/even-split.c",
|
|
"src/src/subgraph/exp.c",
|
|
"src/src/subgraph/floor.c",
|
|
"src/src/subgraph/fully-connected-sparse.c",
|
|
"src/src/subgraph/fully-connected.c",
|
|
"src/src/subgraph/gelu.c",
|
|
"src/src/subgraph/global-average-pooling.c",
|
|
"src/src/subgraph/global-sum-pooling.c",
|
|
"src/src/subgraph/hardswish.c",
|
|
"src/src/subgraph/leaky-relu.c",
|
|
"src/src/subgraph/log.c",
|
|
"src/src/subgraph/max-pooling-2d.c",
|
|
"src/src/subgraph/maximum2.c",
|
|
"src/src/subgraph/minimum2.c",
|
|
"src/src/subgraph/multiply2.c",
|
|
"src/src/subgraph/negate.c",
|
|
"src/src/subgraph/prelu.c",
|
|
"src/src/subgraph/reciprocal-square-root.c",
|
|
"src/src/subgraph/reshape-2d.c",
|
|
"src/src/subgraph/reshape-helpers.c",
|
|
"src/src/subgraph/rope.c",
|
|
"src/src/subgraph/scaled-dot-product-attention.c",
|
|
"src/src/subgraph/sigmoid.c",
|
|
"src/src/subgraph/softmax.c",
|
|
"src/src/subgraph/space-to-depth-2d.c",
|
|
"src/src/subgraph/square-root.c",
|
|
"src/src/subgraph/square.c",
|
|
"src/src/subgraph/squared-difference.c",
|
|
"src/src/subgraph/static-constant-pad.c",
|
|
"src/src/subgraph/static-mean.c",
|
|
"src/src/subgraph/static-reshape.c",
|
|
"src/src/subgraph/static-resize-bilinear-2d.c",
|
|
"src/src/subgraph/static-slice.c",
|
|
"src/src/subgraph/static-transpose.c",
|
|
"src/src/subgraph/subtract.c",
|
|
"src/src/subgraph/tanh.c",
|
|
"src/src/subgraph/unpooling-2d.c",
|
|
"src/src/subgraph/validation.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("tables_x64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/tables/exp2-k-over-2048.c",
|
|
"src/src/tables/exp2-k-over-64.c",
|
|
"src/src/tables/exp2minus-k-over-16.c",
|
|
"src/src/tables/exp2minus-k-over-2048.c",
|
|
"src/src/tables/exp2minus-k-over-32.c",
|
|
"src/src/tables/exp2minus-k-over-4.c",
|
|
"src/src/tables/exp2minus-k-over-64.c",
|
|
"src/src/tables/exp2minus-k-over-8.c",
|
|
"src/src/tables/vlog.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("tables_x64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/tables/exp2-k-over-2048.c",
|
|
"src/src/tables/exp2-k-over-64.c",
|
|
"src/src/tables/exp2minus-k-over-16.c",
|
|
"src/src/tables/exp2minus-k-over-2048.c",
|
|
"src/src/tables/exp2minus-k-over-32.c",
|
|
"src/src/tables/exp2minus-k-over-4.c",
|
|
"src/src/tables/exp2minus-k-over-64.c",
|
|
"src/src/tables/exp2minus-k-over-8.c",
|
|
"src/src/tables/vlog.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
}
|
|
|
|
if (current_cpu == "arm64") {
|
|
source_set("amalgam_arch=armv8.2-a+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod" ]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/neondot-aarch64.c",
|
|
"src/src/amalgam/gen/neondot.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_arch=armv8.2-a+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod" ]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/neondot-aarch64.c",
|
|
"src/src/amalgam/gen/neondot.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_arch=armv8.2-a+dotprod+fp16") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/neondotfp16arith.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_arch=armv8.2-a+dotprod+fp16_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/neondotfp16arith.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_arch=armv8.2-a+fp16") {
|
|
configs += [ "//build/config/compiler:march_fp16" ]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/neonfp16arith-aarch64.c",
|
|
"src/src/amalgam/gen/neonfp16arith.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_arch=armv8.2-a+fp16_standalone") {
|
|
configs += [ "//build/config/compiler:march_fp16" ]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/neonfp16arith-aarch64.c",
|
|
"src/src/amalgam/gen/neonfp16arith.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_arch=armv8.2-a+i8mm+fp16") {
|
|
configs += [ "//build/config/compiler:march_i8mm_f16" ]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/neoni8mm-aarch64.c",
|
|
"src/src/amalgam/gen/neoni8mm.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_arch=armv8.2-a+i8mm+fp16_standalone") {
|
|
configs += [ "//build/config/compiler:march_i8mm_f16" ]
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/neoni8mm-aarch64.c",
|
|
"src/src/amalgam/gen/neoni8mm.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("amalgam_arm64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/neon-aarch64.c",
|
|
"src/src/amalgam/gen/neon.c",
|
|
"src/src/amalgam/gen/neonfma-aarch64.c",
|
|
"src/src/amalgam/gen/neonfma.c",
|
|
"src/src/amalgam/gen/neonfp16.c",
|
|
"src/src/amalgam/gen/neonv8.c",
|
|
"src/src/amalgam/gen/scalar.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("amalgam_arm64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/amalgam/gen/neon-aarch64.c",
|
|
"src/src/amalgam/gen/neon.c",
|
|
"src/src/amalgam/gen/neonfma-aarch64.c",
|
|
"src/src/amalgam/gen/neonfma.c",
|
|
"src/src/amalgam/gen/neonfp16.c",
|
|
"src/src/amalgam/gen/neonv8.c",
|
|
"src/src/amalgam/gen/scalar.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("configs_arm64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/configs/argmaxpool-config.c",
|
|
"src/src/configs/avgpool-config.c",
|
|
"src/src/configs/binary-elementwise-config.c",
|
|
"src/src/configs/cmul-config.c",
|
|
"src/src/configs/conv-hwc2chw-config.c",
|
|
"src/src/configs/dwconv-config.c",
|
|
"src/src/configs/dwconv2d-chw-config.c",
|
|
"src/src/configs/experiments-config.c",
|
|
"src/src/configs/gavgpool-config.c",
|
|
"src/src/configs/gavgpool-cw-config.c",
|
|
"src/src/configs/gemm-config.c",
|
|
"src/src/configs/hardware-config.c",
|
|
"src/src/configs/ibilinear-chw-config.c",
|
|
"src/src/configs/ibilinear-config.c",
|
|
"src/src/configs/lut32norm-config.c",
|
|
"src/src/configs/maxpool-config.c",
|
|
"src/src/configs/pavgpool-config.c",
|
|
"src/src/configs/prelu-config.c",
|
|
"src/src/configs/raddstoreexpminusmax-config.c",
|
|
"src/src/configs/reduce-config.c",
|
|
"src/src/configs/rmax-config.c",
|
|
"src/src/configs/spmm-config.c",
|
|
"src/src/configs/transpose-config.c",
|
|
"src/src/configs/unary-elementwise-config.c",
|
|
"src/src/configs/unpool-config.c",
|
|
"src/src/configs/vmulcaddc-config.c",
|
|
"src/src/configs/x8-lut-config.c",
|
|
"src/src/configs/xx-fill-config.c",
|
|
"src/src/configs/xx-pad-config.c",
|
|
"src/src/configs/zip-config.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("configs_arm64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/configs/argmaxpool-config.c",
|
|
"src/src/configs/avgpool-config.c",
|
|
"src/src/configs/binary-elementwise-config.c",
|
|
"src/src/configs/cmul-config.c",
|
|
"src/src/configs/conv-hwc2chw-config.c",
|
|
"src/src/configs/dwconv-config.c",
|
|
"src/src/configs/dwconv2d-chw-config.c",
|
|
"src/src/configs/experiments-config.c",
|
|
"src/src/configs/gavgpool-config.c",
|
|
"src/src/configs/gavgpool-cw-config.c",
|
|
"src/src/configs/gemm-config.c",
|
|
"src/src/configs/hardware-config.c",
|
|
"src/src/configs/ibilinear-chw-config.c",
|
|
"src/src/configs/ibilinear-config.c",
|
|
"src/src/configs/lut32norm-config.c",
|
|
"src/src/configs/maxpool-config.c",
|
|
"src/src/configs/pavgpool-config.c",
|
|
"src/src/configs/prelu-config.c",
|
|
"src/src/configs/raddstoreexpminusmax-config.c",
|
|
"src/src/configs/reduce-config.c",
|
|
"src/src/configs/rmax-config.c",
|
|
"src/src/configs/spmm-config.c",
|
|
"src/src/configs/transpose-config.c",
|
|
"src/src/configs/unary-elementwise-config.c",
|
|
"src/src/configs/unpool-config.c",
|
|
"src/src/configs/vmulcaddc-config.c",
|
|
"src/src/configs/x8-lut-config.c",
|
|
"src/src/configs/xx-fill-config.c",
|
|
"src/src/configs/xx-pad-config.c",
|
|
"src/src/configs/zip-config.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("enums_arm64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/enums/allocation-type.c",
|
|
"src/src/enums/datatype-strings.c",
|
|
"src/src/enums/microkernel-type.c",
|
|
"src/src/enums/node-type.c",
|
|
"src/src/enums/operator-type.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("enums_arm64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/enums/allocation-type.c",
|
|
"src/src/enums/datatype-strings.c",
|
|
"src/src/enums/microkernel-type.c",
|
|
"src/src/enums/node-type.c",
|
|
"src/src/enums/operator-type.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("f16-gemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f16-gemm/gen/f16-gemm-1x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-1x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-1x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-4x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-4x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-4x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a55.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a55r0.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a75.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-8x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-1x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-1x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-4x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-4x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a55.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a75.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-6x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-6x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-8x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("f16-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f16-gemm/gen/f16-gemm-1x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-1x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-1x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-4x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-4x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-4x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a55.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a55r0.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a75.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-6x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemm-8x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-1x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-1x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-4x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-4x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a55.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a75.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-6x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-6x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-gemm/gen/f16-gemminc-8x8-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("f16-igemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f16-igemm/f16-igemm-1x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-igemm/f16-igemm-1x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-igemm/f16-igemm-4x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-igemm/f16-igemm-4x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-igemm/f16-igemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a55.S",
|
|
"src/src/f16-igemm/f16-igemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a55r0.S",
|
|
"src/src/f16-igemm/f16-igemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a75.S",
|
|
"src/src/f16-igemm/f16-igemm-6x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-igemm/f16-igemm-6x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("f16-igemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f16-igemm/f16-igemm-1x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-igemm/f16-igemm-1x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-igemm/f16-igemm-4x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-igemm/f16-igemm-4x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
"src/src/f16-igemm/f16-igemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a55.S",
|
|
"src/src/f16-igemm/f16-igemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a55r0.S",
|
|
"src/src/f16-igemm/f16-igemm-6x16-minmax-asm-aarch64-neonfp16arith-cortex-a75.S",
|
|
"src/src/f16-igemm/f16-igemm-6x16-minmax-asm-aarch64-neonfp16arith-ld32.S",
|
|
"src/src/f16-igemm/f16-igemm-6x16-minmax-asm-aarch64-neonfp16arith-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("f32-dwconv_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-dwconv/f32-dwconv-9p4c-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-dwconv/f32-dwconv-9p4c-minmax-asm-aarch64-neonfma.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("f32-dwconv_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-dwconv/f32-dwconv-9p4c-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-dwconv/f32-dwconv-9p4c-minmax-asm-aarch64-neonfma.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("f32-gemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x1-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x1-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x2-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x2-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x2-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x2-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-5x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-5x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a73.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-goi-1x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-goi-1x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-goi-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("f32-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-1x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x1-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x1-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x2-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x2-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x2-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x2-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-4x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-5x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-5x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a73.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-6x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-goi-1x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-goi-1x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemm/gen/f32-gemm-goi-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("f32-gemminc_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-1x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-1x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-1x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-1x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-1x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-5x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-5x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-cortex-a73.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("f32-gemminc_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-1x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-1x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-1x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-1x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-1x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-4x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-5x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-5x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-cortex-a73.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-gemminc/gen/f32-gemminc-6x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("f32-igemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-igemm/f32-igemm-1x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-igemm/f32-igemm-4x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-igemm/f32-igemm-4x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-igemm/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-igemm/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a73.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-ld64-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x2-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x2-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x2-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-5x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-5x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("f32-igemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-igemm/f32-igemm-1x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-igemm/f32-igemm-4x12-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-igemm/f32-igemm-4x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-igemm/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a55.S",
|
|
"src/src/f32-igemm/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a73.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-ld64-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-1x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x2-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x2-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x2-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-4x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-5x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-5x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a53-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a53.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-igemm/gen/f32-igemm-6x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("f32-ppmm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-4x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-4x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-4x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-8x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-8x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-8x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-8x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("f32-ppmm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-4x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-4x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-4x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-8x8-minmax-asm-aarch64-neonfma-cortex-a75-prfm.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-8x8-minmax-asm-aarch64-neonfma-cortex-a75.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-8x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-ppmm/gen/f32-ppmm-8x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("f32-qc4w-gemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x1-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x1-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x2-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x2-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-6x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-6x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("f32-qc4w-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-prfm.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x1-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x1-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x2-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x2-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-6x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-6x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("f32-qc8w-gemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x1-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x1-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x2-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x2-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-6x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-6x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("f32-qc8w-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neon-ld128-acc2.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc2.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-acc4.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc2.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-acc4.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64-prfm.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x1-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x1-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x2-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x2-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-6x8-minmax-asm-aarch64-neonfma-ld128.S",
|
|
"src/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-6x8-minmax-asm-aarch64-neonfma-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("operators_arm64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/operators/argmax-pooling-nhwc.c",
|
|
"src/src/operators/average-pooling-nhwc.c",
|
|
"src/src/operators/batch-matrix-multiply-nc.c",
|
|
"src/src/operators/binary-elementwise-nd.c",
|
|
"src/src/operators/channel-shuffle-nc.c",
|
|
"src/src/operators/constant-pad-nd.c",
|
|
"src/src/operators/convolution-nchw.c",
|
|
"src/src/operators/convolution-nhwc.c",
|
|
"src/src/operators/deconvolution-nhwc.c",
|
|
"src/src/operators/dynamic-fully-connected-nc.c",
|
|
"src/src/operators/fully-connected-nc.c",
|
|
"src/src/operators/global-average-pooling-ncw.c",
|
|
"src/src/operators/global-average-pooling-nwc.c",
|
|
"src/src/operators/lut-elementwise-nc.c",
|
|
"src/src/operators/max-pooling-nhwc.c",
|
|
"src/src/operators/post-operation.c",
|
|
"src/src/operators/prelu-nc.c",
|
|
"src/src/operators/reduce-nd.c",
|
|
"src/src/operators/resize-bilinear-nchw.c",
|
|
"src/src/operators/resize-bilinear-nhwc.c",
|
|
"src/src/operators/rope-nthc.c",
|
|
"src/src/operators/scaled-dot-product-attention-nhtc.c",
|
|
"src/src/operators/slice-nd.c",
|
|
"src/src/operators/softmax-nc.c",
|
|
"src/src/operators/transpose-nd.c",
|
|
"src/src/operators/unary-elementwise-nc.c",
|
|
"src/src/operators/unpooling-nhwc.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("operators_arm64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/operators/argmax-pooling-nhwc.c",
|
|
"src/src/operators/average-pooling-nhwc.c",
|
|
"src/src/operators/batch-matrix-multiply-nc.c",
|
|
"src/src/operators/binary-elementwise-nd.c",
|
|
"src/src/operators/channel-shuffle-nc.c",
|
|
"src/src/operators/constant-pad-nd.c",
|
|
"src/src/operators/convolution-nchw.c",
|
|
"src/src/operators/convolution-nhwc.c",
|
|
"src/src/operators/deconvolution-nhwc.c",
|
|
"src/src/operators/dynamic-fully-connected-nc.c",
|
|
"src/src/operators/fully-connected-nc.c",
|
|
"src/src/operators/global-average-pooling-ncw.c",
|
|
"src/src/operators/global-average-pooling-nwc.c",
|
|
"src/src/operators/lut-elementwise-nc.c",
|
|
"src/src/operators/max-pooling-nhwc.c",
|
|
"src/src/operators/post-operation.c",
|
|
"src/src/operators/prelu-nc.c",
|
|
"src/src/operators/reduce-nd.c",
|
|
"src/src/operators/resize-bilinear-nchw.c",
|
|
"src/src/operators/resize-bilinear-nhwc.c",
|
|
"src/src/operators/rope-nthc.c",
|
|
"src/src/operators/scaled-dot-product-attention-nhtc.c",
|
|
"src/src/operators/slice-nd.c",
|
|
"src/src/operators/softmax-nc.c",
|
|
"src/src/operators/transpose-nd.c",
|
|
"src/src/operators/unary-elementwise-nc.c",
|
|
"src/src/operators/unpooling-nhwc.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("qd8-f16-qc8w-gemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-4x16c4-minmax-asm-aarch64-neondot-ld128.S",
|
|
"src/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-4x16c4-minmax-asm-aarch64-neondotfp16arith-cortex-a55.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("qd8-f16-qc8w-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-4x16c4-minmax-asm-aarch64-neondot-ld128.S",
|
|
"src/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-4x16c4-minmax-asm-aarch64-neondotfp16arith-cortex-a55.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("qd8-f16-qc8w-igemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-4x16c4-minmax-asm-aarch64-neondot-cortex-a55.S",
|
|
"src/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-4x16c4-minmax-asm-aarch64-neondot-ld128.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("qd8-f16-qc8w-igemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-4x16c4-minmax-asm-aarch64-neondot-cortex-a55.S",
|
|
"src/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-4x16c4-minmax-asm-aarch64-neondot-ld128.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("qd8-f32-qc8w-gemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x16c4-minmax-asm-aarch64-neondot-cortex-a55.S",
|
|
"src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x16c4-minmax-asm-aarch64-neondot-ld128.S",
|
|
"src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x16c4-minmax-asm-aarch64-neondot-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("qd8-f32-qc8w-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x16c4-minmax-asm-aarch64-neondot-cortex-a55.S",
|
|
"src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x16c4-minmax-asm-aarch64-neondot-ld128.S",
|
|
"src/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x16c4-minmax-asm-aarch64-neondot-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("qd8-f32-qc8w-igemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x16c4-minmax-asm-aarch64-neondot-cortex-a55.S",
|
|
"src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x16c4-minmax-asm-aarch64-neondot-ld128.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("qd8-f32-qc8w-igemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x16c4-minmax-asm-aarch64-neondot-cortex-a55.S",
|
|
"src/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x16c4-minmax-asm-aarch64-neondot-ld128.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("qs8-qc8w-gemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c4-minmax-fp32-asm-aarch64-neondot-ld32.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c4-minmax-fp32-asm-aarch64-neondot-ld64.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c16-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mull.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld32.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("qs8-qc8w-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c4-minmax-fp32-asm-aarch64-neondot-ld32.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c4-minmax-fp32-asm-aarch64-neondot-ld64.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c16-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c8-minmax-fp32-asm-aarch64-neon-mull.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64-prfm.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld32.S",
|
|
"src/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("qs8-qc8w-igemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c16-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("qs8-qc8w-igemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c16-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-cortex-a53.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c8-minmax-fp32-asm-aarch64-neon-mlal.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-cortex-a53.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64-prfm.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16-minmax-fp32-asm-aarch64-neon-mlal-lane-ld64.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-cortex-a55.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld128.S",
|
|
"src/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-asm-aarch64-neondot-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("qu8-gemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53.S",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-ld64-prfm.S",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("qu8-gemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53.S",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-ld64-prfm.S",
|
|
"src/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("qu8-igemm_arch=armv8.2-a+fp16+dotprod") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53.S",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-ld64-prfm.S",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("qu8-igemm_arch=armv8.2-a+fp16+dotprod_standalone") {
|
|
configs += [ "//build/config/compiler:march_dotprod_fp16" ]
|
|
|
|
asmflags = cflags
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53-prfm.S",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a53.S",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75-prfm.S",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-cortex-a75.S",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-ld64-prfm.S",
|
|
"src/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-asm-aarch64-neon-mlal-lane-ld64.S",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("subgraph_arm64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/subgraph/abs.c",
|
|
"src/src/subgraph/add2.c",
|
|
"src/src/subgraph/argmax-pooling-2d.c",
|
|
"src/src/subgraph/average-pooling-2d.c",
|
|
"src/src/subgraph/bankers-rounding.c",
|
|
"src/src/subgraph/batch-matrix-multiply.c",
|
|
"src/src/subgraph/ceiling.c",
|
|
"src/src/subgraph/clamp.c",
|
|
"src/src/subgraph/concatenate.c",
|
|
"src/src/subgraph/convert.c",
|
|
"src/src/subgraph/convolution-2d.c",
|
|
"src/src/subgraph/copy.c",
|
|
"src/src/subgraph/copysign.c",
|
|
"src/src/subgraph/deconvolution-2d.c",
|
|
"src/src/subgraph/depth-to-space-2d.c",
|
|
"src/src/subgraph/depthwise-convolution-2d.c",
|
|
"src/src/subgraph/divide.c",
|
|
"src/src/subgraph/elu.c",
|
|
"src/src/subgraph/even-split.c",
|
|
"src/src/subgraph/exp.c",
|
|
"src/src/subgraph/floor.c",
|
|
"src/src/subgraph/fully-connected-sparse.c",
|
|
"src/src/subgraph/fully-connected.c",
|
|
"src/src/subgraph/gelu.c",
|
|
"src/src/subgraph/global-average-pooling.c",
|
|
"src/src/subgraph/global-sum-pooling.c",
|
|
"src/src/subgraph/hardswish.c",
|
|
"src/src/subgraph/leaky-relu.c",
|
|
"src/src/subgraph/log.c",
|
|
"src/src/subgraph/max-pooling-2d.c",
|
|
"src/src/subgraph/maximum2.c",
|
|
"src/src/subgraph/minimum2.c",
|
|
"src/src/subgraph/multiply2.c",
|
|
"src/src/subgraph/negate.c",
|
|
"src/src/subgraph/prelu.c",
|
|
"src/src/subgraph/reciprocal-square-root.c",
|
|
"src/src/subgraph/reshape-2d.c",
|
|
"src/src/subgraph/reshape-helpers.c",
|
|
"src/src/subgraph/rope.c",
|
|
"src/src/subgraph/scaled-dot-product-attention.c",
|
|
"src/src/subgraph/sigmoid.c",
|
|
"src/src/subgraph/softmax.c",
|
|
"src/src/subgraph/space-to-depth-2d.c",
|
|
"src/src/subgraph/square-root.c",
|
|
"src/src/subgraph/square.c",
|
|
"src/src/subgraph/squared-difference.c",
|
|
"src/src/subgraph/static-constant-pad.c",
|
|
"src/src/subgraph/static-mean.c",
|
|
"src/src/subgraph/static-reshape.c",
|
|
"src/src/subgraph/static-resize-bilinear-2d.c",
|
|
"src/src/subgraph/static-slice.c",
|
|
"src/src/subgraph/static-transpose.c",
|
|
"src/src/subgraph/subtract.c",
|
|
"src/src/subgraph/tanh.c",
|
|
"src/src/subgraph/unpooling-2d.c",
|
|
"src/src/subgraph/validation.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("subgraph_arm64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/subgraph/abs.c",
|
|
"src/src/subgraph/add2.c",
|
|
"src/src/subgraph/argmax-pooling-2d.c",
|
|
"src/src/subgraph/average-pooling-2d.c",
|
|
"src/src/subgraph/bankers-rounding.c",
|
|
"src/src/subgraph/batch-matrix-multiply.c",
|
|
"src/src/subgraph/ceiling.c",
|
|
"src/src/subgraph/clamp.c",
|
|
"src/src/subgraph/concatenate.c",
|
|
"src/src/subgraph/convert.c",
|
|
"src/src/subgraph/convolution-2d.c",
|
|
"src/src/subgraph/copy.c",
|
|
"src/src/subgraph/copysign.c",
|
|
"src/src/subgraph/deconvolution-2d.c",
|
|
"src/src/subgraph/depth-to-space-2d.c",
|
|
"src/src/subgraph/depthwise-convolution-2d.c",
|
|
"src/src/subgraph/divide.c",
|
|
"src/src/subgraph/elu.c",
|
|
"src/src/subgraph/even-split.c",
|
|
"src/src/subgraph/exp.c",
|
|
"src/src/subgraph/floor.c",
|
|
"src/src/subgraph/fully-connected-sparse.c",
|
|
"src/src/subgraph/fully-connected.c",
|
|
"src/src/subgraph/gelu.c",
|
|
"src/src/subgraph/global-average-pooling.c",
|
|
"src/src/subgraph/global-sum-pooling.c",
|
|
"src/src/subgraph/hardswish.c",
|
|
"src/src/subgraph/leaky-relu.c",
|
|
"src/src/subgraph/log.c",
|
|
"src/src/subgraph/max-pooling-2d.c",
|
|
"src/src/subgraph/maximum2.c",
|
|
"src/src/subgraph/minimum2.c",
|
|
"src/src/subgraph/multiply2.c",
|
|
"src/src/subgraph/negate.c",
|
|
"src/src/subgraph/prelu.c",
|
|
"src/src/subgraph/reciprocal-square-root.c",
|
|
"src/src/subgraph/reshape-2d.c",
|
|
"src/src/subgraph/reshape-helpers.c",
|
|
"src/src/subgraph/rope.c",
|
|
"src/src/subgraph/scaled-dot-product-attention.c",
|
|
"src/src/subgraph/sigmoid.c",
|
|
"src/src/subgraph/softmax.c",
|
|
"src/src/subgraph/space-to-depth-2d.c",
|
|
"src/src/subgraph/square-root.c",
|
|
"src/src/subgraph/square.c",
|
|
"src/src/subgraph/squared-difference.c",
|
|
"src/src/subgraph/static-constant-pad.c",
|
|
"src/src/subgraph/static-mean.c",
|
|
"src/src/subgraph/static-reshape.c",
|
|
"src/src/subgraph/static-resize-bilinear-2d.c",
|
|
"src/src/subgraph/static-slice.c",
|
|
"src/src/subgraph/static-transpose.c",
|
|
"src/src/subgraph/subtract.c",
|
|
"src/src/subgraph/tanh.c",
|
|
"src/src/subgraph/unpooling-2d.c",
|
|
"src/src/subgraph/validation.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
|
|
source_set("tables_arm64") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/tables/exp2-k-over-2048.c",
|
|
"src/src/tables/exp2-k-over-64.c",
|
|
"src/src/tables/exp2minus-k-over-16.c",
|
|
"src/src/tables/exp2minus-k-over-2048.c",
|
|
"src/src/tables/exp2minus-k-over-32.c",
|
|
"src/src/tables/exp2minus-k-over-4.c",
|
|
"src/src/tables/exp2minus-k-over-64.c",
|
|
"src/src/tables/exp2minus-k-over-8.c",
|
|
"src/src/tables/vlog.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
}
|
|
|
|
# This is a target that cannot depend on //base.
|
|
source_set("tables_arm64_standalone") {
|
|
cflags = []
|
|
|
|
sources = [
|
|
"src/include/xnnpack.h",
|
|
"src/src/tables/exp2-k-over-2048.c",
|
|
"src/src/tables/exp2-k-over-64.c",
|
|
"src/src/tables/exp2minus-k-over-16.c",
|
|
"src/src/tables/exp2minus-k-over-2048.c",
|
|
"src/src/tables/exp2minus-k-over-32.c",
|
|
"src/src/tables/exp2minus-k-over-4.c",
|
|
"src/src/tables/exp2minus-k-over-64.c",
|
|
"src/src/tables/exp2minus-k-over-8.c",
|
|
"src/src/tables/vlog.c",
|
|
]
|
|
|
|
configs -= [ "//build/config/compiler:chromium_code" ]
|
|
configs += [ "//build/config/compiler:no_chromium_code" ]
|
|
configs += [ "//build/config/sanitizers:cfi_icall_generalize_pointers" ]
|
|
|
|
deps = [
|
|
"//third_party/cpuinfo",
|
|
"//third_party/fp16",
|
|
"//third_party/fxdiv",
|
|
"//third_party/pthreadpool:pthreadpool_standalone",
|
|
]
|
|
|
|
public_configs = [ ":xnnpack_config" ]
|
|
|
|
if (!(is_android && use_order_profiling)) {
|
|
assert_no_deps = [ "//base" ]
|
|
}
|
|
}
|
|
}
|