Commit Graph

50 Commits

Author SHA1 Message Date
Tsukasa OI
221eb1f0d5 intrinsic-test: Make Clippy happy 2025-09-12 11:50:25 +00:00
Folkert de Vries
4b549a7330 move target-specific definitions into constants 2025-09-07 14:11:02 +02:00
Folkert de Vries
ccec202727 move build_c_file and build_rust_file into SupportedArchitectureTest 2025-09-07 14:11:02 +02:00
Folkert de Vries
1697f36225 remove trait IntrinsicDefinition 2025-09-07 14:11:02 +02:00
Folkert de Vries
2ba0a6e489 move print_result_c into the trait 2025-09-07 14:11:02 +02:00
Folkert de Vries
916424f38d move more constants into SupportedArchitectureTest 2025-09-07 14:11:01 +02:00
Folkert de Vries
6ab097b245 move platform headers into SupportedArchitectureTest 2025-09-07 14:11:01 +02:00
Folkert de Vries
d70ef4f0a7 move compare_outputs implementation into SupportedArchitectureTest definition 2025-09-07 14:11:01 +02:00
Folkert de Vries
de01bd3c72 use IntoIterator for the add_flags methods 2025-08-05 12:42:03 +02:00
Madhav Madhusoodanan
e84116db8e chore: moved chunk_info to common and code cleanup 2025-08-05 13:27:36 +05:30
Madhav Madhusoodanan
76dce27325 feat: cleaned the IntrinsicType struct and associated functions.
Changes: 1. Removed `from_c` from the IntrinsicType definition. 2. Moved
the `from_c` arm-specific definition to an ArmIntrinsicType-specific
impl block
2025-08-05 13:21:47 +05:30
Madhav Madhusoodanan
3b216c3f6f feat: Added another variant of the Constraint enum 2025-08-03 15:33:46 +05:30
Madhav Madhusoodanan
c07f8bbdc2 chore: handling the case where --generate-only flag is passed 2025-07-27 18:00:41 +05:30
Madhav Madhusoodanan
90d97f617f feat: updated Argument<T> type for functional compatibility with other
architectures too
2025-07-27 11:40:00 +05:30
Folkert de Vries
3051039b94 generate arrays of type-erased function pointers 2025-07-19 02:11:15 +02:00
Folkert de Vries
83804bf2ce split rust code into crates
so that we get more parallelism out of cargo
2025-07-19 02:11:07 +02:00
Folkert de Vries
215d8edfed combine rust files into one compilation 2025-07-19 01:50:16 +02:00
Amanieu d'Antras
9b7d31c851 Merge pull request #1862 from folkertdev/combine-c-files
`intrinsic-test`: combine C files for faster compilation
2025-07-18 21:23:35 +00:00
Folkert de Vries
846c591bf6 intrinsic-test: combine C files for more efficient compilation 2025-07-18 13:24:11 +02:00
Folkert de Vries
a657eb29e2 Merge pull request #1878 from madhav-madhusoodanan/intrinsic-test-box-removing-and-more
`intrinsic-test`: Implemented DerefMut for ArmIntrinsicTest
2025-07-18 10:20:35 +00:00
Folkert de Vries
75887cf995 improve cpp compiler execution 2025-07-18 11:38:18 +02:00
Madhav Madhusoodanan
10d7b7b676 Implemented DerefMut for ArmIntrinsicTest
More details: 1. Moved the return type of IntrinsicType::from_c to
Rust<Self, String> from Result<Box<Self>, String>
2025-07-16 23:49:04 +05:30
Madhav Madhusoodanan
959d191a25 Modified Typekind to group the Signed and Unsigned version of types. 2025-07-16 17:12:12 +05:30
Folkert de Vries
a90e00172b run rust programs with the runner 2025-07-09 23:08:47 +02:00
Marijn Schouten
fddd05bd7f some clippy fixes 2025-07-07 23:28:47 +00:00
Tsukasa OI
a78d64e36b intrinsic-test: Reverse has_constraints() condition
It seems it returns true when *no* constraints are found, opposite to
the expected behavior of the function name.

This commit reverses condition as the name suggests.
2025-05-31 11:27:16 +00:00
Tsukasa OI
26ff29e7e2 intrinsic-test: Modernization of the coding style
It modernizes the coding style of the crate intrinsic-test by fixing
Clippy warnings.

Clippy: rust version 1.89.0-nightly (6f6971078 2025-05-28)
Number of Fixed Warnings: 36/36
2025-05-31 09:38:49 +00:00
Madhav Madhusoodanan
3e74af11f3 fix: code cleanup and renaming 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
d8469bea64 fix: moved common code (that required no architecture-specific
modifications) outside the IntrinsicDefinition trait
2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
54e277cdd5 fix: moved f16 formatting code to common module 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
57006ad521 Fix: removed BaseIntrinsicTypeDefinition + code cleanup
1. Removed default implementation of traits that are compulsorily
implemented
2. Replaced BaseIntrinsicTypeDefinition with Deref<Target =
IntrinsicType>
2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
6de5b7bef8 feat: merging changes related to f16 formatting 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
2a5e678a84 moved more code generation functionality to common 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
c01c6ceb87 fix: aarch64_be issues wthin compilation 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
9b4768921f feat: made constraint common 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
86f23a6c2a chore: file renaming 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
a416e3ea11 code cleanup 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
8d0141ee19 Added dynamic dispatch for easier management of <arch>ArchitectureTest structs 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
587d8cebda moved the C compilation commands into a struct for easier handling 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
445137ad13 Removed aarch64-be specific execution command for rust test files 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
add7b2e402 renamed a64_only data member in Intrinsic to arch_tags 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
f05ffd4a0b Added a macro to simplify <Arch>IntrinsicType definitions 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
57c357591e introduced generic types and code refactor 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
8e269afcfe maintaining special list of targets which need different execution command 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
e15d6fae92 fixed too many files open issue 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
c862432cfd chore: code consolidation 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
17277d71e8 chore: separated common logic within file creations, compile_c, compile_rust and compare_outputs 2025-05-27 23:27:38 +00:00
Madhav Madhusoodanan
8cb9183221 chore: Added ProcessedCli to extract the logic to pre-process CLI struct args 2025-05-27 23:27:38 +00:00
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