Skip to content
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

Reduce inter-class dependancies throughout SimEng project #348

Open
FinnWilkinson opened this issue Nov 10, 2023 · 0 comments
Open

Reduce inter-class dependancies throughout SimEng project #348

FinnWilkinson opened this issue Nov 10, 2023 · 0 comments
Labels
code consistency Cleaning up existing code to align with rest of project enhancement New feature or request

Comments

@FinnWilkinson
Copy link
Contributor

FinnWilkinson commented Nov 10, 2023

Many of the #include's used throughout the project are creating dependancies between classes which are not accurately representative of the relationship between classes. That it, many of these includes are being added for simple structs contained in the header of a class, rather than for using the class itself.

The whole project needs combing through to eliminate these un-necessary dependancies, with structs etc. being moved into their own header file (or grouping related structs etc. into larger header files) if they are used by multiple classes.

Additionally, InstructionMetadata.hh should be moved from src to include, and each class should have its own .hh file (i.e. the ExceptionHandler base class is defined in Architecture.hh`). This will facilitate the addition of unit tests for the Instruction classes (i.e. one test file per ISA).

@FinnWilkinson FinnWilkinson added the code consistency Cleaning up existing code to align with rest of project label Nov 10, 2023
@rahahahat rahahahat added the enhancement New feature or request label Nov 29, 2023
@FinnWilkinson FinnWilkinson added the 0.9.6 Part of SimEng Release 0.9.6 label Dec 14, 2023
@FinnWilkinson FinnWilkinson removed the 0.9.6 Part of SimEng Release 0.9.6 label Dec 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
code consistency Cleaning up existing code to align with rest of project enhancement New feature or request
Projects
Status: ToDo
Development

No branches or pull requests

3 participants