Preserve new !align, !dereferenceable, !dereferenceable_or_null load metadata everywhere we preserve !nonnull metadata.
Details
Details
Diff Detail
Diff Detail
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 | 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 | Move these up to combine with nonnull handling. |
lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp | ||
---|---|---|
376 | 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. |
It seems silly to copy-and-paste the same function twice with a different name. How about just naming it getMostGenericAlignmentOrDereferenceable?