This is an archive of the discontinued LLVM Phabricator instance.

[TargetPassConfig] Run MachineVerifier after more passes
ClosedPublic

Authored by ZhangKang on Jul 30 2020, 3:07 AM.

Details

Reviewers
efriedma
hfinkel
MaskRay
echristo
bjope
arsenm
Group Reviewers
Restricted Project
Summary

Some patches has upstreamed to fix the bug for MachineVerifier, now we can
run MachineVerifier after more passes.

Diff Detail

Event Timeline

ZhangKang created this revision.Jul 30 2020, 3:07 AM
ZhangKang requested review of this revision.Jul 30 2020, 3:07 AM
arsenm accepted this revision.Jul 30 2020, 6:04 AM
arsenm added a subscriber: arsenm.
arsenm added inline comments.
llvm/lib/CodeGen/TargetPassConfig.cpp
1176

I thought there were deeper problems here that prevented this, but it's great if that's not the case anymore

1201

I assume there's still a problem for TwoAddressInstructionPass?

This revision is now accepted and ready to land.Jul 30 2020, 6:04 AM
MaskRay accepted this revision.Jul 30 2020, 12:31 PM

If your build is configured with -DLLVM_ENABLE_EXPENSIVE_CHECKS=on, verifyer passes may be added even without -verify-machineinstrs. I assume you have tested them...

ZhangKang marked 2 inline comments as done.EditedJul 30 2020, 6:26 PM

If your build is configured with -DLLVM_ENABLE_EXPENSIVE_CHECKS=on, verifyer passes may be added even without -verify-machineinstrs. I assume you have tested them...

Yes, I have used -DLLVM_ENABLE_EXPENSIVE_CHECKS=on to test this patch. Now there are 28 lit errors and 78 lnt errors, and this patch doesn't cause new errors.

llvm/lib/CodeGen/TargetPassConfig.cpp
1176

All the test can be passes when enable verification for this pass.

1201

Yes, there still are errors for TwoAddressInstructionPass?.

ZhangKang marked 2 inline comments as done.Jul 30 2020, 6:27 PM
MaskRay closed this revision.Jun 29 2023, 1:11 PM

This never landed but was obsoleted by some cleanups and D111872

Herald added a project: Restricted Project. · View Herald TranscriptJun 29 2023, 1:11 PM