This is an archive of the discontinued LLVM Phabricator instance.

[mlir][LLVM] Add support for operand_attrs to InlineAsmOp
ClosedPublic

Authored by nicolasvasilache on Jan 23 2022, 12:59 PM.

Details

Summary

This revision adds enough support to allow InlineAsmOp to work properly with indirect memory constraints "*m".
These require an explicit "elementtype" TypeAttr on the operands to pass LLVM verification and need to be provided.

Diff Detail

Event Timeline

nicolasvasilache requested review of this revision.Jan 23 2022, 12:59 PM
Herald added a project: Restricted Project. · View Herald TranscriptJan 23 2022, 12:59 PM
bkramer accepted this revision.Jan 26 2022, 2:27 AM

Looks good

This revision is now accepted and ready to land.Jan 26 2022, 2:27 AM

Rebase and fix condition.

This revision was landed with ongoing or failed builds.Jan 26 2022, 4:42 AM
This revision was automatically updated to reflect the committed changes.
nicolasvasilache reopened this revision.Feb 1 2022, 2:13 AM
This revision is now accepted and ready to land.Feb 1 2022, 2:13 AM

Investigate post revert

build is green resubmitting.

@mehdi_amini what triggered the previous revert?

This seems related to LLI + Intel SDE running through mlir-check.
Sent a patch that temporarily disables the LLI part of the test, the mlir-opt + mlir-translate is still a meaningful test: c2fa5ff5adba61dc5b0d477c0af1ea00ec2c596a.

Help to understand what is happening here would be appreciated.

This is now fixed properly in 31b7f8857f4cd9c182b397ebf55db049318b3d7d: the test was not returning and would silently return non-0.

Thanks @bkramer for the correct hypothesis!

@mehdi_amini what triggered the previous revert?

Sorry, I forgot to come back here to past the link! Glad you figured it out :)