[llvm-commits] [llvm] r95975 - in /llvm/trunk: include/llvm/Analysis/ lib/Analysis/ lib/CodeGen/ lib/Transforms/Scalar/ test/CodeGen/ARM/ test/CodeGen/Thumb2/ test/CodeGen/X86/ test/Transforms/IndVarSimplify/ test/Transforms/LoopStrengthReduce/

Dan Gohman gohman at apple.com
Mon Feb 15 09:27:50 PST 2010


On Feb 13, 2010, at 9:36 AM, nicolas geoffray wrote:

> Hi Dan,
> 
> On Fri, Feb 12, 2010 at 11:34 AM, Dan Gohman <gohman at apple.com> wrote:
> ==============================================================================
> --- llvm/trunk/lib/CodeGen/LLVMTargetMachine.cpp (original)
> +++ llvm/trunk/lib/CodeGen/LLVMTargetMachine.cpp Fri Feb 12 04:34:29 2010
> @@ -234,6 +235,9 @@
>     PM.add(createLoopStrengthReducePass(getTargetLowering()));
>     if (PrintLSR)
>       PM.add(createPrintFunctionPass("\n\n*** Code after LSR ***\n", &dbgs()));
> +#ifndef NDEBUG
> +    PM.add(createVerifierPass());
> +#endif
>   }
> 
> 
> Could you remove that change? This turns on a verifier for all builds except when DISABLE_ASSERTIONS is set. I'd like to have debug/release builds without the verifier running.

Having that verifier run is very useful. Getting all defs before their uses
is one of the trickiest parts of LSR; the old one didn't always get it
right, and the new one is finding it challenging as well. And it's much
easier to diagnose a verifier failure than a silent miscompile.
Maybe we can put the verifier run under the control of an option, so it
can be disabled. Would a command-line option be usable for you?

Dan





More information about the llvm-commits mailing list