[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
> 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
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.
> 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
More information about the llvm-dev