)]}'
{
  "commit": "c889a4cb3515b53c60166f302ff01f3c43e29a8a",
  "tree": "fd45ea17962e230374056f08d131c0c830e84620",
  "parents": [
    "de17d3d463f8a47d0fc822219e5b8f16faa00007",
    "f810b62af43413cbda7508d2ba469dc7079a8562"
  ],
  "author": {
    "name": "Ben Vanik",
    "email": "ben.vanik@gmail.com",
    "time": "Tue Feb 21 16:52:43 2023 -0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Feb 21 16:52:43 2023 -0800"
  },
  "message": "Adding `iree_bitcode_library` using our own clang build. (#12097)\n\nOur own clang build allows us to cross-compile to all targets we care\r\nabout with a consistent version separate from system compilers where we\r\nmay not even have clang, or an ancient version of clang-12, or a clang\r\nthat can\u0027t compile CUDA, etc etc.\r\n\r\nThis initial PR enables the clang build and changes the custom_dispatch\r\nsamples and the `iree/builtins/device` library to use it. The CUDA\r\nsample still includes nvcc to demonstrate how that can be used. The\r\ndevice builtins change allows us to remove the checked in bitcode files\r\nand instead compiles them from source as a normal part of building the\r\ncompiler.\r\n\r\nErgonomic improvements are needed before scaling this out such as a\r\nmatrix rule for reducing the BUILD boilerplate. `iree/builtins/musl`\r\nwill need to move off of using make but `iree/builtins/ukernel` should\r\nbe easier to glob and use directly but has grown a bit too complex to\r\ndirectly use this right now (arch/config rewriting goo).\r\n\r\nThis will bump up compiler build times as we\u0027re now building clang. I\r\ntried to avoid needing to do this but it\u0027s way better than any\r\nalternative (checking in bitcode, only being able to build microkernels\r\non certain platforms, supporting random user errors with\r\noutdated/misconfigured clangs, etc).",
  "tree_diff": []
}
