This project adheres to Semantic Versioning.
Please note the header WIP-DEV
is to always remain indicating the changes done on the dev branch.
Only when a release to the main branch is done, the contents of the WIP-DEV are put under a
versioned header while the WIP-DEV
is left empty
- Updating CONTRIBUTING.rst to capture the new git strategy adopted to follow a monthly release cadence.
- Add pluggy to install_requires and move pytest to tests_requirements.txt
- Added
pmpaddr0
topmpaddr15
registers for coverage of Physical Memory Protection - Minor fix to compressed immediate decoding and compressed register decoding
- Modified the regular expression to correctly match and return 'reg_commit' for registers x1 to x9.
- Changed compressed immediate decoding and added comments for readability
- Add support to decode compressed instructions
- Improve data propagation reports to capture multiple signature updates per coverpoint
- Add a CLI flag to explicitly log the redundant coverpoints while normalizing the CGF files
- Fix length of commitval to 32 bits if flen is 32 for f registers in sail parser.
- Refactored the instruction object class
- Added support for instruction aliases
- Add fields to instruction object
- Enable generic coverage evaluation mechanisms for floating point instructions
- Fix coverpoint generation to account for nan boxing of fp instructions.
- Add fields(frm, fcsr, nan_prefix) for fp instructions
- Error reporting for missing coverlabel in cgf file
- Fix mistune version for doc builds.
- Covergroup format revised.
- Added support for Pseudoinstructions for coverage computation.
- Parallelized coverage computation.
- Added feature to remove coverpoints when hit.
- Added CLI option to specify number of processes to be spawned.
- Added CLI option to turn on/off feature to remove hit coverpoints.
- Added plugins to use new rvopcode format
- Added CLI option to setup rvopcode plugin
- Added method to generate data patterns for bitmanip instructions
- Added vxsat to supported csr_regs
- Added comments to coverpoint functions for P-ext
- Removed unused tuple type for bit_width parameters in P-ext coverpoint functions
- Added support for instructions from B extension.
- Bug fix for bgeu instruction.
- Added support for P extension cover point generation and instruction decoding.
- Allowed an instruction to generate results in multiple registers.
- Added cross combination coverage support.
- Updated logger to enable logging for API calls.
- Added decoding support for K extension instructions based on latest spec
- Bug fix for error while using byte_count with overlap = Y.
- Adding support for floating point extension coverpoints
- Bug fixes for instruction decoder and improved pretty printing.
- fix for uninitialized total_categories variable in coverage.
- fixed CONTRIBUTING.rst file
- Bug fix for error while decoding instruction name
- Bug fix for error while generating Data Propagation Report.
- Added support for CSR coverage and its architectural state
- Updated the merge function to support multiprocessing
- Added a parameter '-p' ( number of processes ) in merge command
- Documentation update for CSR coverpoints
- Return value of parsers changed from 5 independent values (hexcode, addr, reg commmit, csr commit, mnemonics) to instruction object updated with these values
- Argument of decode and all decoding functions (in internaldecoder) changed from hexcode and addr to instruction object
- Documentation updates to reflect plugin usage.
- Minor bug fixes in coverage reporting.
- Improved CLI help messages.
- Added parser plugins for sail and spike
- Added decoder plugin
- Added arguments in main.py for custom plugin paths and names.
- Added initial support for F extension coverpoints based on IBM models.
- Added support for F extension architectural state
- Fixed author information and repo link in setup.py
- added support in parsers for K-scalar crypto instructions
- added support for abstract functions: uniform random, byte-count, leading-ones, leading-zeros, trailing-ones, trailing-zeros
- now maintain a separate list of instructions which require unsigned interpretation of rs1 and rs2.
- restructured coverage report handling to preserve comments throughout processing and merging.
- switched yaml to a round-trip parser for preserving comments
- Moved ci to github actions
- fixed links in docs
- Fixed operand signedness for m ext ops.
- added support to take multiple cgf files as input. The order matters
- added support for abstract function of special dataset
- added special data set for r-type instructions
- fixed data propagation report generation and templates
- using classes to manage architectural state and statistics
- updated docs
- use logger instead of log in coverage.py
- Adding support for Data propagation report generation
- Added 'sig-label' as the new cli option under coverage to capture DP reports
- Added support in sail parsers to extract mnemonics also from the trace file
- added pytablewriter as part of the requirements
- Added documentation for CGF and usage
- Added normalization routine as cli
- Added abstract functions
- using click for cli
- adding parsers for sail and spike
- added support for filtering based on labels
- added merge-reports cli command
- initial draft