similar to: [LLVMdev] Opt pass 'Canonicalize Induction Variables' not working

Displaying 20 results from an estimated 9000 matches similar to: "[LLVMdev] Opt pass 'Canonicalize Induction Variables' not working"

2012 Jan 16
0
[LLVMdev] Opt pass 'Canonicalize Induction Variables' not working
On 01/16/2012 01:19 PM, Pieter Custers wrote: > I am new to LLVM and I've a question about the optimization passes and > in particular about the loop transformation passes. I've setup the LLVM > tool-chain with Polly installed. > > The following example is causing problems with me: > http://llvm.org/docs/Passes.html#indvars > > The input is a .c file with the
2012 Jan 16
2
[LLVMdev] Opt pass 'Canonicalize Induction Variables' not working
Hello Tobi, Thank you for the quick reply. I updated my complete build suite with your script (http://polly.grosser.es/polly.sh). The make-test fails with some errors, the rest went smoothly; -- Exit Code: 1 Command Output (stderr): -- LLVM ERROR: Could not resolve external global address: stdout -- ******************** Testing Time: 10.01s ******************** Failing Tests (3): Polly ::
2012 Jan 16
0
[LLVMdev] Opt pass 'Canonicalize Induction Variables' not working
On 01/16/2012 03:37 PM, Pieter Custers wrote: > Hello Tobi, > > Thank you for the quick reply. > > I updated my complete build suite with your script (http://polly.grosser.es/polly.sh). The make-test fails with some errors, the rest went smoothly; > > -- > Exit Code: 1 > Command Output (stderr): > -- > LLVM ERROR: Could not resolve external global address: stdout
2012 Jan 16
1
[LLVMdev] Opt pass 'Canonicalize Induction Variables' not working
Hey Tobi, My CLang version is very old (1.0.2), I have manually installed the latest version from SVN and I am compiling LLVM again right now. Is it right that CLang is not in the standard LLVM repos (svn checkout http://llvm.org/svn/llvm-project/llvm/trunk) as indicated on http://polly.grosser.es/get_started.html? This are the instructions I followed to install my tools. I will get back to you
2013 Jul 14
0
[LLVMdev] Analysis of polly-detect overhead in oggenc
Tobi, it looks like this code is the problem: for (std::vector<Value *>::iterator PI = Pointers.begin(), PE = Pointers.end(); ;) { Value *V = *PI; if (V->getName().size() == 0) OS << "\"" << *V << "\""; else OS << "\"" << V->getName() <<
2013 Jul 14
5
[LLVMdev] Analysis of polly-detect overhead in oggenc
At 2013-07-14 13:20:42,"Tobias Grosser" <tobias at grosser.es> wrote: >On 07/13/2013 09:18 PM, Star Tan wrote: >> >> >> At 2013-07-14 02:30:07,"Tobias Grosser" <tobias at grosser.es> wrote: >>> On 07/13/2013 10:13 AM, Star Tan wrote: >>>> Hi Tobias, >>> >>> Hi Star, >[...] >>> Before we write a
2011 Oct 07
1
[LLVMdev] How to make Polly ignore some non-affine memory accesses
I add also the output of these commands: [hades at artemis examples]$ ./compile_ex.sh super_simple_loop Printing analysis 'Polly - Detect Scops in functions' for function 'main': [hades at artemis examples]$ modifying it in : #include <stdio.h> int main() { int A[1024]; int j, k=10; for (j = 0; j < 1024; j++) A[j] = k;
2011 Oct 08
0
[LLVMdev] How to make Polly ignore some non-affine memory accesses
On 10/07/2011 03:43 PM, Marcello Maggioni wrote: > 2011/10/7 Marcello Maggioni<hayarms at gmail.com>: >> Hi, >> >> for example this loop: >> >> #include<stdio.h> >> >> int main() >> { >> int A[1024]; >> int j, k=10; >> for (j = 1; j< 1024; j++) >> A[j] =
2016 Aug 25
3
Canonicalize induction variables
I just subscribed this group. This is my first time to post a question (not sure if this is a right place for discussion) after I have a brief look at LLVM OPT (dev trunk). I would expect loop simplification and induction variable canonicalization pass (IndVarSimplify pass) should be able to convert the following loops into a simple canonical form, i.e., there is a canonical induction variable
2016 Aug 25
4
Canonicalize induction variables
But even for a very simple loop: int test1 (int *x, int *y, int *z, int k) { int sum = 0; for (int i = 10; i < k; i++) { z[i] = x[i] / y[i]; } return sum; } The initial value of induction variable is not zero after compiling with -O3 -mcpu=power8 x.cpp -S -c -emit-llvm -fno-unroll-loops (see bottom of the email for IR) Also I can write somewhat more complicated loop where step
2011 Oct 22
5
[LLVMdev] How to make Polly ignore some non-affine memory accesses
I was trying the new feature you introduce about printing out the graphs, so I updated my version of llvm/clang/polly synchronizing them to the last version, but I get this error launching clang (also , I recently switched to MacOS X for development): $ clang not_so_simple_loop.c -O3 -Xclang -load -Xclang ${PATH_TO_POLLY_LIB}/LLVMPolly.dylib -mllvm -enable-polly-viewer -mllvm -enable-iv-rewrite
2011 Oct 03
4
[LLVMdev] How to make Polly ignore some non-affine memory accesses
Hi Tobias, thanks for the answer. I'll try to give a look to the code you pointed me to , and I'll try to make the modification myself. I'm new to LLVM and Polly, but the code of both seem clean and understandable, so I hope to be able to do it myself. In case I'll ask here for support :) Marcello 2011/10/1 Tobias Grosser <tobias at grosser.es>: > On 10/01/2011 03:26
2013 Jul 14
0
[LLVMdev] Analysis of polly-detect overhead in oggenc
I have found that the extremely expensive compile-time overhead comes from the string buffer operation for "INVALID" MACRO in the polly-detect pass. Attached is a hack patch file that simply remove the string buffer operation. This patch file can significantly reduce compile-time overhead when compiling big source code. For example, for oggen*8.ll, the compile time is reduced from
2013 Jul 14
2
[LLVMdev] Analysis of polly-detect overhead in oggenc
Hi Sebastian, Yes, you have pointed an important reason. If we comment this source code you have listed, then the compile-time overhead for oggenc*8.ll can be reduced from 40.5261 ( 51.2%) to 20.3100 ( 35.7%). I just sent another mail to explain why polly-detect pass leads to significant compile-time overhead. Besides the reason you have pointed, another reason is resulted from those string
2011 Oct 23
0
[LLVMdev] How to make Polly ignore some non-affine memory accesses
On 10/22/2011 08:41 AM, Marcello Maggioni wrote: > I was trying the new feature you introduce about printing out the > graphs, so I updated my version of llvm/clang/polly synchronizing them > to the last version, but I get this error launching clang (also , I > recently switched to MacOS X for development): > > $ clang not_so_simple_loop.c -O3 -Xclang -load -Xclang >
2012 Oct 31
3
[LLVMdev] piping into lli broken on darwin
While testing llvm/polly svn on x86_64-apple-darwin10/11/12, I noticed that three darwin specific polly-test regressions exist. At least part of these failures appear to be due to lli on darwin not accepting piped input such that the test... opt -load /sw/src/fink.build/llvm32-3.2-0/llvm-3.2/build/lib/LLVMPolly.so -basicaa -polly-prepare -polly-region-simplify -O3
2013 Aug 15
4
[LLVMdev] [Polly] Analysis of extra compile-time overhead for simple nested loops
Hi all, I have investigated the 6X extra compile-time overhead when Polly compiles the simple nestedloop benchmark in LLVM-testsuite. (http://188.40.87.11:8000/db_default/v4/nts/31?compare_to=28&baseline=28). Preliminary results show that such compile-time overhead is resulted by the complicated polly-dependence analysis. However, the key seems to be the polly-prepare pass, which introduces
2017 Jul 01
2
loop induction variables at IR level
Hi, I was looking at trying to get loop induction variable at IR level. LLVM documentation mentioned indvars pass and getCanonicalInductionVariable() to get them, I tried running the indvars pass and then a custom pass which iterates through loops and uses the function to obtain variable for a simple loop program. But the API returns null. I also read in similar posts that the indvars pass is not
2011 Jan 19
2
[LLVMdev] induction variable computation not preserving scev
On 19 January 2011 13:01, Dan Gohman <gohman at apple.com> wrote: > > On Jan 18, 2011, at 12:32 AM, Nick Lewycky wrote: > > > Hi, > > > > I tracked down a bug in indvars where we weren't updating SCEV properly. > The attached patch shows the fix to this bug with a testcase, but it also > causes five new test failures. > > Indvars isn't
2003 Sep 09
2
[LLVMdev] induction variables
Hello LLVM, Can you suggest a good way to use the loops and induction variable passes to map loop exiting BasicBlocks to InductionVariables. That is, can we use these tools to identify the loop condition. What i have tried Function Pass: foreach BB if(terminal is loop exit of containing loop) trace back to instruction producing the cond that the branch branches on -