Preserve new !align, !dereferenceable, !dereferenceable_or_null load metadata everywhere we preserve !nonnull metadata.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
Test cases? Ideally, these would be split into separate patches. Given the size, I won't insist.
lib/IR/Metadata.cpp | ||
---|---|---|
967 ↗ | (On Diff #38186) | It seems silly to copy-and-paste the same function twice with a different name. How about just naming it getMostGenericAlignmentOrDereferenceable? |
Comment Actions
One comment below, otherwise, this LGTM.
lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp | ||
---|---|---|
376 ↗ | (On Diff #38607) | Move these up to combine with nonnull handling. |
lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp | ||
---|---|---|
376 ↗ | (On Diff #38607) | nonnull code also contains logic for the case when new type is an integer. These can be combined using fall through case, but I don't think that it helps readability. |