x86-sat
Basic SAT model of x86 instructions using Z3, autogenerated from Intel docs (by zwegner)
sprdpl
Simple Python Recursive-Descent Parsing Library (by zwegner)
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
x86-sat
Posts with mentions or reviews of x86-sat.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-05-29.
-
My First Superoptimizer
Better than brute force is using a model of your instruction set (x86 start here [1]), then using something like Z3 [] to find solutions. Here's a paper doing the same [2]. With these approaches you can get vastly bigger pieces of code generated than brute force, and with significantly less hand heuristic tuning effort (which likely still loses out to current solvers).
[1] https://github.com/zwegner/x86-sat
[2] https://people.cs.umass.edu/~aabhinav/Publications/Unbounded...
- Basic SAT model of x86 instructions using Z3, autogenerated from Intel docs
sprdpl
Posts with mentions or reviews of sprdpl.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-05-15.
-
Basic SAT model of x86 instructions using Z3, autogenerated from Intel docs
This is unlicensed, as best I can tell, as is the parsing submodule (https://github.com/zwegner/sprdpl)
What are some alternatives?
When comparing x86-sat and sprdpl you can also consider the following projects:
seL4 - The seL4 microkernel
alive2 - Automatic verification of LLVM optimizations
coq - Coq is a formal proof management system. It provides a formal language to write mathematical definitions, executable algorithms and theorems together with an environment for semi-interactive development of machine-checked proofs.