Skip to content

bitwuzla backend#3

Open
H4vC wants to merge 5 commits into
LLVMParty:masterfrom
H4vC:feat/bitwuzla-backend
Open

bitwuzla backend#3
H4vC wants to merge 5 commits into
LLVMParty:masterfrom
H4vC:feat/bitwuzla-backend

Conversation

@H4vC

@H4vC H4vC commented Jun 30, 2026

Copy link
Copy Markdown

adds bitwuzla as a racer to smt-server

Brit added 5 commits June 29, 2026 08:23
Translate the validated wire IR to Bitwuzla via hand-written FFI bindings (0.9.1). Implements solve, model extraction, named unsat cores, and bit-hunt optimization behind the optional `bitwuzla` cargo feature.
build.rs fetches an upstream prebuilt Bitwuzla static zip per target triple (Linux/macOS/Windows-gnu) and a self-contained MSVC archive from the bitwuzla-msvc fork; resolves GMP/MPFR via pkg-config (upstream) or ships them statically (MSVC).
Add dedicated backend tests and plug BitwuzlaBackend into the phase2 duplicate-symbol/model and phase6 bit-hunt-optimize parametrized test lists.
Update README and architecture docs; add a per-OS bitwuzla CI job that builds with --features bitwuzla.
Drop the `bitwuzla` cargo feature: the backend now builds unconditionally like Z3/Binbit/Qfbvsmtrs (no opt-out, no `--features bitwuzla`). CI keeps GMP/MPFR in the rust job; the standalone bitwuzla job stays removed. README/architecture no longer call out a default or an opt-out.
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.

1 participant