Displaying 20 results from an estimated 500 matches similar to: "[LLVMdev] SCEVCouldNotCompute"
2009 Feb 27
0
[LLVMdev] SCEVCouldNotCompute
David Greene wrote:
> We've upgraded to llvm 2.4 and we're hitting an assert in SCEV:
>
> llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h:669: RetVal
> llvm::SCEVVisitor<SC,
> RetVal>::visitCouldNotCompute(llvm::SCEVCouldNotCompute*) [with SC =
> llvm::SCEVExpander, RetVal = llvm::Value*]: Assertion `0 && "Invalid use of
>
2009 Feb 28
1
[LLVMdev] SCEVCouldNotCompute
On Friday 27 February 2009 00:50, Nick Lewycky wrote:
> David Greene wrote:
> > We've upgraded to llvm 2.4 and we're hitting an assert in SCEV:
> >
> > llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h:669: RetVal
> > llvm::SCEVVisitor<SC,
> > RetVal>::visitCouldNotCompute(llvm::SCEVCouldNotCompute*) [with SC =
> > llvm::SCEVExpander,
2016 Mar 24
0
LSR/SCEV problem/question
Hi Geoff,
Firstly, I think it will be great if you have a small reproducer of
this issue (which I can make fail after re-applying D18001 to ToT).
> I’ve run into what appears to be a bug in ScalarEvolution, but I’m not sure
> if it is instead caused by me missing an implicit assumption between LSR and
> SCEV.
>
> This issue is caused by the change D18001, which is an attempt to
2016 Mar 23
6
LSR/SCEV problem/question
Hi All,
I've run into what appears to be a bug in ScalarEvolution, but I'm not sure
if it is instead caused by me missing an implicit assumption between LSR and
SCEV.
This issue is caused by the change D18001 <http://reviews.llvm.org/D18001> ,
which is an attempt to increase SCEV-inserted instruction re-use by picking
a more canonical insertion position in the case where a new
2011 Oct 27
2
[LLVMdev] How to make Polly ignore some non-affine memory accesses
Perfect, thank you very much :)
2011/10/26 Tobias Grosser <tobias at grosser.es>:
> On 10/24/2011 11:32 PM, Marcello Maggioni wrote:
>>
>> Strange , with --enable-shared (I use auto tool by the way ...) it gives:
>>
>> MacBook-Pro-di-Marcello:examples Kariddi$ ./compile_ex.sh
>> not_so_simple_loop
>> clang (LLVM option parsing): Unknown command line
2009 Oct 13
1
[LLVMdev] 65bit integer math
On Monday 12 October 2009 22:22, Eli Friedman wrote:
> > Now I understand that llvm can have any length integer, but I consider
> > turning a 64bit mul into multiple 65 bit instructions to be a ‘bad’
> > optimization. This eventually expands to a 128bit multiply call(__multi3)
> > which I have absolutely no interest in supporting. So I’m wondering what
> >
2011 Nov 01
0
[LLVMdev] How to make Polly ignore some non-affine memory accesses
Mmm, this code seems to kill polly:
#include <stdio.h>
#include <stdlib.h>
int main()
{
char *B;
int i,j,k,h;
const int x = 0, y=0;
B = (char *)malloc(sizeof(char)*1024*1024);
for (i = 1; i < 1024; i++)
for (j = 1; j < 1024; j++)
{
if (i+j > 1000)
B[j] = i;
}
printf("Random Value: %d", B[rand() % 1024*1024]);
return 0;
}
running:
opt
2009 Oct 13
0
[LLVMdev] 65bit integer math
On Mon, Oct 12, 2009 at 6:15 PM, Villmow, Micah <Micah.Villmow at amd.com> wrote:
> I have a test case(attached as fc_long.ll) that when run through the
> optimizer produces 65bit integer math(fc_long-opt.ll).
>
>
>
> Now I understand that llvm can have any length integer, but I consider
> turning a 64bit mul into multiple 65 bit instructions to be a ‘bad’
>
2009 Oct 13
4
[LLVMdev] 65bit integer math
I have a test case(attached as fc_long.ll) that when run through the
optimizer produces 65bit integer math(fc_long-opt.ll).
Now I understand that llvm can have any length integer, but I consider
turning a 64bit mul into multiple 65 bit instructions to be a 'bad'
optimization. This eventually expands to a 128bit multiply
call(__multi3) which I have absolutely no interest in supporting.
2018 May 03
2
SCEVExpander and IRBuilder
Hi Alex, Sanjoy,
exposing the internal IRBuilder to users of SCEVExpander violates
information hiding, and encourages the tight coupling that makes code bases
such as Polly so hard to maintain. SCEVExpander::expandCodeFor returns a
Value that (if it's an instruction) can be used to update the insert point
of the client's IRBuilder. Is that not enough?
No hidden state, no hidden state
2018 May 03
0
SCEVExpander and IRBuilder
Hey,
Alternatively, expose a SCEVExpander::getInsertPoint? This would proxy the
underlying IRbuilder, with no real state sharing, other than the current
insert point.
This will be less ugly than recieving the expanded SCEV value, casting to
an instruction, and feeding this to the IRBuilder.
Cheers,
siddharth
On Thu 3 May, 2018, 15:36 Philip Pfaffe via llvm-dev, <
llvm-dev at
2018 Apr 06
2
SCEVExpander and IRBuilder
Hello,
I use SCEVExpander and IRBuilder to generate some code and I frequently
end-up breaking dominance because the SCEVExpander insertion point and the
IRBuilder insertion point do not advance in synchrony.
Ideally, I could build a SCEVExpander based on an existing IRBuilder (so
that they move each other). Or even better, SCEVExpander inherit from
IRBuilder and basically extend it with SCEV
2018 Apr 29
0
SCEVExpander and IRBuilder
Hi Alexandre,
Sorry I missed this -- I was on vacation when you sent this.
SCEVExpander already has an IRBuilder in it but AFAICT it isn't
exposed as a public interface. I'd be fine if you wanted to expose a
public `GetIRBuilder()` accessor that let a SCEVExpander client use
the same IRBuilder as SCEVExpander.
-- Sanjoy
On Fri, Apr 6, 2018 at 10:55 AM, Alexandre Isoard via llvm-dev
2009 Feb 24
2
[LLVMdev] Detecting counted loops
I need to be able to detect a well-behaved loop. (i.e one where exp1
assigns a value to an int i, exp2 compares i with a loop constant,
exp3 adjusts i by a loop constant, and the inner block has no
assignments to i.)
I need this because in Sun's Java VM garbage collection only takes
place at safepoints, so a potentially unbounded loop must call
safepoint() some time. However, safepoints are
2017 Nov 06
3
[RFC] Setting the current debug loc when the insertion point changes
Hi everybody,
I'm investigating some correctness issues with debug line table information in optimized code. I've noticed something problematic in IRBuilder. Setting the insertion point of an IRBuilder sets the builder’s current debug loc to the one attached to the insertion point. IMO this isn't always a correct or convenient thing to do, and it shouldn't be the default behavior.
2011 Nov 02
5
[LLVMdev] How to make Polly ignore some non-affine memory accesses
Mmm I found out a very strange behavior (to me) of the SCEV analysis
of the loop bound of the external loop I posted.
When in ScopDetection it gets the SCEV of the external loop bound in
the "isValidLoop()" function with:
const SCEV *LoopCount = SE->getBackedgeTakenCount(L);
It returns a SCEVCouldNotCompute, but if I change the "if" block
inside the loop from:
if
2011 Nov 21
4
[LLVMdev] How to make Polly ignore some non-affine memory accesses
2011/11/21 Tobias Grosser <tobias at grosser.es>:
> On 11/20/2011 04:36 PM, Marcello Maggioni wrote:
>>
>> Sorry for the noobish question, but what kind of subscripts generate a
>> SCEVCouldNotCompute from the SCEV engine?
>> I tried for a while but I wasn't able to trigger that
>
> Hi Marcello,
>
> the SCEV returns SCEVCouldNotCompute in case it
2017 Nov 06
2
[RFC] Setting the current debug loc when the insertion point changes
> On Nov 6, 2017, at 2:32 PM, Adrian Prantl <aprantl at apple.com> wrote:
>
>
>> On Nov 6, 2017, at 2:19 PM, Vedant Kumar <vsk at apple.com> wrote:
>>
>> Hi everybody,
>>
>> I'm investigating some correctness issues with debug line table information in optimized code. I've noticed something problematic in IRBuilder. Setting the
2011 Nov 21
2
[LLVMdev] How to make Polly ignore some non-affine memory accesses
Sorry for the noobish question, but what kind of subscripts generate a
SCEVCouldNotCompute from the SCEV engine?
I tried for a while but I wasn't able to trigger that.
2011/11/20 Tobias Grosser <tobias at grosser.es>:
> On 11/20/2011 03:01 AM, Marcello Maggioni wrote:
>>
>> 2011/11/19 Tobias Grosser<tobias at grosser.es>:
>>>
>>> On 11/18/2011
2016 Aug 24
3
Request suggestions about how to remove redundencies caused by SCEV expansion fundementally
> On Aug 23, 2016, at 11:30 PM, Sanjoy Das <sanjoy at playingwithpointers.com> wrote:
>
> Hi Wei,
>
> I've not seen GCC's SCEV so I cannot make a comparative comment here
> (maybe Chris, Andy or Dan can chime in here), but I personally am in
> the "make the cleanup passes smarter" camp. We can also try to make
> SCEV expansion smarter -- not by