search for: unrollloops

Displaying 20 results from an estimated 40 matches for "unrollloops".

Did you mean: unrollloop
2008 May 14
2
[LLVMdev] where's UnrollLoop.h
I'm building llvm in MSVS 2008. LoopUnroll.cpp includes UnrollLoop.h line 23: #include "llvm/Transforms/Utils/UnrollLoop.h" but there's no UnrollLoop.h anywhere to be found. My svn tree is synced to TOT. What am I missing?
2008 May 09
0
[LLVMdev] [PATCH] Split LoopUnroll pass into mechanism and policy
Hi All, the attached patch performs the splitting in the proposed manner. before applying the patch, please execute svn cp lib/Transforms/Scalar/LoopUnroll.cpp lib/Transforms/Utils/UnrollLoop.cpp to make the patch apply and preserve proper history. Transforms/Utils/UnrollLoop.cpp contains the unrollLoop function, which is now used by the LoopUnroll pass. I've also moved the
2008 May 07
8
[LLVMdev] [PATCH] Split LoopUnroll pass into mechanism and policy
Hello Matthijs, Separating mechanism from policy is a good thing for the LoopUnroll pass. Instead of moving the policy to a subclass though, I think it'd be better to move the mechanism, the unrollLoop function, out to be a standalone utility function, with the LoopInfo object passed in explicitly. FoldBlockIntoPredecessor would also be good to make into a standalone utility function, since
2008 May 09
3
[LLVMdev] [PATCH] Split LoopUnroll pass into mechanism and policy
Hello Matthijs, On May 9, 2008, at 3:47 AM, Matthijs Kooijman wrote: > Hi All, > > the attached patch performs the splitting in the proposed manner. > before applying the patch, please execute > svn cp lib/Transforms/Scalar/LoopUnroll.cpp lib/Transforms/Utils/ > UnrollLoop.cpp > to make the patch apply and preserve proper history. > > Transforms/Utils/UnrollLoop.cpp
2012 Jun 05
2
[LLVMdev] How to unroll loops in opposite loop nest order
I am trying to implement loop unrolling in a context, where lots of constant propagation has taken place. Unrolling an outer loop might make an inner loop have constant bounds, therefore I want to process the loops outside in, i.e. from parent loops to nested loops. Unfortunately the standard loop pass manager performs loop passes inside out, i.e. from nested loops to parent loops, thereby missing
2008 Aug 11
2
[LLVMdev] Applying different Optimizations for different Functions - Questions?
...nModule function I have written: bool ComplNewBBFuncs::runOnModule(Module &M) { Function *Main = M.getFunction("main"); if (Main == 0) { cerr << "!!! No Main Function" << std::endl; return false; } //Determine each Function LoopPass * UnrollLoops; FunctionPass *DeadStoreElim; LPPassManager *LPPM; Function *CurFunc1 = M.getFunction("NewFunction1"); Function &Current1 = (*CurFunc1); Function *CurFunc2 = M.getFunction("NewFunction2"); Function &Current2 = (*CurFunc2); cerr << "Dead Store E...
2008 May 07
0
[LLVMdev] [PATCH] Split LoopUnroll pass into mechanism and policy
Hi Dan, > This should still make it easy to write new unrolling passes with > custom heuristics, but it would also be more flexible for passes to > do unrolling in combination with other transformations. Agreed. To shed some light on my specific requirements, I am working with an architecture that has only limited support for loops and control flow. This means that loop unrolling is not
2012 Jun 05
0
[LLVMdev] How to unroll loops in opposite loop nest order
On Jun 5, 2012, at 3:20 AM, Martin Apel <martin.apel at SIMPACK.de> wrote: > I am trying to implement loop unrolling in a context, where lots of constant propagation has taken place. > Unrolling an outer loop might make an inner loop have constant bounds, therefore I want to process the loops > outside in, i.e. from parent loops to nested loops. > Unfortunately the standard loop
2008 May 09
0
[LLVMdev] [PATCH] Split LoopUnroll pass into mechanism and policy
Hi Dan, > I'm not sure that's very pretty either :-}. My sense is that it's > better to just duplicate those few lines. Then I'll just leave it at that. > An assert at the end that checks that if the loop > wasn't completely unrolled that it's still isLCSSAForm would be a > good addition in any case. Good idea. > I don't think it's desirable
2010 Jul 01
2
[LLVMdev] Fail to unroll loop on simple examples.
Hi all, I have tried to use the loop-unroll pass on a large example, but without success. So I have tried on smaller examples, and I did not get more success. My simplest example is attached. It comes from this C code (using llvm-gcc, but similar result with clang): int main (int argc, char *argv[]) { int i; for (i = 0; i!=5; ++i) {} return 0; } I use this command (version 2.8svn, from
2010 Jun 04
0
[LLVMdev] Speculative phi elimination at the top of a loop?
Hi, On Fri, Jun 4, 2010 at 5:18 AM, Pekka Nikander <pekka.nikander at nomadiclab.com> wrote: >  Would the best way be to add an option to -loop-unroll, and hack away at lib/Transforms/Utils/LoopUnroll.cpp? Instead, the better alternative is to write another pass similar to LoopUnrollPass.cpp (say LoopPeelPass.cpp) and add new option -loop-peel. The new pass could use llvm::UnrollLoop()
2014 Jan 15
3
[LLVMdev] Loop unrolling a function
Hi all, I'm attempting to perform loop unrolling on a single function using the C++ API. Maybe I missed something in the docs, but I cannot figure out a way to do this. The function I'm working with is very simple, containing a single for loop and not much else. I compiled the function to IR using clang with no optimizations enabled. My initial plan was to first run the IndVarSimplify
2008 May 07
1
[LLVMdev] [PATCH] Split LoopUnroll pass into mechanism and policy
On May 7, 2008, at 1:08 AM, Matthijs Kooijman wrote: > Hi Dan, > >> This should still make it easy to write new unrolling passes with >> custom heuristics, but it would also be more flexible for passes to >> do unrolling in combination with other transformations. > Agreed. > > To shed some light on my specific requirements, I am working with an > architecture
2010 Jul 01
0
[LLVMdev] Fail to unroll loop on simple examples.
[I am a newcomer to llvm, so don't believe me.] Hi Claude, I added -debug to the command line in an attempt to study your example, and got out this: Loop Unroll: F[main] Loop %bb1 Loop Size = 4 Can't unroll; loop not terminated by a conditional branch. The source code for that is on line 116 (or so) in lib/Transforms/Utils/LoopUnroll.cpp Based on a quick look at the source code,
2012 Aug 06
0
[LLVMdev] How to call some transformation passes (LoopRotate and LoopUnroll) from my own pass
On Aug 6, 2012, at 6:04 AM, Jorge Navas <navas at comp.nus.edu.sg> wrote: > > Hello, > > I wrote my own pass which needs to do some loop unrolling. > > I can perform loop unrolling via opt: > > opt -mem2reg -loops -loop-simplify -loop-rotate -lcssa -loop-unroll > -unroll-count=50 mytest.bc -o mytest.bc > > This command works perfectly. > >
2008 May 21
4
[LLVMdev] 2.3 Pre-release available for testing
>I just sent a reply to Razvan with 3 patches that I think should be merged >into the release branch. I want to keep it somewhat in sync with mainline. >Can you try applying those 3 patches and let me know if it builds for you >and what version of MSVC you have? It doesn't build. first problem is patch 51098 that adds lib\VMCore\Use.cpp and lib\Transforms\Utils\UnrollLoop.cpp
2017 Feb 01
2
Strange opt error in Value ("replaceAllUses of value with new value of different type!" assertion failure)
Hello. I'm getting the following error after adding some extra instrumentation in a module (LoopVectorize.cpp ) due to a bug in Value::replaceAllUsesWith (see more comments of mine below): Value::replaceAllUsesWith(New = i16* inttoptr (i16 51 to i16*)), this = %VectorGep = getelementptr i16, i16* inttoptr (i16 51 to i16*), <128 x i64> zeroinitializer, !dbg !17 ; this
2014 Jan 15
2
[LLVMdev] Loop unrolling a function
The loop rotation pass does modify the function, which I'm guessing means that a FunctionPassManager can be used to run LoopPasses (this is not obvious to me after looking through the FunctionPassManager code). Unfortunately none of the other passes I'm using (ScalarEvolution, LCSSA, IndVarSimplify, and LoopUnroll) appear to have an effect. I verified that the function can be loop
2012 Apr 09
3
[LLVMdev] How to instrument a this function using insertBefore instruction???
Hi all, Im trying to instrument this hello function right before the instruction that call the "puts" function(the source code is as follow). Now I can compile the pass without errors, but when run the pass with opt tool, it broke down. The diagnose is something like Referencing function in another module! %CallCheck = call i32 @fib() Broken module found, compilation aborted! Does
2010 Jun 04
5
[LLVMdev] Speculative phi elimination at the top of a loop?
I am working on heavily optimising unusually static C++ code, and have encountered a situation where I basically want an optimiser that would speculatively unroll a loop to see if the first round of the loop could be optimised further. (I happen to know that it is possible.) The previous optimisations that produce the loop in the first place already do a magical job (relying heavily on constant