Crafter.Math/interfaces
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jorijn van der Graaf 0c55e76873
ARM NEON
NEON backend for VectorF32 on AArch64: one float32x4_t per vector
(Len * Packing <= 4), with a vectorised sin/cos port of the SSE helpers.

VectorF16 gets a native float16x8_t path when the target has ARMv8.2-FP16
arithmetic. Without it VectorF16 aliases VectorF32, which converts
fp16 <-> fp32 on Load/Store.

The scalar fallback gains the batched Dot that MatrixRowMajor relies on.
Test tiers added for armv8-a and armv8.2-a+fp16.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 17:13:54 +02:00
..
Crafter.Math-Basic.cppm ARM NEON 2026-10-06 17:13:54 +02:00
Crafter.Math-Common.cppm ARM NEON 2026-10-06 17:13:54 +02:00
Crafter.Math-Intersection.cppm SPDX license update 2026-07-22 18:01:26 +02:00
Crafter.Math-MatrixRowMajor.cppm SPDX license update 2026-07-22 18:01:26 +02:00
Crafter.Math-Vector.cppm LF line endings 2026-10-06 16:59:52 +02:00
Crafter.Math-VectorF16.cppm ARM NEON 2026-10-06 17:13:54 +02:00
Crafter.Math-VectorF32.cppm ARM NEON 2026-10-06 17:13:54 +02:00
Crafter.Math.cppm SPDX license update 2026-07-22 18:01:26 +02:00