similar to: [LLVMdev] Loop depth concept

Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] Loop depth concept"

2007 Nov 29
2
[LLVMdev] LLVM on MinGW
Antony Blakey wrote: > SVN head LLVM and Clang built out of the box for me a week ago on > MSYS/MINGW, using the following files: Ok, I tried to do the same. The compilations stops with the following error message (actually, I got to the same point in my attempt to build LLVM with the MinGW compiler shipped with Cygwin): llvm[1]: Compiling MachineLoopInfo.cpp for Debug build
2015 Jul 23
1
[LLVMdev] Is loop header required to have at least one predecessor outside the loop?
Hi, I was reading some loop related code and I don’t quite understand an assertion in LoopBase<BlockT, LoopT>::getLoopPredecessor(). /// getLoopPredecessor - If the given loop's header has exactly one unique /// predecessor outside the loop, return it. Otherwise return null. /// This is less strict that the loop "preheader" concept, which requires /// the predecessor to have
2007 Aug 24
2
[LLVMdev] Data Structure Analysis
Hi! Haifeng He wrote: > okay. I guess I figured it out. It seems "poolalloc" needs to be put > in llvm/projects/ directory. Yes, it will compile then. However, it seems the resulting shared library LLVMDataStructure.so (I haven't checked the others) has some undefined symbols. Trying to load it into the opt tool produces an error: undefined symbol:
2010 Sep 15
2
[LLVMdev] getAnalysis<LoopInfo> from ModulePass
Hi, I wrote tiny ModulePass which iterates over functions and then uses getAnalysis<LoopInfo> in order to get informations about the loop. It compiles smoothly, but whenever I try to run it I got error like this: opt: .. PassAnalysisSupport.h:203: AnalysisType& llvm::Pass::getAnalysisID(const llvm::PassInfo*) const [with AnalysisType = llvm::LoopInfo]: Assertion `ResultPass &&
2008 Aug 24
0
[LLVMdev] Dependence Analysis [was: Flow-Sensitive AA]
> I asked myself the same question. Without mod, how do you ensure that for instance the expression 2*i+255 was not actually 2*i-1 ? I think it is not possible in general, but I believe it is possible in case of affine expressions used as GEP indices. I assume, GEP indices (except indexing into struct) are interpreted as signed integers. It isn't explicitly stated in the LangRef, but
2008 Aug 20
0
[LLVMdev] Dependence Analysis [was: Flow-Sensitive AA]
On Aug 20, 2008, at 8:56 AM, David Greene wrote: > What I really need is a dependence analysis interface. I need to know > about loop-carried dependencies and that sort of things, whether two > memory > operations reference the same data, distance information, etc.. As > far as I > can tell, there's no infrastructure for this in LLVM. Right, this is something we've
2010 Sep 15
0
[LLVMdev] getAnalysis<LoopInfo> from ModulePass
hi, On Wed, Sep 15, 2010 at 8:21 PM, Mariusz Grad <mariusz.grad at gmail.com> wrote: > Hi, > > I wrote tiny ModulePass which iterates over functions and then uses getAnalysis<LoopInfo> in order to get informations about the loop. > It compiles smoothly, but whenever I try to run it I got error like this: > opt: .. PassAnalysisSupport.h:203: AnalysisType&
2008 Aug 20
1
[LLVMdev] Dependence Analysis [was: Flow-Sensitive AA]
On Monday 18 August 2008 17:48, David Greene wrote: > > Normally, the conversion to SSA form is sufficient. Can you talk > > about cases where this matters to you? > > Mostly it involves tying into our memory dependence analysis which > annotates things on program points. I need a way to translate back > to our optimizer data structures. > > So it's not
2012 Apr 20
2
[LLVMdev] Should repetitive basic blocks be removed in the results of LoopBase::getExitBlocks()?
Hi, all. I'm using void LoopBase::getExitBlocks (SmallVectorImpl< BlockT * > &ExitBlocks) const to get all exit blocks for a loop. The problem I find with this API is that it returns repetitive basic blocks in certain situations. Should repetitive basic blocks be removed? I have an example to show the problem. Following is the source code and the CFG is enclosed. int main() { int
2013 May 08
2
[LLVMdev] How to avoid loopverify failures after replacing the backedge with an edge(latchBB to exitBB) in a looppass?
Hi, I am writing a loop pass to replace the backedge with an edge from latch to exit. Now I just replace the terminator of latch with another BranchInst, and the loop will not be a loop after my pass. However, it turns out a failure of loopverify after executing my pass: opt: ~/llvm/llvm-trunk/include/llvm/Analysis/LoopInfoImpl.h:297: void llvm::LoopBase<N, M>::verifyLoop() const [with
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
2007 Nov 29
3
[LLVMdev] LLVM and OpenMP
On Nov 29, 2007, at 11:11 AM, Wojciech Matyjewicz wrote: > As you have noticed, loops aren't represented directly in the LLVM IR. > However, there are analysis passes which may be helpful to > "reconstruct" > them. For example: LoopInfo pass detects natural loops (as sets of > basic > blocks) and ScalarEvolution pass finds loop induction variables (and >
2007 Aug 24
3
[LLVMdev] Data Structure Analysis
I updated the latest "poolalloc" code and the problem seems to have been fixed. However, I am still having problem of running "poolalloc". After compilation finished, there are several dynamic libraries created (libpoolalloc_rt.so, libpoolalloc_fl_rt.so and LLVMDataStructure.so). I was not sure which one I should use so I just tried all of them with "opt -load".
2008 Aug 21
0
[LLVMdev] Dependence Analysis [was: Flow-Sensitive AA]
> Wojtek, > > Please see David's message below. Have you or can you check in your > code, perhaps as a project for now? That will allow us to start > looking at it and perhaps collaborating on it. Sure. For now, I am posting it as an attachment, because it does not build against the current SVN version. It is really basic (for example, it cannot produce distance vectors,
2008 Aug 20
4
[LLVMdev] Dependence Analysis [was: Flow-Sensitive AA]
Wojtek, Please see David's message below. Have you or can you check in your code, perhaps as a project for now? That will allow us to start looking at it and perhaps collaborating on it. --Vikram Associate Professor, Computer Science University of Illinois at Urbana-Champaign http://llvm.org/~vadve On Aug 20, 2008, at 3:05 PM, David Greene wrote: > On Wednesday 20 August 2008
2008 Aug 22
5
[LLVMdev] Dependence Analysis [was: Flow-Sensitive AA]
>However, there is one issue I have ignored - possibility of overflow in >the index expression. Suppose, we have such a loop: > for (i8 i = 0; i != 200; ++i) { > A[2 * i + 5] = ... > ... = A[2 * i + 3] > } >If both index expressions are evaluated in 8-bit arithmetic, >then the dependence equation should be solved in modular arithmetic: > 2 * i + 5 == 2 * (i +
2008 Mar 18
0
[LLVMdev] Array Dependence Analysis
Hi, > Cool! I think the most critical part of this is to get a good > interface for dependence analysis. There are lots of interesting > implementations that have various time/space tradeoffs. > > For example, it would be great if Omega was available as an option, > even if the compiler didn't use it by default. This argues for making > dependence analysis
2012 Apr 24
0
[LLVMdev] Should repetitive basic blocks be removed in the results of LoopBase::getExitBlocks()?
On Apr 19, 2012, at 10:43 PM, xiaoming gu <xiaoming.gu at gmail.com> wrote: > Hi, all. I'm using void LoopBase::getExitBlocks (SmallVectorImpl< BlockT * > &ExitBlocks) const to get all > exit blocks for a loop. The problem I find with this API is that it returns repetitive basic blocks in certain > situations. Should repetitive basic blocks be removed? Users
2007 Nov 28
0
[LLVMdev] LLVM on MinGW
SVN head LLVM and Clang built out of the box for me a week ago on MSYS/ MINGW, using the following files: MinGW-5.1.3.exe MSYS-1.0.10.exe msysDTK-1.0.1.exe bash-3.1-MSYS-1.0.11-1.tar.bz2 bison-2.3-MSYS-1.0.11.tar.bz2 coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2 flex-2.5.33-MSYS-1.0.11.tar.bz2 gawk-3.1.5-MSYS-1.0.11-snapshot.tar.bz2 regex-0.12-MSYS-1.0.11.tar.bz2 1. install these components 2.
2013 Jun 17
0
[LLVMdev] RFC - Profile Guided Optimization in LLVM
On Jun 17, 2013, at 7:03 AM, Benjamin Kramer <benny.kra at gmail.com> wrote: > > On 17.06.2013, at 15:56, Diego Novillo <dnovillo at google.com> wrote: > >> On 2013-06-15 16:39 , Benjamin Kramer wrote: >>> Do you want to take over this effort or should I poke more at it? >> >> Since you've already started, it's easier if you poke more at