This is an archive of the discontinued LLVM Phabricator instance.

Add placeholder for more extensive verification of psuedo ops
ClosedPublic

Authored by reames on Jun 1 2017, 6:58 PM.

Details

Summary

This initial patch doesn't actually do much useful. It's just to show where the new code goes. Once this is in, I'll extend the verification logic to check more useful properties.

For those curious, the more complicated version of this patch already found one very suspicious thing.

p.s. At the time of posting, this hasn't actually finished building. For some reason my incremental build decided to do a full rebuild which takes a while. That's not the main point of the review anyways; I'm mostly curious about placement/purpose comments.

Diff Detail

Repository
rL LLVM

Event Timeline

reames created this revision.Jun 1 2017, 6:58 PM
reames updated this revision to Diff 101164.Jun 1 2017, 7:04 PM

I tempted fate, so of course the rushed patch didn't build. Oy.

MatzeB accepted this revision.Jun 1 2017, 7:33 PM

Not much to say at this point except: More machine verifiers are a good thing here esp. since those patchpoint related instructions are variadic/generic enough that our usual MCInstrDesc mechanism don't do much anymore.

lib/CodeGen/MachineVerifier.cpp
926–928 ↗(On Diff #101164)

You can probably move the TargetOpcode::G_LOAD/TargetOpcode::G_STORE cases from above into the switch as well?

This revision is now accepted and ready to land.Jun 1 2017, 7:33 PM
This revision was automatically updated to reflect the committed changes.