[llvm-dev] [RFC] Disabling DAG combines in /O0

Robinson, Paul via llvm-dev llvm-dev at lists.llvm.org
Tue May 17 08:00:15 PDT 2016



> -----Original Message-----
> From: llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] On Behalf Of
> Krzysztof Parzyszek via llvm-dev
> Sent: Tuesday, May 17, 2016 6:25 AM
> To: llvm-dev at lists.llvm.org
> Subject: Re: [llvm-dev] [RFC] Disabling DAG combines in /O0
> 
> On 5/16/2016 8:36 PM, Quentin Colombet via llvm-dev wrote:
> > DAG combiner does indeed optimizations but also canonicalization.
> 
> This has been discussed before and AFAIR, the problem is that the exact
> handshakes between combining and legalization are not documented. A
> specification of the canonical forms during various stages of
> legalization would make it much easier to decouple canonicalization from
> optimization.
> 
> Also, do we know that the required canonicalization will not have the
> same problem as the combining?  That is, whether the necessary
> canonicalization steps will not affect the "debuggability" of the program?

If canonicalization has the same problem as combining, then we already
have the debug-info problem at -O0 in some cases, and we'd want to fix
those anyway.

I'd hope that canonicalization transformations are relatively simple.
In that case, loss of debug info is generally an oversight or a lack
of straightforward bookkeeping (based on my experience in some other
compilers).  Fixing the canonicalization debug-info problems, if there
are any, should not be a major undertaking.
--paulr

> 
> -Krzysztof
> 
> --
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
> hosted by The Linux Foundation
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev


More information about the llvm-dev mailing list