You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
then the MIR parser will add NoPHIs, IsSSA and NoVRegs function properties.
If you run llc -run-pass expand-isel-pseudos -verify-machineinstrs, where expand-isel-pseudos will expand TARGET_PSEUDO by adding either PHIs or vregs, the machine verifier will complain about the function not respecting the NoPHIs and NoVRegs properties.
I am not sure what the correct behavior should be here, but we should be able to somehow force it in the MIR file so that we don't have to add actual PHI MIs to the test.
A few possibilities:
Properly implement getClearedProperties/getSetProperties/getRequiredProperties for all the passes. One issue here is that in the case of passes that call into backends, we don't know the hooks will insert, so we'll end up clearing most of the properties in many cases.
Set/reset the properties from every pass including all the backend hooks.
Add MIR keys that force the properties for the whole file.
The text was updated successfully, but these errors were encountered:
Allow setting the computed properties IsSSA, NoPHIs, NoVRegs for MIR
functions in MIR input. The default value is still the computed value.
If the property is set to false, the computed result is ignored. This
allows for tests where a pass is for example inserting PHI nodes into a
function that didn't have any previously.
Closesllvm#37787
Allow setting the computed properties IsSSA, NoPHIs, NoVRegs for MIR
functions in MIR input. The default value is still the computed value.
If the property is set to false, the computed result is ignored. This
allows for tests where a pass is for example inserting PHI nodes into a
function that didn't have any previously.
Closesllvm#37787
Extended Description
Assuming you have this test case:
body:
$rax = TARGET_PSEUDO
then the MIR parser will add NoPHIs, IsSSA and NoVRegs function properties.
If you run llc -run-pass expand-isel-pseudos -verify-machineinstrs, where expand-isel-pseudos will expand TARGET_PSEUDO by adding either PHIs or vregs, the machine verifier will complain about the function not respecting the NoPHIs and NoVRegs properties.
I am not sure what the correct behavior should be here, but we should be able to somehow force it in the MIR file so that we don't have to add actual PHI MIs to the test.
A few possibilities:
The text was updated successfully, but these errors were encountered: