Skip to content
This repository has been archived by the owner on Nov 4, 2024. It is now read-only.

riscv_isac/InstructionObject.py uses an unmaintained and incomplete list of instructions #69

Open
cmuellner opened this issue Apr 6, 2023 · 1 comment

Comments

@cmuellner
Copy link

riscv_isac/InstructionObject.py defines the following lists:

  • unsgn_rs1...instructions that have an unsigned rs1 value
  • unsgn_rs2...instructions that have an unsigned rs2 value
  • f_instrs_pref...floating-point instructions (without postfixes)

The idea is that the API gets the instruction in the form of a string (e.g. fadd.s or xor), and the code makes decisions based on the instruction.

However, instead of having yet another unmaintained list of instructions that is out of date within a few weeks, the code should be rewritten to use proper (keyword) arguments. In this particular case the name of these parameters are already in the name of the lists above.

@pawks
Copy link
Collaborator

pawks commented Apr 9, 2023

Currently these functions are automatically called to assign the correct values to the respective variables(such as rs1 and rs2). Making the suggested changes definitely eases using the object as an API but the variables will still have to be set correctly inside ISAC. I think this can be set inside the decoder as the decoders will have to be updated to add support for any new extension.

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

No branches or pull requests

2 participants