{"id":25387228,"url":"https://github.com/llvmparty/remillworkshop","last_synced_at":"2025-04-07T05:10:20.493Z","repository":{"id":198188083,"uuid":"700069434","full_name":"LLVMParty/RemillWorkshop","owner":"LLVMParty","description":null,"archived":false,"fork":false,"pushed_at":"2025-02-23T13:04:50.000Z","size":9467,"stargazers_count":47,"open_issues_count":0,"forks_count":62,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-31T04:07:14.675Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","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/LLVMParty.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":"2023-10-03T22:07:17.000Z","updated_at":"2025-03-20T17:24:21.000Z","dependencies_parsed_at":"2024-03-16T16:04:37.780Z","dependency_job_id":"0096429f-0cbf-43bd-887b-45882c1fdaa3","html_url":"https://github.com/LLVMParty/RemillWorkshop","commit_stats":null,"previous_names":["llvmparty/remillworkshop"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LLVMParty%2FRemillWorkshop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LLVMParty%2FRemillWorkshop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LLVMParty%2FRemillWorkshop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LLVMParty%2FRemillWorkshop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LLVMParty","download_url":"https://codeload.github.com/LLVMParty/RemillWorkshop/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247595335,"owners_count":20963943,"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":"2025-02-15T11:35:05.213Z","updated_at":"2025-04-07T05:10:20.465Z","avatar_url":"https://github.com/LLVMParty.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Remill Workshop\n\n## Setting up the environment\n\nThis repository uses a [`devcontainer.json`](./.devcontainer/devcontainer.json) file to allow you to quickly get started.\n\n## 1) GitHub Codespaces\n\n**Using Codespaces is required for the workshop**\n\n1. Login to your GitHub account\n2. [Fork this repository](https://github.com/LLVMParty/RemillWorkshop/fork)\n3. Click the green `\u003c\u003e Code` button\n4. Press `...` and then `New with options...`\n5. Change `Machine type` to `4-core`\n6. Then `Create codespace`\n7. Wait a ~3 minutes while the image is loading ☕\n   - Press `Show log` to see progress\n\n| ![](.devcontainer/new-codespace.png) | ![](.devcontainer/machine-type.png) |\n|---|---|\n\n#### **Remember to shut down your codespace [here](https://github.com/codespaces) when you're finished.**\n\nI recommend switching to the `GitHub Dark` theme, because the LLVM IR syntax highlighting works better there. When prompted by the CMake tools, just close the notifications:\n\n![](.devcontainer/cmake-notifications.png)\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003csub\u003eAt a later date you can set things up locally with Docker Desktop\u003c/sub\u003e\u003c/summary\u003e\n\n### Docker Desktop (tricky)\n\n- Install/Update [Docker Desktop](https://www.docker.com/products/docker-desktop/) ([alternatives](https://code.visualstudio.com/remote/advancedcontainers/docker-options))\n- **Start Docker Desktop**\n- Install [Visual Studio Code](https://code.visualstudio.com)\n- Clone and open this repository in VS Code (**use the HTTPS protocol**)\n- Install the [Dev Containers](vscode:extension/ms-vscode-remote.remote-containers) extension in VS Code (you should be prompted for recommended extensions)\n- Click the blue 'Reopen in Container' button when prompted (you can also find it in the command palette)\n\nFor more detailed steps, check out the [Dev Containers tutorial](https://code.visualstudio.com/docs/devcontainers/tutorial). The instructions after this assume you are running _inside_ the container.\n\n#### Windows\n\nBecause the host filesystem is mounted inside the container you _may_ need to configure Git to not automatically convert line endings:\n\n```sh\ngit config --global core.autocrlf false\n```\n\nAdditionally it's recommended to configure Docker to use the WSL 2 backend.\n\n\u003c/details\u003e\n\n## 2) Building the examples\n\nTo build the project, press the `Build` button in the status bar:\n\n![](.devcontainer/build-button.png)\n\nYou will be prompted for a preset, select `clang` and the build will start:\n\n![](.devcontainer/select-preset.png)\n\nAlternatively you can build with the following commands:\n\n```sh\ncmake --preset clang\ncmake --build build\n```\n\n## 3) Checking the environment\n\nTo verify if the environment is set up correctly, run:\n\n```sh\nllvm-config --prefix\n```\n\nExpected output:\n\n\u003e `/cxx-common/install`\n\nThe `${workspaceFolder}/build` directory will also be added to your `PATH`, so you can easily access your tools from anywhere. To verify, run the following command:\n\n```sh\nremill-lift --version\n```\n\nExpected output:\n\n```\nremill-lift version v4.1.0-160-g7f091d4\nCommit Hash: 7f091d4256060c254fcd15f35fd8b9bd6abd157f\nCommit Date: 2024-07-17 12:32:00 -0400\nLast commit by: Duncan Ogilvie [mr.exodia.tpodt@gmail.com]\nCommit Subject: [Remove [[gnu::const]] (readnone) from __remill intrinsics (#710)]\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fllvmparty%2Fremillworkshop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fllvmparty%2Fremillworkshop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fllvmparty%2Fremillworkshop/lists"}