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

Pseudo-instructions labeled as instructions #367

Open
AFOliveira opened this issue Dec 19, 2024 · 3 comments
Open

Pseudo-instructions labeled as instructions #367

AFOliveira opened this issue Dec 19, 2024 · 3 comments
Assignees
Labels
data error An error in the database data

Comments

@AFOliveira
Copy link
Collaborator

AFOliveira commented Dec 19, 2024

Describe the bug
Some pseudo-instructions are labeled as instructions.
I believe most of the following follow that pattern

DEBUG: Instruction 'lpad' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'rev8' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'zext.h' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'zip' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'unzip' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'sspopchk.x1' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'sspush.x5' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'sspush.x1' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'sspopchk.x5' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'gorci' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'xperm16' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'shfli' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'unshfli' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'xperm32' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'grevi' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'mop.rr.n' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'mop.r.n' (from YAML) not found in JSON, skipping...
DEBUG: Instruction 'amocas.d' (from YAML) not found in JSON, skipping...

@AFOliveira AFOliveira added the bug Something isn't working label Dec 19, 2024
@AFOliveira AFOliveira self-assigned this Dec 19, 2024
@AFOliveira
Copy link
Collaborator Author

@dhower-qc For now, can I just switch

kind: instruction
to
kind: pseudoinstruction

and modify the schema to allow it, or should I have something else in mind?

@dhower-qc
Copy link
Collaborator

Most (all?) of those FP instructions are real (e.g., fclass.q, fdiv.q, ...).

The quadword integer insts (c.lq, ...) would be real if RV128 was ratified, but it isn't (and it's not -- or at least shouldn't be -- included in UDB).

The bitmanip instructions (rev8, etc) are also real. I notice that it seems to be picking up the bitmanip instructions that are either only defined in RV32/64 or have different encodings in RV32/64.

The CFI instructions (lpad, ss*) are pseudoinstructions (of the "new operation" type).

@AFOliveira
Copy link
Collaborator Author

My bad, I didn't verify the full list and assumed that since the first ones were wrongly formatted - lpad, rev8, zext.h, zip, unzip- I assumed it was the same error for all, which is clearly not true. However, does my solution hold up?

@AFOliveira AFOliveira added data error An error in the database data and removed bug Something isn't working labels Dec 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
data error An error in the database data
Projects
None yet
Development

No branches or pull requests

2 participants