This is an archive of the discontinued LLVM Phabricator instance.

[mlir] Refactor pass crash reproducer generation to be an assembly resource
ClosedPublic

Authored by rriddle on May 25 2022, 9:32 PM.

Details

Summary

We currently generate reproducer configurations using a comment placed at
the top of the generated .mlir file. This is kind of hacky given that comments
have no semantic context in the source file and can easily be dropped. This
strategy also wouldn't work if/when we have a bitcode format. This commit
switches to using an external assembly resource, which is verifiable/can
work with a hypothetical bitcode naturally/and removes the awkward processing
from mlir-opt for splicing comments and re-applying command line options. With
the removal of command line munging, this opens up new possibilities for
executing reproducers in memory.

Diff Detail

Event Timeline

rriddle created this revision.May 25 2022, 9:32 PM
Herald added projects: Restricted Project, Restricted Project. · View Herald Transcript
rriddle requested review of this revision.May 25 2022, 9:32 PM
rriddle planned changes to this revision.May 25 2022, 9:36 PM
rriddle requested review of this revision.May 30 2022, 10:49 PM
rriddle updated this revision to Diff 433017.
rriddle retitled this revision from WIP: [mlir] Refactor pass crash reproducer generation to be an assembly configuration to [mlir] Refactor pass crash reproducer generation to be an assembly configuration.
rriddle edited the summary of this revision. (Show Details)
rriddle updated this revision to Diff 434253.Jun 4 2022, 12:52 AM
rriddle retitled this revision from [mlir] Refactor pass crash reproducer generation to be an assembly configuration to [mlir] Refactor pass crash reproducer generation to be an assembly resource.
rriddle edited the summary of this revision. (Show Details)
rriddle updated this revision to Diff 436070.Jun 10 2022, 3:59 PM
rriddle updated this revision to Diff 440772.Jun 28 2022, 2:30 PM
mehdi_amini accepted this revision.Jun 29 2022, 9:56 AM
This revision is now accepted and ready to land.Jun 29 2022, 9:56 AM
This revision was landed with ongoing or failed builds.Jun 29 2022, 12:17 PM
This revision was automatically updated to reflect the committed changes.