search for: ssapre

Displaying 20 results from an estimated 23 matches for "ssapre".

2008 Apr 03
3
[LLVMdev] choice between SSAPRE and bitvector aporach
Hi LLVMers, I am a PHD student in CS dept in UIUC, I am doing a project for Vikram's course, it is about PRE. I would like to know why you didn't choose SSAPRE in LLVM, since it seems to be more suitable for LLVM (it can operate directly on SSA form and avoid the conversion between SSA and bit-vector). Can anyone tell me the reason? Xuehai
2011 Nov 25
2
[LLVMdev] SSAPRE for LLVM
i wish to develop llvm SSAPRE compiler optimization for my engineering academic project .for,that i have a sample c++ program and its .ll file.anyone have SSAPRE implementation in c++. if anyone have, please give me that implementation immediately. joseykollam at gmail.com josey @ 9895685353 elw technologies cochin ----------...
2011 Nov 25
0
[LLVMdev] SSAPRE for LLVM
On Fri, Nov 25, 2011 at 6:41 AM, josey's...JJ frm kollam nw @ calicut.... <joseykollam at gmail.com> wrote: > i wish to develop llvm SSAPRE compiler optimization for my engineering > academic project .for,that i have a sample c++ program and its .ll > file.anyone have SSAPRE implementation in c++. if anyone have, please give > me that implementation immediately. In the old version of LLVM, the GVN pass also does PRE. But by d...
2010 Aug 17
1
[LLVMdev] Any updates on SSAPRE project status ?
The project SSAPRE is listed in the LLVM website, and the related paper indicated the implementation was almost complete in 2002. Since I do not see the implementation in the current LLVM source base, could anyone provide an update on the status of the project ? Thanks. Xiangyun Kong
2011 Nov 25
0
[LLVMdev] LLVM OPTIMIZATION using SSAPRE
hello all, i wish to develop llvm ssapre compiler optimization for my engineering academic project .for,that i have a sample c++ program and its .ll file.anyone have ssapre implementation in c++. if anyone have, please give me that implementation immediately. -- joseykollam at gmail.com josey @ 9895685353 elw technologies cochin ------...
2008 Apr 04
0
[LLVMdev] choice between SSAPRE and bitvector aporach
On Apr 2, 2008, at 10:11 PM, Xuehai Qian wrote: > Hi LLVMers, > I am a PHD student in CS dept in UIUC, I am doing a project for > Vikram's course, it is about PRE. I would like to know why you didn't > choose SSAPRE in LLVM, since it seems to be more suitable for LLVM (it > can operate directly on SSA form and avoid the conversion between SSA > and bit-vector). Can anyone tell me the reason? Hi Xuehai, > If I remember correctly, there were several details that the paper assumed that made adapting...
2008 Apr 04
3
[LLVMdev] choice between SSAPRE and bitvector aporach
...g <isanbard at gmail.com> wrote: > On Apr 2, 2008, at 10:11 PM, Xuehai Qian wrote: > > Hi LLVMers, > > I am a PHD student in CS dept in UIUC, I am doing a project for > > Vikram's course, it is about PRE. I would like to know why you didn't > > choose SSAPRE in LLVM, since it seems to be more suitable for LLVM (it > > can operate directly on SSA form and avoid the conversion between SSA > > and bit-vector). Can anyone tell me the reason? > > Hi Xuehai, > > > > If I remember correctly, there were several details that t...
2008 Apr 04
0
[LLVMdev] choice between SSAPRE and bitvector aporach
...> wrote: >> On Apr 2, 2008, at 10:11 PM, Xuehai Qian wrote: >>> Hi LLVMers, >>> I am a PHD student in CS dept in UIUC, I am doing a project for >>> Vikram's course, it is about PRE. I would like to know why you >>> didn't >>> choose SSAPRE in LLVM, since it seems to be more suitable for LLVM >>> (it >>> can operate directly on SSA form and avoid the conversion between >>> SSA >>> and bit-vector). Can anyone tell me the reason? >> >> Hi Xuehai, >>> >> >> If I rem...
2008 Apr 05
2
[LLVMdev] choice between SSAPRE and bitvector aporach
...2, 2008, at 10:11 PM, Xuehai Qian wrote: > >>> Hi LLVMers, > >>> I am a PHD student in CS dept in UIUC, I am doing a project for > >>> Vikram's course, it is about PRE. I would like to know why you > >>> didn't > >>> choose SSAPRE in LLVM, since it seems to be more suitable for LLVM > >>> (it > >>> can operate directly on SSA form and avoid the conversion between > >>> SSA > >>> and bit-vector). Can anyone tell me the reason? > >> > >> Hi Xuehai, > &...
2008 Apr 11
0
[LLVMdev] choice between SSAPRE and bitvector aporach
On Apr 4, 2008, at 8:28 PM, Daniel Berlin wrote: > On Fri, Apr 4, 2008 at 5:58 PM, Vikram S. Adve <vadve at cs.uiuc.edu> > wrote: >> >> >> Dan, >> >> Doesn't the paper also assume the invariant that phi operands are >> effectively dead after the Phi, which is true right after SSA is >> constructed, but potentially not after
2013 Nov 04
1
[LLVMdev] DominanceFrontier/PostDominanceFrontier for PRE
...rite a PRE pass, that's easy >> enough without dominance frontiers. > > > I simply want to write a PRE pass to get a better understanding of the > transformation. Any tips on where to get started (beyond the papers you > provided) for someone -new- to the game? Okay, well, SSAPRE is actually a fairly hard paper to implement correctly if this is your first go-around. If you want something that gives you an intro to PRE (though the formulation is not "standard" compared to most papers), take a look at http://researcher.watson.ibm.com/researcher/files/us-akundu/thes...
2013 Nov 03
0
[LLVMdev] DominanceFrontier/PostDominanceFrontier for PRE
...s, that's easy > enough without dominance frontiers. > I simply want to write a PRE pass to get a better understanding of the transformation. Any tips on where to get started (beyond the papers you provided) for someone -new- to the game? > > If you want to implement the original SSAPRE, i suggest looking at > http://jcse.kiise.org/posting/2-3/jcse_2-3_31.pdf > > Thanks - I will read through this paper. Chris -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131103/5d26eddf/attachmen...
2013 Nov 03
4
[LLVMdev] DominanceFrontier/PostDominanceFrontier for PRE
...ance frontiers, but in all of those cases, they are really using it as part of a phi-placement algorithm. You could substitute any valid phi placement algorithm for that portion of the algorithm (including any of the linear time phi placements, or llvm's current phi placement). For example, in SSAPRE, the part called DF(phis) could be replaced with such an algorithm (though var phis could not). As for a "better" way to implement PRE, it depends on what algorithm you want to use. If you just want to write a PRE pass, that's easy enough without dominance frontiers. If you want to...
2017 Apr 05
2
[NewGVN] Plan for GVNPRE?
...kr4j4lEwZCz1sGk-DR39Ts&e=> Wwhen we see op of phis, we use fake instructions to treat it like we saw ops in the predecessor blocks, and see whether the fake phi we build ends up with real instructions as for the operands. if it does, we insert it. Note this computation is similar to the one SSAPRE does to determine whether anything is redundant. Once you do this, i believe all initial partial redundancies (IE not second order effects) in the program will be of a form of a fake phi with one real leader, one fake., recursively [1] Then, again, you perform a similar sparse dataflow that SSAPRE...
2017 Apr 04
2
[NewGVN] Plan for GVNPRE?
Hello, In some of our internal benchmarks, I observe that LLVM performs worse than GCC because LLVM fails to perform PRE when GCC can. I hope this problem goes away when NewGVN equipped with PRE, and wonder if anyone has an idea about the status of PRE on top of NewGVN. Thanks! Best, Taewook -------------- next part -------------- An HTML attachment was scrubbed... URL:
2010 Jun 07
0
[LLVMdev] Converting into SSA form
E-path PRE requires the program in SSA form like SSAPRE algorithm. Then it finds the eliminatable path (e-path) for an expression and converts partially redundant to fully redundant and removes redundancy Chayan On Mon, Jun 7, 2010 at 1:58 PM, Eli Friedman <eli.friedman at gmail.com> wrote: > On Sun, Jun 6, 2010 at 8:56 PM, Chayan Sarkar <...
2017 Apr 05
2
[NewGVN] Plan for GVNPRE?
...kr4j4lEwZCz1sGk-DR39Ts&e=> Wwhen we see op of phis, we use fake instructions to treat it like we saw ops in the predecessor blocks, and see whether the fake phi we build ends up with real instructions as for the operands. if it does, we insert it. Note this computation is similar to the one SSAPRE does to determine whether anything is redundant. Once you do this, i believe all initial partial redundancies (IE not second order effects) in the program will be of a form of a fake phi with one real leader, one fake., recursively [1] Then, again, you perform a similar sparse dataflow that SSAPRE...
2013 Aug 06
1
[LLVMdev] Potential SimplifyCFG optimization; hammock to diamond transformation
...RE, the FP math would then get placed as you want as well. { double a, b, c; for (...) { ... if (cond) { a = 0.0; b = 0.1; c = 0.2; } else { a = lots of FP math; b = lots of FP math; c = lots of FP math; } ... } } Does a similar optimization exist? SSAPRE existed in LLVM but has been removed. PRE is one of those optimizations that are simply more efficient and also sometimes more effective as a bitvector dataflow optimization than as an SSA algorithm. If not, would the SimplifyCFG pass be an appropriate home for such an optimization? If done th...
2013 Nov 02
0
[LLVMdev] DominanceFrontier/PostDominanceFrontier for PRE
Hi, I'm not able to answer your question. I'm wondering if you can create your own if it is just your own hobby project, or a project that you don't have to commit to the main repository. Creating DominatorFrontier seems to be expensive. However, if you are using bit-vector to represent a basic-block-set, I guess it can be done in linear time in practice. Following is the
2013 Nov 02
2
[LLVMdev] DominanceFrontier/PostDominanceFrontier for PRE
Hi all, Does anyone know how to recreate the DominanceFronter and PostDominanceFrontier structures using the API of the latest release? To my knowledge, these are needed to implement a PRE pass (as done in the past<https://llvm.org/svn/llvm-project/llvm/tags/RELEASE_13/lib/Transforms/Scalar/PRE.cpp>), but they were removed a while ago for efficiency reasons. Is there a better way to