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

Add V extension missing isntructions #316

Merged
merged 1 commit into from
Dec 2, 2024
Merged

Conversation

AFOliveira
Copy link
Collaborator

Solves #314

@dhower-qc dhower-qc linked an issue Dec 2, 2024 that may be closed by this pull request
@dhower-qc dhower-qc merged commit 084ae98 into main Dec 2, 2024
5 checks passed
@dhower-qc dhower-qc deleted the AFOliveira/fixVInstructions branch December 2, 2024 14:22
@AFOliveira
Copy link
Collaborator Author

@BrianAnakPintar Have you checked if I managed to cover all instructions?

@BrianAnakPintar
Copy link
Contributor

Yup I just ran it, seems like in terms of V instructions it works perfectly.

The main issues now are just the extensions and variable fields. I think I might have an idea how to tackle these so I'll try to resolve these first.

There is also however another batch of missing instruction here are all of them that I found when using the latest riscv-opcodes:

    "cm_jalt": {
        "encoding": "----------------101000--------10",
        "variable_fields": [
            "c_index"
        ],
        "extension": [
            "rv_zcmt"
        ],
        "match": "0xa002",
        "mask": "0xfc03"
    },
    "cm_mva01s": {
        "encoding": "----------------101011---11---10",
        "variable_fields": [
            "c_sreg1",
            "c_sreg2"
        ],
        "extension": [
            "rv_zcmp"
        ],
        "match": "0xac62",
        "mask": "0xfc63"
    },
    "cm_mvsa01": {
        "encoding": "----------------101011---01---10",
        "variable_fields": [
            "c_sreg1",
            "c_sreg2"
        ],
        "extension": [
            "rv_zcmp"
        ],
        "match": "0xac22",
        "mask": "0xfc63"
    },
    "cm_pop": {
        "encoding": "----------------10111010------10",
        "variable_fields": [
            "c_rlist",
            "c_spimm"
        ],
        "extension": [
            "rv_zcmp"
        ],
        "match": "0xba02",
        "mask": "0xff03"
    },
    "cm_popret": {
        "encoding": "----------------10111110------10",
        "variable_fields": [
            "c_rlist",
            "c_spimm"
        ],
        "extension": [
            "rv_zcmp"
        ],
        "match": "0xbe02",
        "mask": "0xff03"
    },
    "cm_popretz": {
        "encoding": "----------------10111100------10",
        "variable_fields": [
            "c_rlist",
            "c_spimm"
        ],
        "extension": [
            "rv_zcmp"
        ],
        "match": "0xbc02",
        "mask": "0xff03"
    },
    "cm_push": {
        "encoding": "----------------10111000------10",
        "variable_fields": [
            "c_rlist",
            "c_spimm"
        ],
        "extension": [
            "rv_zcmp"
        ],
        "match": "0xb802",
        "mask": "0xff03"
    },

@dhower-qc
Copy link
Collaborator

@ayosher, are you working on these Zc instructions?

@ayosher
Copy link
Collaborator

ayosher commented Dec 12, 2024

Zcmp and Zcmt are in my todo list. Not added yet, will take some time (pretty busy these days)

@AFOliveira
Copy link
Collaborator Author

@BrianAnakPintar BTW if you need any help in this

The main issues now are just the extensions and variable fields. I think I might have an idea how to tackle these so I'll try to resolve these first.

LMK directly or open a issue here in the UDB, your feedback might be really important in terms of us figuring out the exact format of instructions

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

Successfully merging this pull request may close these issues.

Vector Load/Store Segment Instruction mnemonics are missing
4 participants