ilya-biryukov wrote: I will rebase this and move out of draft state after #106730 lands. Currently the change also includes commit from that PR. Also left to do: add a builtin to compare types by mangled names. https://github.com/llvm/llvm-project/pull/152118