Madhav Madhusoodanan
1d39fd0964
Chore: Added SupportedArchitectureTest trait which must be implemented for different architectures.
...
Next steps:
Move the existing ARM-specific implementation into one that fits well with this trait.
2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
d7edb3ea7c
Feat: Moved majority of the code to arm module.
...
Reasoning:
1. Majority of code assumes the usage of `Intrinsic` and related types, which is derived from the JSON structure of the ARM intrinsics JSON source file
2. Further commits will start with extracting common parts of the code (eg: Create C/Rust file, Build C/Rust file, etc)
2025-05-27 23:27:38 +00:00
Folkert de Vries
4f35c02aa0
in intrinsic-test, format f16 like C
2025-05-20 14:26:46 +00:00
James Barford-Evans
206c35a3a2
change how the test is run
2025-05-03 05:06:15 +00:00
James Barford-Evans
052293b092
add printouts for debugging
2025-05-03 05:06:15 +00:00
James Barford-Evans
89c9c8ba9c
feat - FEAT_LUT neon instrinsics
2025-03-05 14:54:05 +00:00
James Barford-Evans
5ece6ac059
armV7 does not need faminmax flag
2025-03-04 15:50:04 +00:00
James Barford-Evans
de7f56ff35
Add aarch64_unstable_target_feature and relax instruction assertion
2025-03-04 15:50:04 +00:00
Kajetan Puchalski
3b58340073
intrinsic-test: Print C++ float16_t in hex
...
Upstream Rust currently does not support printing f16s in decimal.
For the intrinsics tests to work, make C++ print float16_t in the same
format.
Can be droppen once https://github.com/rust-lang/rust/pull/127013
is merged.
2025-02-24 14:22:42 +00:00
Kajetan Puchalski
f4a31fd609
core-arch: Add NEON fp16 intrinsics
2025-02-24 14:22:42 +00:00
Kajetan Puchalski
ed7bf87061
intrinsic-test: Support testing f16 intrinsics
2025-02-24 14:22:42 +00:00
James Barford-Evans
b95fc44d25
fix up yaml & re-generate
2025-02-24 11:04:20 +00:00
James Barford-Evans
2ab46242f0
remove print statment and correct target name
2025-02-24 11:04:20 +00:00
James Barford-Evans
bec322f990
fix test runner for armv7
2025-02-24 11:04:20 +00:00
James Barford-Evans
f4974ae1ed
ensure correct linker gets chosen
2025-02-24 11:04:20 +00:00
James Barford-Evans
7294081fda
Update test runner to support big endian
2025-02-24 11:04:20 +00:00
Eric Huss
d9ec0157da
Format with style edition 2024
2025-02-09 12:57:14 -08:00
Yuri Astrakhan
0760ed6ca7
Minor linting
2024-09-30 13:00:24 -04:00
Olasunkanmi Olayinka
da09b47285
feat: stabilization for stdarch_aarch64_crc32
2024-05-14 15:52:07 +02:00
Tony Arcieri
153bde14d1
Remove duplicated allow(dead_code) attribute
...
Accidentally added in #1552
2024-04-13 02:32:07 +02:00
Tony Arcieri
eab9f2d6d9
Stabilize AArch64 SHA3 intrinsics
...
See also: rust-lang/rust#117225
2024-04-12 14:08:47 +02:00
Luca Barbato
06495b6f45
intrinsic-test: Suppress a warning about dead code
2024-04-10 01:46:00 +02:00
Daniel Paoliello
a00a70eacb
arm64ec
2024-03-13 22:30:36 +00:00
Eduardo Sánchez Muñoz
57479f8c9b
Remove unneeded borrows
2023-11-18 20:28:46 -08:00
Jacob Bramley
211a00769c
Improve intrinsic-test output formatting.
...
This change is simple, but makes the generated tests much easier to
follow (and debug).
2023-11-17 23:49:21 -08:00
Jacob Bramley
d2736197f7
Add --generate-only to intrinsic-test.
...
This is useful for debugging.
2023-11-17 23:49:21 -08:00
Jacob Bramley
7f2a7c09ef
Fix intrinsic-test author handling.
...
CARGO_PKG_AUTHORS is :-separated.
Also add myself to intrinsic-test authors.
2023-11-01 14:33:48 +01:00
Jacob Bramley
05afebca4d
Clean up intrinsic-test literals.
...
- Ensure that C literals don't rely on undefined overflow behaviour.
- We don't need to use 'as' casts, so remove them.
- We weren't using allow(overflowing_literals), so remove it.
- Format FP bit values as hex.
This simplifies the test input initialisers in the generated files,
making them shorter and easier to debug.
2023-11-01 14:33:48 +01:00
Jacob Bramley
1970299926
Remove unnecessary unsafety in intrinsic tests.
...
This fixes "unnecessary `unsafe` block" warnings encountered when
building the generated rust_programs.
The only pattern that actually required `unsafe` was transmuting bit
patterns into floats. This patch uses the safe `from_bits` instead, but
because that isn't const, we have to make them local let-bound
variables.
2023-11-01 14:33:48 +01:00
Amanieu d'Antras
ea27e5cfcb
Fix various compilation errors
2023-10-29 20:39:50 +01:00
Amanieu d'Antras
b8ba57f310
Cleanup last uses of the stdsimd feature
2023-10-29 20:39:50 +01:00
Eduardo Sánchez Muñoz
eef659efee
Bump clap to 4.4
...
Also define args with derive style instead of builder style.
2023-10-10 14:47:43 +01:00
Bruce Mitchener
5c4a950591
docs: Fix warnings and typos.
...
* Fix typo in HTML tag
* Mark some things with backticks to fix warnings about
unescaped square brackets.
* Spell "initialize" correctly to fix typos.
2023-07-30 10:57:20 +01:00
Adam Gemmell
9fc8fd8375
Fix intrinsic-test rejecting the new instructions JSON field
2023-05-16 14:05:52 +02:00
Adam Gemmell
0125fa17c8
Remove ACLE submodule
...
This involves moving from the ACLE intrinsic definitions (which aren't
available for SVE at this point) to a JSON file. This was derived from
ARM's documentation[^1], and then relicensed under `MIT OR Apache-2.0` for
use in this repository.
[^1]: https://developer.arm.com/architectures/instruction-sets/intrinsics
2023-05-15 17:34:11 +02:00
Jacob Bramley
6e5b949ee7
Check and pass the ACLE licence on to generated tests.
...
The generated tests are transient, and aren't committed, so this is
primarily a safety check.
2023-01-23 18:58:28 +00:00
Yuri Astrakhan
81c221f058
Edition 2021, apply clippy::uninlined_format_args fix ( #1339 )
2022-10-25 20:17:23 +01:00
James McGregor
893bbdd717
Use load intrinsic and loop for intrinsic-test programs. Add --release flag back to intrinsic-test programs.
2022-08-22 23:46:30 +02:00
Frank Steffahn
df24e2a0f8
Fix a bunch of typos
2021-12-14 10:17:43 -08:00
Amanieu d'Antras
937978eeef
Update the intrinsic checker tool ( #1258 )
2021-12-04 13:03:30 +00:00
Jamie Cunliffe
b04e740f24
Handle intrinsics with constraints in the test tool. ( #1237 )
2021-11-05 01:47:31 +00:00
Jamie Cunliffe
bd0e352338
Intrinsic test tool to compare neon intrinsics with C ( #1170 )
2021-09-09 19:16:45 +01:00