[PATCH] D27560: Always run GlobalDCE at O0

Hal Finkel via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 13 19:00:47 PST 2016


----- Original Message -----
> From: "Paul via llvm-commits Robinson" <llvm-commits at lists.llvm.org>
> To: "Joerg Sonnenberger" <joerg at bec.de>
> Cc: llvm-commits at lists.llvm.org
> Sent: Tuesday, December 13, 2016 8:39:09 PM
> Subject: RE: [PATCH] D27560: Always run GlobalDCE at O0
> 
> 
> 
> > -----Original Message-----
> > From: llvm-commits [mailto:llvm-commits-bounces at lists.llvm.org] On
> > Behalf
> > Of Joerg Sonnenberger via llvm-commits
> > Sent: Tuesday, December 13, 2016 6:24 PM
> > To: llvm-commits at lists.llvm.org
> > Subject: Re: [PATCH] D27560: Always run GlobalDCE at O0
> > 
> > On Tue, Dec 13, 2016 at 05:55:55PM -0800, Mehdi Amini via
> > llvm-commits
> > wrote:
> > > Also, if always_inline is “required” for correctness it should
> > > process
> > all the calligraph.
> > 
> > always_inline is required for correctness. One example is a wrapper
> > function around vfork or setjmp.
> 
> Correctness of C/C++, or correctness of LLVM IR?  The difference is
> in
> whether Clang sets up the always-inliner to run at O0, versus whether
> opt (and LLVM's default pass pipeline) set it up to run at O0.
> Remember that Clang does not use LLVM's pipeline, it generates its
> own.

What do you mean? Clang uses the pipelines built by LLVM's PassManagerBuilder. It also adds its own things (e.g. for the sanitizers). Which inliner to use is something the frontend controls via a dedicated option in the PassManagerBuilder, but this is definitely a special case.

 -Hal

> --paulr
> 
> > 
> > Joerg
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at lists.llvm.org
> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
> 

-- 
Hal Finkel
Lead, Compiler Technology and Programming Languages
Leadership Computing Facility
Argonne National Laboratory


More information about the llvm-commits mailing list