[llvm-commits] [llvm] r119320 - /llvm/trunk/lib/CodeGen/MachineVerifier.cpp

Jakob Stoklund Olesen stoklund at 2pi.dk
Mon Nov 15 20:51:37 PST 2010


On Nov 15, 2010, at 5:58 PM, Eric Christopher <echristo at apple.com> wrote:

> Author: echristo
> Date: Mon Nov 15 19:58:21 2010
> New Revision: 119320
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=119320&view=rev
> Log:
> Make the verifier a little quieter on instructions that it's probably
> (and likely) wrong about anyhow.
> 
> Modified:
>    llvm/trunk/lib/CodeGen/MachineVerifier.cpp
> 
> Modified: llvm/trunk/lib/CodeGen/MachineVerifier.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/MachineVerifier.cpp?rev=119320&r1=119319&r2=119320&view=diff
> ==============================================================================
> --- llvm/trunk/lib/CodeGen/MachineVerifier.cpp (original)
> +++ llvm/trunk/lib/CodeGen/MachineVerifier.cpp Mon Nov 15 19:58:21 2010
> @@ -558,7 +558,9 @@
>     else if (MO->isImplicit())
>       report("Explicit definition marked as implicit", MO, MONum);
>   } else if (MONum < TI.getNumOperands()) {
> -    if (MO->isReg()) {
> +    // Don't check if it's a variadic instruction. See, e.g., LDM_RET in the arm
> +    // back end.
> +    if (MO->isReg() && MONum != TI.getNumOperands()-1) {
>       if (MO->isDef())
>         report("Explicit operand marked as def", MO, MONum);

You should only allow this for the last fixed operand on variadic instructions.

>       if (MO->isImplicit())
> 
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list