[PATCH] D42886: [GlobalISel][AArch64] Adding -disable-legality-check CL option

Roman Tereshin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 27 11:48:05 PST 2018

rtereshin added a comment.


Hi Justin,

> Okay, I guess this makes sense for now.


I had a brief discussion with Quentin @qcolombet about this, he suggested that moving that legality check to where it belongs - closer to Machine Verifier - might be just another use case of having customizable / extendable Machine Verifier, so different parts of the generic pipeline, like in this case, as well as different targets could (temporary / locally) modify what checks Machine Verifier performs, or drive it a little. Like custom (and potentially target-specific) pre- and post- conditions on every (machine) pass, for instance. Providing API for something like this might decouple Machine Verifier from its clients just enough to solve this "but Legalizer is in a different library..." problem: let's say, the legality check is performed by Machine Verifier, but its implementation still goes with the Legalizer, while RegBankSelect and InstructionSelect passes simply register that additional check with the Machine Verifier. Something along these lines. This kind of work is probably well outside of this patch scope.

> I think we should name the flag -disable-mir-legality-check instead of -disable-legality-check, as the current name is a bit too general sounding.

Sure, I'll rename it. Specifically `mir-`, or maybe `gisel-` or `globalisel-`?

> Do you need me to commit this for you?

I'm waiting on my commit access, I think I'd wait a few days, if I have it by then, I'll commit this myself, if not, I'll let you know, thank you for offering, much appreciated!



More information about the llvm-commits mailing list