aboutsummaryrefslogtreecommitdiff
path: root/core/simd
Commit message (Collapse)AuthorAgeFilesLines
* simd: fix typosLaytan Laats2026-01-111-2/+2
|
* Add `@(require_results)` to `core:simd` procedures where missinggingerBill2025-11-221-0/+8
|
* Fix renamed function call in bit_notandzdroid2025-10-101-1/+1
| | | | xor was renamed to bit_xor
* Further overhaul of package line comments.Jeroen van Rijn2025-10-092-2/+2
|
* More package lines.Jeroen van Rijn2025-10-092-1/+3
|
* Make `Operation:` comments unformattedgingerBill2025-10-091-54/+54
|
* rename table_lookup to runtime_swizzleJon Lipstate2025-07-161-3/+3
|
* table lookup intrinsicJon Lipstate2025-07-051-0/+51
|
* Rename `SIMD_IS_EMULATED` to capability-affirmative `HAS_HARDWARE_SIMD`Feoramund2025-05-291-4/+4
|
* Move `simd.IS_EMULATED` to `runtime.SIMD_IS_EMULATED`Feoramund2025-05-291-5/+2
|
* Merge pull request #5108 from Barinzaya/core-simd-indices-redadd-redmulgingerBill2025-05-061-2/+192
|\ | | | | Alternate `reduce_add`/`reduce_mul` intrinsics
| * Added alternate reduce-add/reduce-mul intrinsics.Barinzaya2025-05-051-2/+192
| | | | | | | | | | | | | | | | | | | | The new reduce_add/reduce_mul procs perform the corresponding arithmetic reduction in different orders than sequential order. These alternative orders can often offer better SIMD hardware utilization. Two different orders are added: pair-wise (operating on pairs of adjacent elements) or bisection-wise (operating element-wise on the first and last N/2 elements of the vector).
* | Added BMI and BMI2 intrinsics.Barinzaya2025-05-062-0/+125
|/ | | | | | The BMI ones mostly aren't particularly interesting--they're mostly trivially representable in-language--but PDEP and PEXT from BMI2 could be.
* Add `simd.indices` and docsgingerBill2025-05-051-0/+14
|
* Fix broken examples in documentation tester.Jeroen van Rijn2025-04-051-55/+113
| | | | | | | | | No more: ``` We could not find the procedure "pkg_foo_example :: proc()" needed to test the example created for "pkg.foo" The following procedures were found: bar() ```
* core/crypto/sha2: Use hardware SHA224/256 when available (AMD64)Yawning Angel2025-03-231-1/+1
|
* Fix documentation for simd_shuffleflysand72025-03-021-5/+3
|
* Merge branch 'master' into docs-simdflysand72025-03-021-0/+78
|\
| * Added simd_extract_lsbs intrinsic as well.Barinzaya2025-02-241-0/+1
| | | | | | | | | | Equivalent to the simd_extract_msbs intrinsic, except it extracts the least significant bit of each element instead.
| * Added simd_extract_msbs intrinsic.Barinzaya2025-02-241-0/+2
| |
* | Merge branch 'simd-docs' into docs-simdflysand72025-01-211-86/+90
|\ \
| * | Suggestion fixesflysand72025-01-211-64/+75
| | |
| * | Fix indentationflysand72024-12-011-6/+6
| | |
| * | Fix indentationflysand72024-12-011-1/+1
| | |
| * | First passflysand72024-12-011-36/+2190
| |/
* | [simd] Fixes to inputs/result/example/output sections & grmamar fixesflysand72025-01-081-97/+110
| |
* | Apply suggestions from code reviewflysand72024-12-041-4/+4
| | | | | | Co-authored-by: Laytan <laytanlaats@hotmail.com>
* | Apply suggestions from code reviewflysand72024-12-041-105/+105
| | | | | | Co-authored-by: Laytan <laytanlaats@hotmail.com>
* | [core/simd]: Write package documentationflysand72024-12-021-36/+2190
|/
* Replace "." with "," in parameter listAntonino Simone Di Stefano2024-09-221-2/+2
|
* Moved all packages in core, base, vendor, tests and examples to use new #+ ↵Karl Zylinski2024-09-1415-15/+15
| | | | file tag syntax.
* add riscv to simd.IS_EMULATEDLaytan Laats2024-08-221-0/+1
|
* core/simd: Add `IS_EMULTATED` so there is one place to look for potatosYawning Angel2024-08-181-0/+7
|
* Add `intrinsics.masked_expand_load` and `intrinsics.masked_compress_store`gingerBill2024-08-051-1/+2
|
* Fix typosgingerBill2024-08-051-2/+2
|
* Add `intrinsics.simd_masked_load` and `intrinsics.simd_masked_store`gingerBill2024-08-051-0/+3
|
* Add `intrinsics.simd_gather` and ``intrinsics.simd_scatter`gingerBill2024-08-051-0/+5
|
* `add_sat` -> `saturating_add`gingerBill2024-08-051-8/+8
|
* Rename `add_sat` -> `saturating_add`gingerBill2024-08-051-2/+2
|
* Add `simd_reduce_any` and `simd_reduce_all`gingerBill2024-08-051-0/+3
|
* core/crypto/aes: Add Intel AES-NI supportYawning Angel2024-07-161-2/+2
| | | | | This supports AES-NI + PCLMUL, and provides optimized key schedule, ECB, CTR, and GCM. Other modes are trivial to add later if required.
* core/simd/x86: Make the AES-NI intrinsics consistent with IntelYawning Angel2024-07-161-6/+6
|
* core/simd/x86: Fix some intrinsicsYawning Angel2024-07-161-14/+19
| | | | | - _mm_slli_si128 produced totally incorrect output - _mm_storeu_si128 refered to a LLVM intrinsic that is missing
* Let simd/x86 pass new transmute/cast vet.Jeroen van Rijn2024-07-093-21/+21
|
* core/simd/x86: Add the AES-NI intrinsicsYawning Angel2024-06-011-0/+49
|
* Correct `core:intrinsics` to `base:intrinsics`gingerBill2024-05-136-6/+6
|
* compiler: improve target features supportLaytan Laats2024-05-022-4/+4
|
* Replace `core:*` to `base:*` where appropriategingerBill2024-01-281-2/+2
|
* core/simd/x86: Use the `none` calling convention for intrinsicsYawning Angel2024-01-0711-11/+11
| | | | | | | | The LLVM intrinsics that live under `llvm.x86` are not actual functions, so trying to invoke them as such using the platform's native C calling convention causes incorrect types to be emitted in the IR. Thanks to laytanl for assistance in testing.
* core/simd/x86: Correct a target feature nameYawning Angel2024-01-071-1/+1
|