-
-
Notifications
You must be signed in to change notification settings - Fork 276
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make ISA definitions compile-time defined. #315
Commits on Nov 9, 2023
-
Redefine instruction classes with templates
They have also been moved to the ISA library.
Configuration menu - View commit details
-
Copy full SHA for ad56fea - Browse repository at this point
Copy the full SHA ad56feaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4856a56 - Browse repository at this point
Copy the full SHA 4856a56View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0894a78 - Browse repository at this point
Copy the full SHA 0894a78View commit details -
Configuration menu - View commit details
-
Copy full SHA for fae4cd4 - Browse repository at this point
Copy the full SHA fae4cd4View commit details -
Configuration menu - View commit details
-
Copy full SHA for d0ca4d3 - Browse repository at this point
Copy the full SHA d0ca4d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 848b8f3 - Browse repository at this point
Copy the full SHA 848b8f3View commit details -
Turns out QtCreator was set to only format *.hpp headers instead of *.h :P
Configuration menu - View commit details
-
Copy full SHA for 7dd9e5a - Browse repository at this point
Copy the full SHA 7dd9e5aView commit details -
Configuration menu - View commit details
-
Copy full SHA for a461e8c - Browse repository at this point
Copy the full SHA a461e8cView commit details -
Configuration menu - View commit details
-
Copy full SHA for e5b3773 - Browse repository at this point
Copy the full SHA e5b3773View commit details -
Configuration menu - View commit details
-
Copy full SHA for 00ce3d9 - Browse repository at this point
Copy the full SHA 00ce3d9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9caddb8 - Browse repository at this point
Copy the full SHA 9caddb8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2f8accf - Browse repository at this point
Copy the full SHA 2f8accfView commit details -
Configuration menu - View commit details
-
Copy full SHA for d452439 - Browse repository at this point
Copy the full SHA d452439View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0d06b64 - Browse repository at this point
Copy the full SHA 0d06b64View commit details -
Configuration menu - View commit details
-
Copy full SHA for 48b1bc3 - Browse repository at this point
Copy the full SHA 48b1bc3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2645037 - Browse repository at this point
Copy the full SHA 2645037View commit details -
Configuration menu - View commit details
-
Copy full SHA for ce34a2f - Browse repository at this point
Copy the full SHA ce34a2fView commit details -
Finished initial templates for ISA/Assembler libraries
This commit finally gets everything to actually build! Though it does sigfault on startup when it fails to disassemble anything. Next up is actually implementing the assembler functions...
Configuration menu - View commit details
-
Copy full SHA for f257805 - Browse repository at this point
Copy the full SHA f257805View commit details -
Configuration menu - View commit details
-
Copy full SHA for 90a8adc - Browse repository at this point
Copy the full SHA 90a8adcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 48d76ab - Browse repository at this point
Copy the full SHA 48d76abView commit details -
Use base classes for BitRange and OpPart
Also change static methods to be capitalized in instruction.h
Configuration menu - View commit details
-
Copy full SHA for 304c810 - Browse repository at this point
Copy the full SHA 304c810View commit details -
Go back to virtual function-based ISAInfoBase implementation
I tried to get all the ISA info to be implemented in static functions so they can be called from anywhere, but it ended up not working well. When the ISA needs extensions to be defined at compile-time, then all the possible combinations of extensions would also need to be defined at compile-time. This proved to be too inconvenient, so the extensions are defined as a runtime vector instead.
Configuration menu - View commit details
-
Copy full SHA for 2703cdb - Browse repository at this point
Copy the full SHA 2703cdbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5898946 - Browse repository at this point
Copy the full SHA 5898946View commit details -
Fix instruction field assembly functions
They were using the wrong token index :) Also flipped an invalid boolean expression
Configuration menu - View commit details
-
Copy full SHA for bea443e - Browse repository at this point
Copy the full SHA bea443eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 981f132 - Browse repository at this point
Copy the full SHA 981f132View commit details -
Configuration menu - View commit details
-
Copy full SHA for cb4d3cb - Browse repository at this point
Copy the full SHA cb4d3cbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7d06ccb - Browse repository at this point
Copy the full SHA 7d06ccbView commit details -
Configuration menu - View commit details
-
Copy full SHA for fff7ea4 - Browse repository at this point
Copy the full SHA fff7ea4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2cd850d - Browse repository at this point
Copy the full SHA 2cd850dView commit details -
Configuration menu - View commit details
-
Copy full SHA for ce91fd9 - Browse repository at this point
Copy the full SHA ce91fd9View commit details -
Create template functions for easily enabling instructions
Also changed RISC-V ExtI from a struct to a namespace. Needed to link the assembler lib to the ISA lib to fix missing function definitions.
Configuration menu - View commit details
-
Copy full SHA for 23a694d - Browse repository at this point
Copy the full SHA 23a694dView commit details -
Configuration menu - View commit details
-
Copy full SHA for b14681a - Browse repository at this point
Copy the full SHA b14681aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1fdf117 - Browse repository at this point
Copy the full SHA 1fdf117View commit details -
Configuration menu - View commit details
-
Copy full SHA for 84d64d3 - Browse repository at this point
Copy the full SHA 84d64d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 71b834f - Browse repository at this point
Copy the full SHA 71b834fView commit details -
Add static assertion to ensure BitRanges do not overlap
Needs another assertion to ensure opcodes dont overlap with fields.
Configuration menu - View commit details
-
Copy full SHA for 7ac07c8 - Browse repository at this point
Copy the full SHA 7ac07c8View commit details -
Add static assertion for OpPart to ensure value fits in the bitrange
Also add option for 64-bit shift variants in instruction set
Configuration menu - View commit details
-
Copy full SHA for 08b4433 - Browse repository at this point
Copy the full SHA 08b4433View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8d85b19 - Browse repository at this point
Copy the full SHA 8d85b19View commit details -
Configuration menu - View commit details
-
Copy full SHA for fbc7231 - Browse repository at this point
Copy the full SHA fbc7231View commit details -
Add static assertion that instruction fields are valid
Ensures: * The fields are ordered from [0 - (N-1)] where N is the number of fields * The first field has index 0 * There are no skipped indices
Configuration menu - View commit details
-
Copy full SHA for 537d366 - Browse repository at this point
Copy the full SHA 537d366View commit details -
Configuration menu - View commit details
-
Copy full SHA for 59617f6 - Browse repository at this point
Copy the full SHA 59617f6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3e2d2d8 - Browse repository at this point
Copy the full SHA 3e2d2d8View commit details -
Add verification for all bitranges in an instruction
Ensures bitranges in the Fields don't overlap with bitranges in the Opcode.
Configuration menu - View commit details
-
Copy full SHA for 85bde3b - Browse repository at this point
Copy the full SHA 85bde3bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8c043d1 - Browse repository at this point
Copy the full SHA 8c043d1View commit details -
Add verifications for full instructions
Ensures all bits are utilized and that bitranges from the Fields don't overlap with bitranges from the Opcode.
Configuration menu - View commit details
-
Copy full SHA for d0feb25 - Browse repository at this point
Copy the full SHA d0feb25View commit details -
Configuration menu - View commit details
-
Copy full SHA for fcd1041 - Browse repository at this point
Copy the full SHA fcd1041View commit details -
Configuration menu - View commit details
-
Copy full SHA for 60d6dac - Browse repository at this point
Copy the full SHA 60d6dacView commit details -
Re-implement ECALL instruction
Had to fix some parts of the class structure so that FieldsImpl works when there are no fields.
Configuration menu - View commit details
-
Copy full SHA for bcaf917 - Browse repository at this point
Copy the full SHA bcaf917View commit details -
Configuration menu - View commit details
-
Copy full SHA for a1dbf81 - Browse repository at this point
Copy the full SHA a1dbf81View commit details -
Configuration menu - View commit details
-
Copy full SHA for 72745c7 - Browse repository at this point
Copy the full SHA 72745c7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7126569 - Browse repository at this point
Copy the full SHA 7126569View commit details -
Configuration menu - View commit details
-
Copy full SHA for 561df9a - Browse repository at this point
Copy the full SHA 561df9aView commit details -
Configuration menu - View commit details
-
Copy full SHA for ec0f495 - Browse repository at this point
Copy the full SHA ec0f495View commit details -
Configuration menu - View commit details
-
Copy full SHA for 50c11d7 - Browse repository at this point
Copy the full SHA 50c11d7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 09cf155 - Browse repository at this point
Copy the full SHA 09cf155View commit details -
Configuration menu - View commit details
-
Copy full SHA for dd7aa29 - Browse repository at this point
Copy the full SHA dd7aa29View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2806615 - Browse repository at this point
Copy the full SHA 2806615View commit details -
Start re-implementing compressed RISC-V instruction set
NOTE: This commit does not have instruction matching working for the re-implemented instructions. For some reason, the assembler will not match compressed instructions. I'm guessing it has something to do with the smaller instruction size.
Configuration menu - View commit details
-
Copy full SHA for 237f28b - Browse repository at this point
Copy the full SHA 237f28bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2beb402 - Browse repository at this point
Copy the full SHA 2beb402View commit details -
Configuration menu - View commit details
-
Copy full SHA for 317b2d8 - Browse repository at this point
Copy the full SHA 317b2d8View commit details -
Configuration menu - View commit details
-
Copy full SHA for c4c9602 - Browse repository at this point
Copy the full SHA c4c9602View commit details -
Refactor FieldSet to assign field indices automatically
FieldSet was renamed from FieldsImpl
Configuration menu - View commit details
-
Copy full SHA for 027cd3e - Browse repository at this point
Copy the full SHA 027cd3eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 76e30e7 - Browse repository at this point
Copy the full SHA 76e30e7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 628d37a - Browse repository at this point
Copy the full SHA 628d37aView commit details -
Configuration menu - View commit details
-
Copy full SHA for b7cef51 - Browse repository at this point
Copy the full SHA b7cef51View commit details -
Configuration menu - View commit details
-
Copy full SHA for 70649a7 - Browse repository at this point
Copy the full SHA 70649a7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8d4b481 - Browse repository at this point
Copy the full SHA 8d4b481View commit details -
Configuration menu - View commit details
-
Copy full SHA for 087d746 - Browse repository at this point
Copy the full SHA 087d746View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6c24600 - Browse repository at this point
Copy the full SHA 6c24600View commit details -
Configuration menu - View commit details
-
Copy full SHA for f471dfe - Browse repository at this point
Copy the full SHA f471dfeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6f20f3e - Browse repository at this point
Copy the full SHA 6f20f3eView commit details -
Configuration menu - View commit details
-
Copy full SHA for a89d1c7 - Browse repository at this point
Copy the full SHA a89d1c7View commit details -
Configuration menu - View commit details
-
Copy full SHA for a2560fb - Browse repository at this point
Copy the full SHA a2560fbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 63fae3c - Browse repository at this point
Copy the full SHA 63fae3cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0579253 - Browse repository at this point
Copy the full SHA 0579253View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4420b74 - Browse repository at this point
Copy the full SHA 4420b74View commit details -
Fix assertion accidentially firing under certain conditions
It would wrongly cause a crash when a compressed instruction was the last instruction of a program and it needed linkage to a symbol.
Configuration menu - View commit details
-
Copy full SHA for bb7ce4f - Browse repository at this point
Copy the full SHA bb7ce4fView commit details -
Configuration menu - View commit details
-
Copy full SHA for d51b688 - Browse repository at this point
Copy the full SHA d51b688View commit details -
Configuration menu - View commit details
-
Copy full SHA for aae625a - Browse repository at this point
Copy the full SHA aae625aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3d81e9d - Browse repository at this point
Copy the full SHA 3d81e9dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c722a6 - Browse repository at this point
Copy the full SHA 4c722a6View commit details -
Configuration menu - View commit details
-
Copy full SHA for c16cae4 - Browse repository at this point
Copy the full SHA c16cae4View commit details -
Configuration menu - View commit details
-
Copy full SHA for b88d25a - Browse repository at this point
Copy the full SHA b88d25aView commit details -
Configuration menu - View commit details
-
Copy full SHA for e6d5cbf - Browse repository at this point
Copy the full SHA e6d5cbfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 344f6c7 - Browse repository at this point
Copy the full SHA 344f6c7View commit details -
Configuration menu - View commit details
-
Copy full SHA for d0e021c - Browse repository at this point
Copy the full SHA d0e021cView commit details -
Configuration menu - View commit details
-
Copy full SHA for df2078d - Browse repository at this point
Copy the full SHA df2078dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 51797b4 - Browse repository at this point
Copy the full SHA 51797b4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 98e1955 - Browse repository at this point
Copy the full SHA 98e1955View commit details -
Configuration menu - View commit details
-
Copy full SHA for 02ecf67 - Browse repository at this point
Copy the full SHA 02ecf67View commit details -
Configuration menu - View commit details
-
Copy full SHA for c6891e0 - Browse repository at this point
Copy the full SHA c6891e0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 51eaa25 - Browse repository at this point
Copy the full SHA 51eaa25View commit details -
Configuration menu - View commit details
-
Copy full SHA for 710b251 - Browse repository at this point
Copy the full SHA 710b251View commit details -
Configuration menu - View commit details
-
Copy full SHA for ebecf3d - Browse repository at this point
Copy the full SHA ebecf3dView commit details -
Fix Field, FieldSet, Reg, and ImmBase
Fixed camelCase and removed unnecessary functions
Configuration menu - View commit details
-
Copy full SHA for 9b6871e - Browse repository at this point
Copy the full SHA 9b6871eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 09471cc - Browse repository at this point
Copy the full SHA 09471ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for 62bbcd4 - Browse repository at this point
Copy the full SHA 62bbcd4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6861a61 - Browse repository at this point
Copy the full SHA 6861a61View commit details -
Configuration menu - View commit details
-
Copy full SHA for a519c8f - Browse repository at this point
Copy the full SHA a519c8fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4ce455f - Browse repository at this point
Copy the full SHA 4ce455fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9394e6c - Browse repository at this point
Copy the full SHA 9394e6cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9bbc483 - Browse repository at this point
Copy the full SHA 9bbc483View commit details