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

gdbstub direct reference to R5MemoryAccessException #13

Open
feherneoh opened this issue Aug 31, 2022 · 3 comments
Open

gdbstub direct reference to R5MemoryAccessException #13

feherneoh opened this issue Aug 31, 2022 · 3 comments

Comments

@feherneoh
Copy link

Contents of the li.cil.sedna.riscv package are referenced from the following closely related part of the project:

  • Package li.cil.sedna.riscv
  • Test package li.cil.sedna.riscv
  • Class li.cil.sedna.Sedna
  • Class li.cil.sedna.serialization.serializers.R5CPUSerializer

Other than these, li.cil.sedna.riscv.exception.R5MemoryAccessException is also referenced by:

  • Class li.cil.sedna.gdbstub.GDBStub
  • Class li.cil.sedna.gdbstub.CPUDebugInterface

As far as I can tell adding an CPU-independent parent exception to use in these classes and making R5MemoryAccessException extend that would make li.cil.sedna.gdbstub reusable for other /CPUs/architectures.

@SamuelWAnderson45
Copy link
Contributor

Interesting. Is it expected that Sedna might support other architectures someday or this just a hypothetical? Just curious

@fnuecke
Copy link
Owner

fnuecke commented Oct 2, 2022

Thanks for pointing this out! Yeah, theoretically Sedna should be able to support this, at least it's something I tried to keep in mind when making API/interface split decisions. It's likely to fall apart in other places, too, when actually trying to add a new arch, but it also leads to cleaner cuts, I find. I'll have a look at this after #14 merged.

@feherneoh
Copy link
Author

I haven't finished implementing my core yet, but the other parts of the code seemed fine for now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants