{"id":15397974,"url":"https://github.com/nunoplopes/llvm-aa-verif","last_synced_at":"2025-04-16T01:09:21.470Z","repository":{"id":183546563,"uuid":"144136063","full_name":"nunoplopes/llvm-aa-verif","owner":"nunoplopes","description":"Verification of LLVM's alias analysis proof rules","archived":false,"fork":false,"pushed_at":"2018-08-09T10:31:58.000Z","size":5,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-16T01:08:50.937Z","etag":null,"topics":["alias-analysis","llvm","verification"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nunoplopes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-09T10:13:39.000Z","updated_at":"2023-06-20T09:44:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"60b69212-e4ec-43f5-8744-9fadf0d1e696","html_url":"https://github.com/nunoplopes/llvm-aa-verif","commit_stats":{"total_commits":2,"total_committers":1,"mean_commits":2.0,"dds":0.0,"last_synced_commit":"01336707695da44715d444e536f14c0d513fd6c2"},"previous_names":["nunoplopes/llvm-aa-verif"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nunoplopes%2Fllvm-aa-verif","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nunoplopes%2Fllvm-aa-verif/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nunoplopes%2Fllvm-aa-verif/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nunoplopes%2Fllvm-aa-verif/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nunoplopes","download_url":"https://codeload.github.com/nunoplopes/llvm-aa-verif/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249178212,"owners_count":21225349,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["alias-analysis","llvm","verification"],"created_at":"2024-10-01T15:40:26.480Z","updated_at":"2025-04-16T01:09:21.445Z","avatar_url":"https://github.com/nunoplopes.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Verification of LLVM's Alias Analysis Proof Rules\n=================================================\n\nThis repo contains a Python script that verifies LLVM alias analysis (AA)\nproof rules automatically. It uses Z3Py to discharge the proof obligations.\nThe script formalizes the AA results of LLVM (no alias, partial alias,\nmust alias, may alias).\nThe formalization of the LLVM memory is based on the OOPSLA'18 paper.\n\nThe script currently attempts to prove 2 things:\n - Relationships between AA's lattice values (e.g., no-alias implies\n   not must-alias)\n - Most proof rules of BasicAA\n\nLimitations:\n - Address spaces are not supported (assumed 0 always).\n - Const memory, arguments, locally allocated objects not supported.\n - Missing proofs that spec of AA results is meaningful (e.g., if\n   p,q must-alias, then load p == load q if memories are equal).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnunoplopes%2Fllvm-aa-verif","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnunoplopes%2Fllvm-aa-verif","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnunoplopes%2Fllvm-aa-verif/lists"}