Skip to content

Commit ade99d1

Browse files
authored
Merge branch 'ARM-software:main' into sparse
2 parents 6d993d1 + 3add408 commit ade99d1

2,244 files changed

Lines changed: 281681 additions & 148460 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.clang-tidy

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
Checks: 'clang-diagnostic-*,*,-llvm-include-order,clang-analyzer-*,-abseil-*,-fuchsia-*,-bugprone-*,-hicpp-*,-cppcoreguidelines-pro-bounds-pointer-arithmetic,-cppcoreguidelines-pro-bounds-array-to-pointer-decay,-cppcoreguidelines-pro-bounds-constant-array-index,-cert-err58-cpp,-cppcoreguidelines-pro-type-reinterpret-cast,-google-runtime-references,-google-build-using-namespace,-readability-redundant-member-init,-readability-redundant-declaration,-readability-else-after-return,-performance-type-promotion-in-math-fn,-cert-err60-cpp,-cppcoreguidelines-narrowing-conversions,-readability-magic-numbers,-cppcoreguidelines-avoid-magic-numbers,-readability-named-parameter,-readability-implicit-bool-conversion,-readability-uppercase-literal-suffix,-clang-analyzer-optin.cplusplus.VirtualCall,-cppcoreguidelines-macro-usage'
33
WarningsAsErrors: ''
44
HeaderFilterRegex: ''
5-
AnalyzeTemporaryDtors: false
65
CheckOptions:
76
- key: cert-dcl16-c.IgnoreMacros
87
value: '1'

.git-blame-ignore-revs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2023 Arm Limited.
1+
# Copyright (c) 2023, 2025-2026 Arm Limited.
22
#
33
# SPDX-License-Identifier: MIT
44
#
@@ -26,3 +26,6 @@
2626

2727
# COMPMID-6576: Apply clang-format on repository
2828
afd38f0c617d6f89b2b4532c6c44f116617e2b6f
29+
30+
# style: Apply clang-format for tests
31+
de306a3335172ddbb4796a317e86c2abc7c4d5b2

.gitignore

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,6 @@ CMakeUserPresets.json
3131
*cscope*
3232

3333
# Text files
34-
*.txt
35-
!CMakeLists.txt
3634
*.xml
3735
*.embed
3836
*.diff

.pre-commit-config.yaml

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2023-2025 Arm Limited.
1+
# Copyright (c) 2023-2026 Arm Limited.
22
#
33
# SPDX-License-Identifier: MIT
44
#
@@ -31,6 +31,8 @@ exclude: |
3131
src/core/NEON/kernels/convolution/.*|
3232
src/core/NEON/kernels/arm_gemm/.*|
3333
src/core/NEON/kernels/arm_conv/.*|
34+
src/cpu/kernels/assembly/arm_gemm/.*|
35+
src/cpu/kernels/assembly/arm_common/.*|
3436
third_party/.*|
3537
LICENSES/.*
3638
)$
@@ -88,23 +90,27 @@ repos:
8890
name: Fix header guards in ACL
8991
stages: [pre-commit]
9092
language: python
91-
entry: python ./scripts/check_header_guards.py --extensions=h,hh,hpp,inl --comment_style=double_slash --prefix=ACL --exclude=src/core/NEON/kernels/convolution/,src/core/NEON/kernels/arm_gemm/,src/core/NEON/kernels/arm_conv/,include/,third_party/ --add_extension
93+
entry: python ./scripts/check_header_guards.py --extensions=h,hh,hpp,inl --comment_style=double_slash --prefix=ACL --exclude=src/core/NEON/kernels/convolution/,src/core/NEON/kernels/arm_gemm/,src/core/NEON/kernels/arm_conv/,include/,third_party/,src/cpu/kernels/assembly/arm_gemm,src/cpu/kernels/assembly/arm_common --add_extension
9294
pass_filenames: true
9395
- id: pre-push-check
9496
name: Commit Message Check
9597
language: python
9698
always_run: true
9799
entry: bash -c "pip install -q commitizen && git log -1 --pretty=%s | cz check"
98100
stages: [pre-push]
101+
- id: check-signoff
102+
name: Check Signed-off-by
103+
entry: >
104+
bash -c 'git log -1 --pretty=%B |
105+
grep -qiE "^Signed-off-by: .+ <.+@.+>$"'
106+
always_run: true
107+
language: system
108+
stages: [pre-push]
99109
- repo: https://github.com/pre-commit/mirrors-clang-format
100110
rev: v14.0.6
101111
hooks:
102112
- id: clang-format
103113
files: .*\.(cpp|h|hpp|hh|cc|inl|c)$
104-
exclude: |
105-
(?x)^(
106-
tests/.*
107-
)$
108114
stages: [pre-commit]
109115
- repo: https://github.com/pre-commit/pre-commit-hooks
110116
rev: v4.4.0
@@ -121,7 +127,7 @@ repos:
121127
args: ['--maxkb=100']
122128
stages: [pre-commit]
123129
- repo: https://github.com/fsfe/reuse-tool
124-
rev: v4.0.3
130+
rev: v6.2.0
125131
hooks:
126132
- id: reuse
127133
stages: [ pre-commit ]

