Màrius Montón
6001fd902f
add const to some functions
2022-09-30 15:42:16 +02:00
Màrius Montón
76a9cd2d31
JALR and JAL doesn't check for 4-byte boundaries when C extension is supported.
2022-09-19 14:44:44 +02:00
Màrius Montón
6b21b1bfee
Remove #include from headers and move to cpp file.
2022-09-19 14:43:44 +02:00
Màrius Montón
ab2d5139c2
Add full RV64 simulation. It passes almost all tests.
2022-09-15 12:48:22 +02:00
Màrius Montón
2615ccc8f8
Some specializations, removed lot of useless casts.
2022-07-22 13:28:36 +02:00
Màrius Montón
acf38332d5
cast to u32
2022-07-08 12:02:30 +02:00
Màrius Montón
10ed1fa653
Changed to template classe to prepare for 64bits version
2022-02-20 11:23:58 +01:00
Màrius Montón
d1fa3c752e
Register class changed to templated to prepare for rv64 code
2022-02-06 11:41:37 +01:00
mariusmonton
fb84f197bf
Added namespace to project
2021-11-29 20:35:26 +01:00
Màrius Montón
724cf258ce
merge with log branch. New log mechanism
2021-11-25 13:01:23 +01:00
Màrius Montón
e6bf4e30a4
Use spdlog library as logger.
2021-11-25 12:11:18 +01:00
Màrius Montón
f7c9f47c3f
changed pointer by reference
2021-11-16 10:25:47 +01:00
Màrius Montón
a42877ab95
change types from uintX_t to std::uintX_t
2021-11-11 17:10:23 +01:00
Màrius Montón
24c593e715
JALR cannot be const because calls RaiseException
2021-11-08 09:21:19 +01:00
Màrius Montón
1777a3bc9a
code clean-up (using clang-tidy)
2021-04-26 00:20:29 +02:00
mariusmonton
49103e5591
Prepare for debug
2021-02-21 13:49:05 +01:00
mariusmonton
6286c640d9
Remove unused methods
2021-02-02 19:52:39 +01:00
Màrius Montón
03c95d2de3
removed duplicate code
2021-02-01 12:24:25 +01:00
Màrius Montón
22b7ec4c03
remove duplicated methods
2021-02-01 11:49:38 +01:00
Màrius Montón
cc9045341d
override keyword to virtual methods
2021-02-01 11:25:04 +01:00
mariusmonton
286dbf07a6
added const keyword to const methods
2021-01-17 15:40:47 +01:00
mariusmonton
f7dbf106cc
trivial changes to increase performance
2021-01-15 09:09:52 +01:00
Màrius Montón
5ee634e4b4
Major refactoring!
...
* A_Instruction, C_Instruction and M_Instruction renamed to *_extension
* These files decode and executes extensions
* These classes use a new base clase extension_base
* Execute & Instruction classes heavyly modified:
* Execute now is BASE_ISA and decodes and executes base ISA, Zicsr & Zifencei
* Instruction keeps the instruction being executed, nothing else
* Add memory interface to ISS to clear the code and the structure
* Removed "using namespace " directives, all classes are called using their namespace
* Added proper header to each file
* Added license to all files
2020-06-02 13:08:38 +02:00