Commit Graph
100 Commits
Author SHA1 Message Date
alex 6f08f4010c Silences build warning 2025-07-22 09:04:07 +02:00
alex 9fcbeb478b adds functionality for all Zvk Instructions 2025-07-01 20:36:46 +02:00
alex a768bde7f2 adds all arithmetic Zvk extensions 2025-06-30 10:53:48 +02:00
alex cd866fd74d cleans up agnostic behaviour for softvector 2025-06-30 09:04:46 +02:00
alex fe3ed49519 updates asmjit template, removes lots of comments from IR 2025-04-28 15:04:18 +02:00
alex 1afd77a942 changes aes box functions to extern linkage 2025-04-28 15:02:05 +02:00
alex cdf5038e59 corrects fp functions for llvm 2025-04-03 09:59:22 +02:00
alex 651897e1e4 corrects another oversight in tcc template wrt floating point 2025-04-03 09:19:02 +02:00
alex a1803c61c1 even more corrections to tcc template 2025-04-02 13:01:25 +02:00
alex bfa2182f8e corrects mistakes wrt tcc template 2025-04-02 12:20:42 +02:00
alex b01c9b27e5 corrects tcc template when using floating point 2025-04-02 12:18:45 +02:00
alex 07f394d5ff corrects tcc template when using floating point 2025-04-02 11:53:55 +02:00
alex 7e97329e78 adds UserProvidedFunctions for NaNBoxing, updates generated files, adapts to new fp API 2025-04-02 10:19:11 +02:00
alex 8f5d666b7d corrects mistake from rebasing, adds newly generated templates 2025-03-31 12:50:05 +02:00
alex cc123939ce configures logger in main 2025-03-31 10:19:16 +02:00
alex a2e5405e25 small changes regarding vector template 2025-03-31 10:19:16 +02:00
alex cd3ec0b79d removes conversion functions in favor of more explicit conversions 2025-03-31 10:19:16 +02:00
alex 0e35a2a8c9 adds complete Zfh support, small rework regarding floating point interface 2025-03-31 10:19:16 +02:00
alex 8220c00a3d small correction for floating point h 2025-03-31 10:19:16 +02:00
alex ec5fb1e87e increases verbosity for file loading errors 2025-03-31 10:19:16 +02:00
alex 453407568c removes carry_t, moves functionality to own functions 2025-03-31 10:19:16 +02:00
alex 0fe9e6ebc8 corrects error for narrowing fp dispatch 2025-03-31 10:19:16 +02:00
alex 484d9dbe08 removes rounding mode lookup as it is not needes 2025-03-31 10:19:15 +02:00
alex 7a7035f267 adds support for half precision float 2025-03-31 10:19:15 +02:00
alex d9f1e5d31b small refactor 2025-03-31 10:19:15 +02:00
alex 7b35f45a48 changes to make correct oversighst for XLEN=64 in Vector functions 2025-03-31 10:19:15 +02:00
alex ece6f7290f small bugfixes, adds some half point functionality 2025-03-31 10:19:15 +02:00
alex 2166a6d81e makes widenning function types more explicit 2025-03-31 10:19:15 +02:00
alex fe9f2a5455 corrects vectorslide, changes all loop index type 2025-03-31 10:19:15 +02:00
alex 42bf6ee380 corrects errors w.r.t. floating point dispatch 2025-03-31 10:19:15 +02:00
alex f0b582df6c corrects ambiguity in frsqrt 2025-03-31 10:19:15 +02:00
alex 6fcb3dbb66 adds missing floating point instructions 2025-03-31 10:19:15 +02:00
alex c01eb39a76 reworks merge instrs, adds fp comparisons 2025-03-31 10:19:15 +02:00
alex 08280a094f allows assigning to mask_view elements 2025-03-31 10:19:15 +02:00
alex ae90adc854 adds most fp functions 2025-03-31 10:19:15 +02:00
alex cd358198ad expands floating point functions 2025-03-31 10:19:14 +02:00
alex 8746003d3e adds floating point reduction instrs, widening are untested 2025-03-31 10:19:14 +02:00
alex 60d2b45a81 adds floating point Permutation Instructions 2025-03-31 10:19:14 +02:00
alex 0264c5d66f small cleanup 2025-03-31 10:19:14 +02:00
alex 528c2536af removes unused declarations 2025-03-31 10:19:14 +02:00
alex 19e38ec898 corrects bug 2025-03-31 10:19:14 +02:00
alex fd11ce18c4 changes order of arguments to reflect assembly 2025-03-31 10:19:14 +02:00
alex 9b7a9fa273 updates indexed load to use vreg_views 2025-03-31 10:19:14 +02:00
alex e24c1874c4 Changes load_store to use vreg_views aswell 2025-03-31 10:19:14 +02:00
alex 221d2ee38c adds whole register moves 2025-03-31 10:19:14 +02:00
alex 877cad27ba adds gather instructions 2025-03-31 10:19:14 +02:00
alex a26505cb5c adds more functions, up to slide 2025-03-31 10:19:13 +02:00
alex c1277b6528 adds mask_mask logical instructions 2025-03-31 10:19:13 +02:00
alex 63889b02e7 adds widening reductions 2025-03-31 10:19:13 +02:00
alex f049d8cbb3 adds Integer Reduction Instructions 2025-03-31 10:19:13 +02:00
alex 28ac169cfe adds narrowing fixed point instructions 2025-03-31 10:19:13 +02:00
alex a6f24db83a adds vssrl and vssra 2025-03-31 10:19:13 +02:00
alex e1911bc450 adds vsmul, widens functions parameters for sat_vector operations 2025-03-31 10:19:13 +02:00
alex 75d96bf18d small cleanup, adds first fixed point instrs 2025-03-31 10:19:13 +02:00
alex e59458aa0e adds the missing vector csrs to the architectural state 2025-03-31 10:18:51 +02:00
alex 77807fec01 adds merge and move instructions 2025-03-31 10:18:10 +02:00
alex 6852d1d299 adds Vector Widening Integer Multiply-Add Instructions 2025-03-31 10:18:10 +02:00
alex ac1322d66b changes to ternary functions for Multiply-Add Instructions 2025-03-31 10:18:10 +02:00
alex 9ba9d2432c adds Vector Widening Integer Multiply Instructions 2025-03-31 10:18:10 +02:00
alex c9b7962cd3 adds Vector Integer Divide Instructions 2025-03-31 10:18:10 +02:00
alex ab31fd27c9 adds single width integer instructins, also small cleanup 2025-03-31 10:18:10 +02:00
alex b3f189145f adds funct3 to vector functions 2025-03-31 10:18:10 +02:00
alex dd4416ab15 adds min/max instructions 2025-03-31 10:18:10 +02:00
alex 0027946f90 renames mask operations to distinguish from vector integer compare instructions 2025-03-31 10:18:09 +02:00
alex feaff8c4a5 adds support for narrowing shifts 2025-03-31 10:18:09 +02:00
alex af3e76cc98 adds integer extension and add/substract with carry vector instructions 2025-03-31 10:18:09 +02:00
alex b1ceac2c2a small correction for vector_functions 2025-03-31 10:18:09 +02:00
alex b5862039e7 changes order of operands to more closely resemble assembly 2025-03-31 10:18:09 +02:00
alex 51f3802394 adds vector_imm instructions to vector_functions, makes size of all involved registers a template parameter 2025-03-31 10:18:09 +02:00
alex 6ce0d97e81 general improvements to vector_functions, adds functions to process arithmetic instructions (working add) 2025-03-31 10:18:09 +02:00
alex 69c8fda5d2 corrects oversight in vector_functions 2025-03-31 10:18:09 +02:00
alex c1f9328528 corrects vector_functions 2025-03-31 10:18:09 +02:00
alex 2b85748279 adds load_store_index to vector_functions 2025-03-31 10:18:09 +02:00
alex f7aa51b12e adds small optimization, clarifies variables in vector_functions 2025-03-31 10:18:09 +02:00
alex 3428745a00 small corrections in vector functions 2025-03-31 10:18:09 +02:00
alex 512b79a3e7 makes elem_count an explicit parameter for the softvector functions rather than calculating it from vtype 2025-03-31 10:18:08 +02:00
alex 7a048f8b93 changes wording of returned index to better reflect what it means, cleans up a bit 2025-03-31 10:18:08 +02:00
alex 6f4daf91ed adds explicit RFS to assertions 2025-03-31 10:18:08 +02:00
alex 947d353bbf adds working vector (unit) stride (segmented) loads and stores 2025-03-31 10:18:08 +02:00
alex b95f518c91 updates templates for interp to make extension specific includes conditonal 2025-03-31 10:18:08 +02:00
alex 4cef0f57c1 updates templates and adds newly generated files 2025-03-31 10:18:05 +02:00
alex 28af695592 adds vector support to m and mu priv wrapper 2025-03-31 10:16:01 +02:00
alex f6cdd9d07c adds vector csr to riscv_common 2025-03-31 09:54:26 +02:00
alex 9e390971d4 corrects include guard comment for fp_functions 2025-03-31 09:54:26 +02:00
alex 2bb2e56310 adds dependencies for K ISA (Cryptography) 2025-03-31 09:54:26 +02:00
alex a0eeae7dd6 corrects template for new arch_if changes 2025-03-30 19:12:22 +02:00
alex d443c89c87 removes llvm from dbt-rise-tgc build system as it is handled in dbt-rise-core 2024-12-28 13:10:49 +01:00
alex 9a2df32d57 updates templates 2024-12-28 13:07:07 +01:00
alex be0f783af8 adds cycle increment to tcc 2024-12-28 13:06:46 +01:00
alex 1089800682 updates vm_impls and core.h to work with new vm_base 2024-12-28 08:24:09 +01:00
alex 21e1f791ad corrects sysc integration template and corresponding file 2024-12-06 09:49:02 +01:00
alex be6f5791fa adds update to cyclecount after each instr for asmjit 2024-11-26 20:26:18 +01:00
alex d907dc7f54 corrects tohost functionality and minor cleanup 2024-11-22 17:35:12 +01:00
alex 75e81ce236 copies new tohost implemenation from hart_m_p 2024-11-14 16:51:26 +01:00
alex 82a70efdb8 small reorder to make tohost output more readable 2024-11-14 16:51:26 +01:00
alex 978c3db06e minor improvements to readability 2024-11-14 16:51:26 +01:00
alex 0e88664ff7 adds better tohost writing implementation, allowing the standard riscv-isa-test benchmarks to run 2024-11-14 16:51:26 +01:00
alex ac818f304d increases verbosity incase elf loading goes wrong 2024-10-21 16:42:58 +02:00
alex ad60449073 updates generated cores 2024-09-27 20:04:58 +02:00
alex b45b3589fa updates templates to immediately trap when gen_trap is called 2024-09-27 20:03:51 +02:00