Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
- Change AES32* and SM4* instructions back to regular R-type encoding.
On branch scalar-crypto-v0.9.2
Changes to be committed:
modified: opcodes-rv32k
modified: opcodes-rv64k
modified: opcodes-rvk
modified: parse_opcodes
|
|
|
|
scalar-crypto: Add opcodes for RV32K, RV64K
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Co-authored-by: Megan Wachs <megan@sifive.com>
|
|
- Adds opcodes for RV32 and RV64 scalar crypto.
- opcodes-rvk contains encodings which are for RV32 and RV64 base ISAs
- opcodes-rv32/64k contains encodings which are for RV32 or RV64
- parse_opcodes has been modified:
- Wnable instructions to be listed as either RV32 or RV64 only, allowing
these opcodes to overlap.
- The C backend has been modifed to emit the "DECLARE_RV32_ONLY" or
"DECLARE_RV64_ONLY" macros as needed.
- The other backends have not been modified, and may need to be in the
future.
On branch scalar-crypto
Changes to be committed:
modified: Makefile
new file: opcodes-rv32k
new file: opcodes-rv64k
new file: opcodes-rvk
modified: parse_opcodes
|
|
Remove the 'ok' value since this is redundant - an invalid instruction can
already be identified by a nil return value.
Also, include the script flags in the 'DO NOT EDIT' header.
|
|
|
|
Adding these four CSRs to parse_opcodes:
- 0x7a4 tinfo
- 0x7a5 tcontrol
- 0x7a8 mcontext
- 0x7aa scontext
|
|
This part copy the implementation which has been merged in spike
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
about two parts
1. hypervisor related
2. missing high part for rv32
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
- Prevent got different result in different python env.
|
|
|
|
|
|
1. vleb is read-only CSR to keep vector implementation lenght in byte
2. mstatus.vs is similar to mstatus.fs and designed to keep vector extension
state
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
|
|
* (Partially) fix #30
With this change (and a renamed parse-opcodes) it's possible to as a
Python module without having to patch the repo. Example:
from parse_opcodes import parse_inputs
if __name__ == "__main__":
(namelist, pseudos, mask, match, arguments) = parse_inputs(["opcodes", "opcodes-rvc"])
* Fix #30: Rename parse-opcode to parse_opcode to enable module use
|