Displaying 5 results from an estimated 5 matches for "isscevexprneverpoison".
2019 Sep 19
2
ScalarEvolution invariants around wrapping flags
> 1. Callers are expected to not engage in speculation. ScalarEvolution
> itself must only create expressions it knows hold in all cases.
This is correct. There is some more relevant text in
ScalarEvolution::isSCEVExprNeverPoison. And you're right, this is
quite restrictive.
> Long term, I think that it would be cleaner to rework this so that all of the SCEV's are immutable and include their flags.
I proposed this in 2016 but Andy had some concerns and I dropped it.
See http://lists.llvm.org/pipermail/llvm-dev...
2019 Aug 26
2
missing simplification in ScalarEvolution?
Hi Sanjoy,
Thanks for the reply!
Your approach sounds good to me!
I think 1) is legal as address wraparound in unsigned range doesn't make sense given a positive offset, but I am not sure.
I think umax will not be added if we can prove the predicate as known.
I am not sure whether umax will get simplified if we add nuw to the expressions.
-Pankaj
-----Original Message-----
From: Sanjoy
2017 Jun 29
8
The undef story
> On Jun 29, 2017, at 4:39 AM, Hal Finkel <hfinkel at anl.gov> wrote:
>
> On 06/28/2017 05:33 PM, Peter Lawrence wrote:
>> Chandler,
>> where we disagree is in whether the current project is moving the issue
>> forward. It is not. It is making the compiler more complex for no additional value.
>>
>> The current project is not based in
2019 Sep 19
2
ScalarEvolution invariants around wrapping flags
...joy at playingwithpointers.com> wrote:
>>
>>> 1. Callers are expected to not engage in speculation. ScalarEvolution
>>> itself must only create expressions it knows hold in all cases.
>> This is correct. There is some more relevant text in
>> ScalarEvolution::isSCEVExprNeverPoison. And you're right, this is
>> quite restrictive.
>>
>>> Long term, I think that it would be cleaner to rework this so that all of the SCEV's are immutable and include their flags.
>> I proposed this in 2016 but Andy had some concerns and I dropped it.
>> Se...
2019 Sep 17
2
ScalarEvolution invariants around wrapping flags
Hi,
I'm working on a bug somewhere between SCEV and IndVarSimplify, which
tacks an unwanted "nuw" onto an "add i32 %whatever, -1" (which
actually almost certainly will overflow), leading ultimately to an
infinite loop. A fuller description and test-case is at the end for
anyone interested.
The issue seems to be with ScalarEvolution's attempts to cache SCEV
objects,