Android.bp

Lines changed: 41 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
//
2-
// Copyright © 2020-2025 Arm Ltd. All rights reserved.
2+
// Copyright © 2020-2026 Arm Ltd. All rights reserved.
33
// SPDX-License-Identifier: MIT
44
//
55

@@ -345,7 +345,6 @@ cc_library_static {
345345
"src/core/NEON/kernels/arm_gemm/mergeresults-fp16.cpp",
346346
"src/core/NEON/kernels/arm_gemm/mergeresults-sve.cpp",
347347
"src/core/NEON/kernels/arm_gemm/mergeresults.cpp",
348-
"src/core/NEON/kernels/arm_gemm/misc-sve.cpp",
349348
"src/core/NEON/kernels/arm_gemm/misc.cpp",
350349
"src/core/NEON/kernels/arm_gemm/quantized-fp16.cpp",
351350
"src/core/NEON/kernels/arm_gemm/quantized.cpp",
@@ -463,6 +462,7 @@ cc_library_static {
463462
"src/cpu/kernels/CpuScatterKernel.cpp",
464463
"src/cpu/kernels/CpuSoftmaxKernel.cpp",
465464
"src/cpu/kernels/CpuSubKernel.cpp",
465+
"src/cpu/kernels/CpuTopKVKernel.cpp",
466466
"src/cpu/kernels/CpuTransposeKernel.cpp",
467467
"src/cpu/kernels/CpuWeightsReshapeKernel.cpp",
468468
"src/cpu/kernels/CpuWinogradConv2dKernel.cpp",
@@ -612,6 +612,11 @@ cc_library_static {
612612
"src/cpu/kernels/sub/neon/qasymm8.cpp",
613613
"src/cpu/kernels/sub/neon/qasymm8_signed.cpp",
614614
"src/cpu/kernels/sub/neon/qsymm16.cpp",
615+
"src/cpu/kernels/topkv/generic/neon/fp16.cpp",
616+
"src/cpu/kernels/topkv/generic/neon/fp32.cpp",
617+
"src/cpu/kernels/topkv/generic/neon/integer.cpp",
618+
"src/cpu/kernels/topkv/generic/neon/qasymm8.cpp",
619+
"src/cpu/kernels/topkv/generic/neon/qasymm8_signed.cpp",
615620
"src/cpu/operators/CpuActivation.cpp",
616621
"src/cpu/operators/CpuAdd.cpp",
617622
"src/cpu/operators/CpuAddMulAdd.cpp",
@@ -650,6 +655,7 @@ cc_library_static {
650655
"src/cpu/operators/CpuScatter.cpp",
651656
"src/cpu/operators/CpuSoftmax.cpp",
652657
"src/cpu/operators/CpuSub.cpp",
658+
"src/cpu/operators/CpuTopKV.cpp",
653659
"src/cpu/operators/CpuTranspose.cpp",
654660
"src/cpu/operators/CpuWinogradConv2d.cpp",
655661
"src/cpu/operators/internal/CpuGemmAssemblyDispatch.cpp",
@@ -979,6 +985,7 @@ cc_library_static {
979985
"src/runtime/NEON/functions/NEStackLayer.cpp",
980986
"src/runtime/NEON/functions/NEStridedSlice.cpp",
981987
"src/runtime/NEON/functions/NETile.cpp",
988+
"src/runtime/NEON/functions/NETopKV.cpp",
982989
"src/runtime/NEON/functions/NETranspose.cpp",
983990
"src/runtime/NEON/functions/NEUnstack.cpp",
984991
"src/runtime/NEON/functions/NEWinogradConvolutionLayer.cpp",
@@ -1286,7 +1293,6 @@ cc_library_static {
12861293
"src/core/NEON/kernels/arm_gemm/kernels/a64_hybrid_u8u32_dot_6x16/generic.cpp",
12871294
"src/core/NEON/kernels/arm_gemm/kernels/a64_hybrid_u8u32_mmla_6x16/generic.cpp",
12881295
"src/core/NEON/kernels/arm_gemm/kernels/a64_interleaved_bf16fp32_dot_8x12/generic.cpp",
1289-
"src/core/NEON/kernels/arm_gemm/kernels/a64_interleaved_bf16fp32_dot_8x12/x1.cpp",
12901296
"src/core/NEON/kernels/arm_gemm/kernels/a64_interleaved_bf16fp32_mmla_8x12/a510.cpp",
12911297
"src/core/NEON/kernels/arm_gemm/kernels/a64_interleaved_bf16fp32_mmla_8x12/generic.cpp",
12921298
"src/core/NEON/kernels/arm_gemm/kernels/a64_interleaved_s8s32_mmla_8x12/a510.cpp",
@@ -1300,7 +1306,6 @@ cc_library_static {
13001306
"src/core/NEON/kernels/arm_gemm/kernels/a64_sgemm_8x12/generic.cpp",
13011307
"src/core/NEON/kernels/arm_gemm/kernels/a64_sgemm_8x12/x1.cpp",
13021308
"src/core/NEON/kernels/arm_gemm/kernels/a64_sgemm_8x6/generic.cpp",
1303-
"src/core/NEON/kernels/arm_gemm/kernels/a64_sgemv_pretransposed/generic.cpp",
13041309
"src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_fp32_mla_6x4/generic.cpp",
13051310
"src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_fp32_mla_8x4/generic.cpp",
13061311
"src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_6x4/a55.cpp",
@@ -1312,15 +1317,14 @@ cc_library_static {
13121317
"src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_8x4/a55.cpp",
13131318
"src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_8x4/generic.cpp",
13141319
"src/core/NEON/kernels/arm_gemm/kernels/sme2_gemv_bf16fp32_dot_16VL/generic.cpp",
1315-
"src/core/NEON/kernels/arm_gemm/kernels/sme2_gemv_fp16_mla_16VL/generic.cpp",
13161320
"src/core/NEON/kernels/arm_gemm/kernels/sme2_gemv_fp16fp32fp16_dot_16VL/generic.cpp",
13171321
"src/core/NEON/kernels/arm_gemm/kernels/sme2_gemv_fp32_mla_16VL/generic.cpp",
13181322
"src/core/NEON/kernels/arm_gemm/kernels/sme2_gemv_fp32bf16fp32_dot_16VL/generic.cpp",
13191323
"src/core/NEON/kernels/arm_gemm/kernels/sme2_gemv_s8qa_dot_16VL/generic.cpp",
13201324
"src/core/NEON/kernels/arm_gemm/kernels/sme2_gemv_u8qa_dot_16VL/generic.cpp",
13211325
"src/core/NEON/kernels/arm_gemm/kernels/sme2_interleaved_nomerge_bf16fp32_mopa_1VLx4VL/generic.cpp",
13221326
"src/core/NEON/kernels/arm_gemm/kernels/sme2_interleaved_nomerge_bf16fp32_mopa_2VLx2VL/generic.cpp",
1323-
"src/core/NEON/kernels/arm_gemm/kernels/sme2_interleaved_nomerge_bf16fp32_mopa_4VLx1VL/generic.cpp",
1327+
"src/core/NEON/kernels/arm_gemm/kernels/sme2_interleaved_nomerge_bf16fp32_mopa_4VLx1VL_lhs2VL/generic.cpp",
13241328
"src/core/NEON/kernels/arm_gemm/kernels/sme2_interleaved_nomerge_fp16fp32_mopa_1VLx4VL/generic.cpp",
13251329
"src/core/NEON/kernels/arm_gemm/kernels/sme2_interleaved_nomerge_fp16fp32_mopa_2VLx2VL/generic.cpp",
13261330
"src/core/NEON/kernels/arm_gemm/kernels/sme2_interleaved_nomerge_fp16fp32_mopa_4VLx1VL/generic.cpp",
@@ -1342,6 +1346,37 @@ cc_library_static {
13421346
"src/core/NEON/kernels/arm_gemm/kernels/sme2_interleaved_nomerge_u8q_mopa_1VLx4VL/generic.cpp",
13431347
"src/core/NEON/kernels/arm_gemm/kernels/sme2_interleaved_nomerge_u8q_mopa_2VLx2VL/generic.cpp",
13441348
"src/core/NEON/kernels/arm_gemm/kernels/sme2_interleaved_nomerge_u8q_mopa_4VLx1VL/generic.cpp",
1349+
"src/core/NEON/kernels/arm_gemm/kernels/sme_gemv_bf16fp32_dot_8VL/generic.cpp",
1350+
"src/core/NEON/kernels/arm_gemm/kernels/sme_gemv_fp16_mla_8VL/generic.cpp",
1351+
"src/core/NEON/kernels/arm_gemm/kernels/sme_gemv_fp16fp32fp16_mla_8VL_rhs2VL/generic.cpp",
1352+
"src/core/NEON/kernels/arm_gemm/kernels/sme_gemv_fp32_mla_8VL/generic.cpp",
1353+
"src/core/NEON/kernels/arm_gemm/kernels/sme_gemv_fp32bf16fp32_dot_8VL/generic.cpp",
1354+
"src/core/NEON/kernels/arm_gemm/kernels/sme_gemv_s8qa_dot_8VL/generic.cpp",
1355+
"src/core/NEON/kernels/arm_gemm/kernels/sme_gemv_u8qa_dot_8VL/generic.cpp",
1356+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_bf16fp32_mopa_1VLx4VL/generic.cpp",
1357+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_bf16fp32_mopa_2VLx2VL/generic.cpp",
1358+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_bf16fp32_mopa_4VLx1VL_lhs2VL/generic.cpp",
1359+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_fp16fp32_mopa_1VLx4VL/generic.cpp",
1360+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_fp16fp32_mopa_2VLx2VL/generic.cpp",
1361+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_fp16fp32_mopa_4VLx1VL/generic.cpp",
1362+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_fp16fp32fp16_mopa_1VLx4VL/generic.cpp",
1363+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_fp16fp32fp16_mopa_2VLx2VL/generic.cpp",
1364+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_fp16fp32fp16_mopa_4VLx1VL/generic.cpp",
1365+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_fp32_mopa_1VLx4VL/generic.cpp",
1366+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_fp32_mopa_2VLx2VL/generic.cpp",
1367+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_fp32_mopa_4VLx1VL/generic.cpp",
1368+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_s8q_mopa_1VLx4VL/generic.cpp",
1369+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_s8q_mopa_2VLx2VL/generic.cpp",
1370+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_s8q_mopa_4VLx1VL/generic.cpp",
1371+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_s8qfp32_mopa_1VLx4VL/generic.cpp",
1372+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_s8qfp32_mopa_2VLx2VL/generic.cpp",
1373+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_s8qfp32_mopa_4VLx1VL/generic.cpp",
1374+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_s8s32_mopa_1VLx4VL/generic.cpp",
1375+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_s8s32_mopa_2VLx2VL/generic.cpp",
1376+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_s8s32_mopa_4VLx1VL/generic.cpp",
1377+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_u8q_mopa_1VLx4VL/generic.cpp",
1378+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_u8q_mopa_2VLx2VL/generic.cpp",
1379+
"src/core/NEON/kernels/arm_gemm/kernels/sme_interleaved_nomerge_u8q_mopa_4VLx1VL/generic.cpp",
13451380
"src/core/NEON/kernels/arm_gemm/kernels/sve_ffhybrid_bf16fp32_mmla_6x4VL/generic.cpp",
13461381
"src/core/NEON/kernels/arm_gemm/kernels/sve_ffhybrid_fp16_mla_6x4VL/a64fx.cpp",
13471382
"src/core/NEON/kernels/arm_gemm/kernels/sve_ffhybrid_fp16_mla_6x4VL/generic.cpp",

BUILD.bazel

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -424,8 +424,7 @@ cc_library(
424424
"//support",
425425
"//utils",
426426
"@@kleidiai//:common",
427-
"@@kleidiai//kai/ukernels/matmul:clamp_f32_f32_f32p",
428-
"@@kleidiai//kai/ukernels/matmul:rhs_pack_kxn_f32pbiasf32_f32_f32_neon",
427+
"@@kleidiai//kai/ukernels/matmul:matmul",
429428
"//:arm_compute_sve",
430429
"//:arm_compute_sve2"
431430
],

0 commit comments

Comments
 (0)