Skip to content

Conversation

@Clo91eaf
Copy link
Collaborator

@Clo91eaf Clo91eaf commented Nov 2, 2025

modified and refactored from #42

@Clo91eaf Clo91eaf requested a review from Copilot November 2, 2025 12:05
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds comprehensive SMT-based constraint solving and test generation infrastructure for RISC-V instruction verification. The changes include:

  • SMT parser enhancements for negative integers and model representation changes
  • New SMT operators (smtAnd, smtOr) and API improvements (variadic parameters)
  • Auto-generated constraint definitions for RISC-V instructions and extensions
  • Test infrastructure with MLIR and SMTLIB output verification
  • Sample application for RV32I instruction generation

Reviewed Changes

Copilot reviewed 17 out of 19 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
smtlib/src/SMTParser.scala Adds negative integer parsing and changes model from Seq to Map
smtlib/src/Api.scala Adds smtAnd, smtOr operators and changes parameters to variadic
smtlib/src/DefaultOperators.scala Implements new operators and adds smtValue overload with explicit naming
smtlib/tests/src/ParseSpec.scala Updates tests to use Map instead of Seq for Z3Result model
smtlib/tests/src/CoreSpec.scala Adds comprehensive tests for smtAnd and smtOr operators
rvprobe/src/constraints/RVConstraints.scala Auto-generated constraint definitions (1440 lines)
rvprobe/src/RVDecoderdbApi.scala Helper functions for instruction and extension retrieval
rvprobe/src/scripts/*.scala Code generators for constraints from instruction databases
rvprobe/tests/src/*.scala Test infrastructure and comprehensive recipe tests
rvprobe/src/apps/RV32I.scala Sample application demonstrating instruction generation
flake.nix Increases JVM stack size for compilation

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Clo91eaf Clo91eaf force-pushed the rvprobe branch 2 times, most recently from 468618c to c109062 Compare November 2, 2025 12:19
@Clo91eaf Clo91eaf force-pushed the rvprobe branch 2 times, most recently from 3bf4cc9 to d547ff9 Compare December 9, 2025 10:52
@Clo91eaf Clo91eaf force-pushed the rvprobe branch 2 times, most recently from 2e9c590 to fcea232 Compare December 11, 2025 05:48
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.

2 participants