[PATCH] D89050: Add support for !noundef metatdata on loads
Johannes Doerfert via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 8 12:37:44 PDT 2020
jdoerfert added a comment.
> 15% loads, and now you add one extra assume for every load, that will be a significant increase in instructions (not that metadata is completely free either).
`llvm.assume(i1 true) ["noundef"(%a), "noundef"(%b)]` works right now just fine, we even merge assumes already with a pass in-tree (IIRC, @Tyker). The operand bundles could/should also take more operands to make it even simpler.
That said, I think @nikic is right that there is a trade off we have to consider and actually measure. I don't know what is best. What I know is that I would like us to employ assume aggressively to "retain knowledge". That will mean we have to deal with many `llvm.assume`s either way and I'd much rather have one encoding and smarts to deal with it than multiple ones.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D89050/new/
https://reviews.llvm.org/D89050
More information about the llvm-commits
mailing list