Metehan Dundar
ebf76caa18
Apply selected improvements from 1ceac6e: enhanced RISC-V parser, ImmediateOperand enhancements, and rv6→rv64 file renames
...
- Enhanced ImmediateOperand with reloc_type and symbol attributes for better RISC-V support
- Updated RISC-V parser with relocation type support (%hi, %lo, %pcrel_hi, etc.)
- Renamed example files from rv6 to rv64 for consistency
- Updated related configuration and test files
- All 115 tests pass successfully
2025-07-11 18:15:51 +02:00
Metehan Dundar
61b52dbf28
RISC-V: Update parser to use x-register names, add vector and FP instructions, fix tests
...
- Modified RISC-V parser to use x-register names instead of ABI names
- Added new vector instructions (vsetvli, vle8.v, vse8.v, vfmacc.vv, vfmul.vf)
- Added floating point instructions (fmul.d)
- Added unconditional jump instruction (j)
- Updated tests to match new register naming convention
- Added new RISC-V example files
- Updated .gitignore to exclude test environment and old examples
2025-06-30 00:28:52 +02:00
Metehan Dundar
480c0dcac0
Merge branch 'master' into dev/risc-v
2025-05-08 12:23:22 +02:00
Metehan Dundar
aa3753d024
Add RISC-V vector add and triad benchmarks with corresponding Makefiles and assembly files
2025-05-08 11:57:06 +02:00
Metehan Dundar
d782f06e84
Add RISC-V support and update version to 0.6.2
2025-03-21 17:16:39 +01:00
JanLJL
31f5912af6
take +- operator of offset/index in mem-addr into account
2025-03-14 18:46:12 +01:00
pleroy
732dd95810
Rewrite the parsing of register expressions. GCC, for reasons unknown, put the displacement in the middle.
...
I am completely restructuring the parser definition so that they are more explicit. They are more verbose too, but at least I understand what they do.
2025-03-12 22:26:38 +01:00
JanLJL
ffb5f0eb55
Merge branch 'master' into merge-branch
2025-03-07 14:45:44 +01:00
JanLJL
bcecabd911
added support for <Xd>! registers and [<Xd>]! mem addresses in Arm
2025-03-07 11:49:14 +01:00
JanLJL
63f56e50b4
black formatting
2025-03-05 10:20:47 +01:00
JanLJL
fb7f1a289d
flake8 formatting
2025-03-05 10:19:10 +01:00
JanLJL
b6c3c924c6
remove dependency on MachineModel
2025-03-04 17:44:27 +01:00
JanLJL
1be2f320b9
add default syntax for get_parser for compatibility with kerncraft
2025-03-04 17:44:02 +01:00
JanLJL
379e422290
remove dependency on MachineModel
2025-03-04 17:42:52 +01:00
Metehan Dundar
7e546d970f
Parser for RISCV is implemented and tested with a
...
simple kernel.
Changes to be committed:
modified: osaca/parser/__init__.py
new file: osaca/parser/parser_RISCV.py
new file: tests/test_files/kernel_riscv.s
new file: tests/test_parser_RISCV.py
2025-03-04 00:44:38 +01:00
pleroy
b4d342266d
Add support for the Intel syntax supported by MSVC and ICC
2025-02-02 14:02:16 +01:00
JanLJL
602c0a9b71
fix #109
2024-10-01 12:00:47 +02:00
JanLJL
a63d23b13a
formatting
2024-08-19 15:50:37 +02:00
JanLJL
2fce0520d7
fixed bug in read-out of default store TP
2024-08-19 14:37:20 +02:00
Markus Büttner
14414fac01
Update parsing of memory segments
...
This addresses issue discussed in RRZE-HPC/OSACA#107 .
Now it can parse instructions of the form
%fs:var@RELOC
%fs:var@RELOC+4
%fs:var@RELOC(%rdi)
2024-07-30 16:02:16 +02:00
JanLJL
aeecac3b5f
Black formatting
2024-05-02 17:04:56 +02:00
JanLJL
a790ab7e79
Flake8 formatting
2024-05-02 17:00:12 +02:00
stefandesouza
ae2fcfe8bb
added prefetch operand
2024-03-18 22:29:39 +01:00
stefandesouza
e253638cb7
Black formatting
2024-03-05 12:14:05 +01:00
stefandesouza
4ec3788f58
Dump now converts classes to dicts
2024-03-05 00:18:45 +01:00
stefandesouza
62c21a7f31
Port pressure returned in tuple with Memory Operand
2024-03-04 20:00:43 +01:00
stefandesouza
d944c82d33
Immediate operand attribute name changes
2024-02-28 13:01:37 +01:00
stefandesouza
0474148d7b
Took out port pressure from Memory Operand. Gets() for LD/ST TP now use tupples
2024-02-24 21:03:15 +01:00
stefandesouza
6ce910e779
Took out name attribute from operand parent class
2024-02-24 15:46:04 +01:00
stefandesouza
d7768e5a8a
Removed comments from operands
2024-02-24 14:15:25 +01:00
stefandesouza
85677d1b0c
Flags into operand class
2024-02-24 12:11:52 +01:00
stefandesouza
d4eb7a9b72
Register attributes name change
2024-02-22 13:53:14 +01:00
stefandesouza
173f133241
Memory attributes name change
2024-02-22 13:51:48 +01:00
stefandesouza
bc7070cee2
Instruction form text change
2024-02-22 13:49:56 +01:00
stefandesouza
26918bad48
Made all attributes lower case
2024-02-22 13:48:56 +01:00
stefandesouza
9a7f38396f
Formatting before PR
2024-01-10 13:05:27 +01:00
stefandesouza
a2c67f1a61
Added shift and shift_op to Register Operand
2024-01-04 14:34:36 +01:00
stefandesouza
de6d8a1197
Small cleaup commit
2023-12-16 16:00:37 +01:00
stefandesouza
b8e88f9319
Merge remote-tracking branch 'origin/master' into InstrucForm
2023-12-16 12:14:36 +01:00
JanLJL
b7ff0b1461
bugfixes for SP reg and ccodes
2023-12-12 18:32:43 +01:00
stefandesouza
405a1d2857
Linters update
2023-12-10 18:25:00 +01:00
stefandesouza
47a44c9865
Workflow file includes new kenrcraft branch. Also changed checks for 'bad_operands' since they don't fit class style attributes
2023-12-10 17:26:43 +01:00
stefandesouza
1885ce6ddb
flake8 standards
2023-12-03 21:04:58 +01:00
stefandesouza
23d10d10cb
Black formatting
2023-12-03 17:22:11 +01:00
stefandesouza
62d575714a
Fixed semantic and marker tests. Now only dump needs to be adjusted
2023-12-03 16:49:33 +01:00
stefandesouza
37ca6670c7
pre/post-indexed to pre/post_indexed. Now have use ImmediateOperand type for mem offset. Changed some parser tests also
2023-12-02 16:56:43 +01:00
stefandesouza
78ca6fe855
Added condition operand, adjusted tests to parse it & a few changes to get the kernelDG tests working
2023-10-29 16:36:00 +01:00
stefandesouza
cce05e44cb
Changed style to conform to PEP-8 conventions; Added source and destination attributes to parent Operand class
2023-10-29 13:52:49 +01:00
stefandesouza
46fc8c1f29
added a couple of attributes
2023-10-23 21:57:01 +02:00
stefandesouza
fad1997b76
Included 'source' and 'destination' attributes when loading isa data
2023-10-16 15:48:47 +02:00