[llvm] [ConstantRange] Implement union/intersect with exact union/intersect (NFC) (PR #91397)
Nikita Popov via llvm-commits
llvm-commits at lists.llvm.org
Tue May 7 18:38:54 PDT 2024
https://github.com/nikic requested changes to this pull request.
It looks like in practice, this implementation is slower: https://llvm-compile-time-tracker.com/compare.php?from=83f3b1cb480b41e3347035aff14fd4bc2ba21d24&to=efbc199949db62e534c597e97710e6972fdc0531&stat=instructions:u
I think this is because the non-exact operations are more common and they go through std::optional now, which is inefficient in C++.
Worth noting that there are also code size changes, so this is not NFC: https://llvm-compile-time-tracker.com/compare.php?from=83f3b1cb480b41e3347035aff14fd4bc2ba21d24&to=efbc199949db62e534c597e97710e6972fdc0531&stat=size-text I'm not sure whether this indicates a weakness in our exhaustive test coverage, or whether this just switches to a different, equally good solution in some cases...
https://github.com/llvm/llvm-project/pull/91397
More information about the llvm-commits
mailing list