{"id":16336881,"url":"https://github.com/angerman/data-bitcode-plugin-env","last_synced_at":"2025-05-16T15:36:06.032Z","repository":{"id":79904392,"uuid":"76259188","full_name":"angerman/data-bitcode-plugin-env","owner":"angerman","description":"Data.Bitcode.Plugin playground (nix env)","archived":false,"fork":false,"pushed_at":"2016-12-12T13:46:40.000Z","size":5,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-02-18T00:44:29.999Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Nix","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/angerman.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2016-12-12T13:34:10.000Z","updated_at":"2020-07-05T19:35:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"1d1fbc85-d76c-4f23-94a9-1cb645201a2c","html_url":"https://github.com/angerman/data-bitcode-plugin-env","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angerman%2Fdata-bitcode-plugin-env","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angerman%2Fdata-bitcode-plugin-env/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angerman%2Fdata-bitcode-plugin-env/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angerman%2Fdata-bitcode-plugin-env/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/angerman","download_url":"https://codeload.github.com/angerman/data-bitcode-plugin-env/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254556889,"owners_count":22091012,"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":[],"created_at":"2024-10-10T23:45:13.949Z","updated_at":"2025-05-16T15:36:05.992Z","avatar_url":"https://github.com/angerman.png","language":"Nix","funding_links":[],"categories":[],"sub_categories":[],"readme":"# A nix-shell environment for Data.BitCode.Plugin\n\nThe purpose of this repository is to facilitate the testing of the\nghc plugin that produces bitcode instead of textual ir files.\n\nSee also the README at [data-bitcode-plugin](https://github.com/angerman/data-bitcode-plugin).\n\n## Running via nix\n\n```\n$ nix-shell\n```\n\nshould be sufficient to drop into a nix shell with the patched `ghc`\nand the `data-bitcode-plugin` package in the packages database.\n\n## Taking the bitcode backend for a spin\n\nExecuting `ghc` with the `Data.BitCode.Plugin` plugin\n```\n[nix-shell]$ ghc examples/HelloWorld.hs -fplugin Data.BitCode.Plugin -fllvm\n```\nshould produce the `examples/HelloWorld` binary via the bitcode\ncompilation pass.\n\n## Breaking (and fixing) the bitcode backend\n\nSimply add more complex modules to the `examples` folder, and try\nto compile them as above.  If this does not lead to the expected\nresult, please open a pull request with your module!\n\nFixing the compilation should often only require to look into\n[src/Data/BitCode/LLVM/Gen.hs](https://github.com/angerman/data-bitcode-plugin/blob/master/src/Data/BitCode/LLVM/Gen.hs)\nin the [data-bitcode-plugin](https://github.com/angerman/data-bitcode-plugin)\npackage.  And comparing it to the current llvm backend in ghc at [compiler/llvmGen/LlvmCodeGen/CodeGen.hs](https://github.com/ghc/ghc/blob/master/compiler/llvmGen/LlvmCodeGen/CodeGen.hs).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangerman%2Fdata-bitcode-plugin-env","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fangerman%2Fdata-bitcode-plugin-env","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangerman%2Fdata-bitcode-plugin-env/lists"}