[llvm-dev] Early CSE clobbering llvm.assume
Hal Finkel via llvm-dev
llvm-dev at lists.llvm.org
Fri Jun 10 18:44:55 PDT 2016
----- Original Message -----
> From: "Daniel Berlin via llvm-dev" <llvm-dev at lists.llvm.org>
> To: "Peter Lawrence" <c_plawre at qca.qualcomm.com>
> Cc: llvm-dev at lists.llvm.org
> Sent: Friday, June 10, 2016 8:32:06 PM
> Subject: Re: [llvm-dev] Early CSE clobbering llvm.assume
> We do, implicitly, because assert generates if conditions. Or at
> least, gvn knows how to propagate that implicit info. We can do
> better by exposing it more, most likely
Are you asking why we don't assume the asserted condition when NDEBUG is defined?
> On Fri, Jun 10, 2016, 5:59 PM Lawrence, Peter <
> c_plawre at qca.qualcomm.com > wrote:
> > Daniel,
> > Well then my next (dumb?) question is why aren’t we using source
> > level assert information
> > For optimization ?
> > --Peter Lawrence.
> > From: Daniel Berlin [mailto: dberlin at dberlin.org ]
> > Sent: Friday, June 10, 2016 5:39 PM
> > To: Lawrence, Peter < c_plawre at qca.qualcomm.com >
> > Cc: llvm-dev at lists.llvm.org
> > Subject: Re: [llvm-dev] Early CSE clobbering llvm.assume
> > On Fri, Jun 10, 2016 at 5:34 PM, Lawrence, Peter via llvm-dev <
> > llvm-dev at lists.llvm.org > wrote:
> > > My (dumb?) question would be: why is llvm.assume being handled
> > > any
> > > differently than llvm.assert ?
> > There is no llvm.assert intrinsic, so i'm not sure what you mean
> > here. Care to give an example?
> > > Other than one trapping and one not-trapping, they should be
> > > identical, in both cases they are giving
> > > The optimizers information, and that shouldn’t be any different
> > > from
> > > being inside an “if” statement with the same condition ?
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev