This is an archive of the discontinued LLVM Phabricator instance.

[mlir] Tighten LLVM_AnyNonAggregate ODS type constraint
ClosedPublic

Authored by ftynse on Aug 11 2021, 4:23 AM.

Details

Summary

The constraint was checking that the type is not an LLVM structure or array
type, but was not checking that it is an LLVM-compatible type, making it accept
incorrect types. As a result, some LLVM dialect ops could process values that
are not compatible with the LLVM dialect leading to further issues with
conversions and translations that assume all values are LLVM-compatible. Make
LLVM_AnyNonAggregate only accept LLVM-compatible types.

Diff Detail

Event Timeline

ftynse created this revision.Aug 11 2021, 4:23 AM
ftynse requested review of this revision.Aug 11 2021, 4:23 AM
ftynse added a reviewer: cota.Aug 11 2021, 4:24 AM
akuegel accepted this revision.Aug 11 2021, 4:52 AM
This revision is now accepted and ready to land.Aug 11 2021, 4:52 AM
cota accepted this revision.Aug 11 2021, 7:13 AM
This revision was automatically updated to reflect the committed changes.