{"adoption": {"forks": 189, "observed_at": "2026-08-28T04:06:43.284583+00:00", "stars": 2389}, "canonical_url": "https://ross.abutalabs.com/products/souper", "card": {"archived": true, "artifact_type": "cli-tool", "description": "A superoptimizer for LLVM IR", "domain": ["compilers", "developer-tools", "performance"], "enriched": true, "function": ["compiler", "developer-tools", "testing"], "health_score": 10, "homepage": null, "language": "C++", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["google/souper"], "name": "google/souper", "platform": ["cpp"], "pushed_at": "2024-08-28T04:33:42+00:00", "repo": "google/souper", "stars": 2389, "tags": ["superoptimizer", "llvm-ir", "smt-solver", "peephole-optimization", "program-synthesis", "z3", "linux", "macos", "llvm"], "topics": [], "urls": [], "use_cases": ["find missed peephole optimizations in LLVM IR", "superoptimize compiled bitcode to shorter instruction sequences", "automatically apply synthesized optimizations via an LLVM opt pass", "test and improve LLVM's optimizer by discovering refinement opportunities", "verify instruction-level equivalence of code using an SMT solver"], "what_it_is": "Souper is a superoptimizer for LLVM IR that uses SMT solvers (like Z3) to synthesize shorter, equivalent instruction sequences. It identifies missing peephole optimizations in LLVM's midend optimizers and can either report them or apply them via an LLVM opt pass.", "when_to_avoid": ["you need fast, general-purpose compilation — superoptimization is computationally expensive", "you work with languages or IRs other than LLVM IR", "you need a turnkey optimizer without building LLVM dependencies yourself"], "when_to_choose": ["you are developing or testing LLVM's optimizer and want to find missing peephole optimizations", "you need minimal instruction sequences for hot code paths and can tolerate slow synthesis", "you want to use SMT-based program synthesis on LLVM bitcode"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/souper", "repo": "google/souper", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:34:31.784703+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f10ee4189bdf541f196436c3b32550f8441111141f28b7868f94e2118330293c", "fetched_at": "2026-08-28T04:06:43.284583+00:00", "kind": "readme", "missing": false, "url": "https://github.com/google/souper"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:34:31.784703+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f10ee4189bdf541f196436c3b32550f8441111141f28b7868f94e2118330293c", "fetched_at": "2026-08-28T04:06:43.284583+00:00", "kind": "readme", "missing": false, "url": "https://github.com/google/souper"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:34:31.784703+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f10ee4189bdf541f196436c3b32550f8441111141f28b7868f94e2118330293c", "fetched_at": "2026-08-28T04:06:43.284583+00:00", "kind": "readme", "missing": false, "url": "https://github.com/google/souper"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:34:31.784703+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f10ee4189bdf541f196436c3b32550f8441111141f28b7868f94e2118330293c", "fetched_at": "2026-08-28T04:06:43.284583+00:00", "kind": "readme", "missing": false, "url": "https://github.com/google/souper"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:34:31.784703+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f10ee4189bdf541f196436c3b32550f8441111141f28b7868f94e2118330293c", "fetched_at": "2026-08-28T04:06:43.284583+00:00", "kind": "readme", "missing": false, "url": "https://github.com/google/souper"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:34:31.784703+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f10ee4189bdf541f196436c3b32550f8441111141f28b7868f94e2118330293c", "fetched_at": "2026-08-28T04:06:43.284583+00:00", "kind": "readme", "missing": false, "url": "https://github.com/google/souper"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.284583+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:34:31.784703+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f10ee4189bdf541f196436c3b32550f8441111141f28b7868f94e2118330293c", "fetched_at": "2026-08-28T04:06:43.284583+00:00", "kind": "readme", "missing": false, "url": "https://github.com/google/souper"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:34:31.784703+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f10ee4189bdf541f196436c3b32550f8441111141f28b7868f94e2118330293c", "fetched_at": "2026-08-28T04:06:43.284583+00:00", "kind": "readme", "missing": false, "url": "https://github.com/google/souper"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:34:31.784703+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f10ee4189bdf541f196436c3b32550f8441111141f28b7868f94e2118330293c", "fetched_at": "2026-08-28T04:06:43.284583+00:00", "kind": "readme", "missing": false, "url": "https://github.com/google/souper"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:34:31.784703+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f10ee4189bdf541f196436c3b32550f8441111141f28b7868f94e2118330293c", "fetched_at": "2026-08-28T04:06:43.284583+00:00", "kind": "readme", "missing": false, "url": "https://github.com/google/souper"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4534, "days_push": 735, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}