search for: hammock

Displaying 13 results from an estimated 13 matches for "hammock".

Did you mean: hammocks
2013 Aug 06
1
[LLVMdev] Potential SimplifyCFG optimization; hammock to diamond transformation
Message: 6 Date: Tue, 6 Aug 2013 10:46:19 -0400 From: Chad Rosier <chad.rosier at gmail.com<mailto:chad.rosier at gmail.com>> To: llvmdev <llvmdev at cs.uiuc.edu<mailto:llvmdev at cs.uiuc.edu>> Subject: [LLVMdev] Potential SimplifyCFG optimization; hammock to diamond transformation Message-ID: <CAMo3wbR6x1wBzb17=GrkERV7kvzx2RdpuheFzyxkQEs3BBvKaw at mail.gmail.com<mailto:CAMo3wbR6x1wBzb17=GrkERV7kvzx2RdpuheFzyxkQEs3BBvKaw at mail.gmail.com>> Content-Type: text/plain; charset="iso-8859-1" All, I have some code that looks like the...
2013 Aug 06
0
[LLVMdev] Potential SimplifyCFG optimization; hammock to diamond transformation
...> > ** ** > > Cheers, > Dave**** > > ** ** > > *From:* llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] *On > Behalf Of *Chad Rosier > *Sent:* 06 August 2013 15:46 > *To:* llvmdev > *Subject:* [LLVMdev] Potential SimplifyCFG optimization; hammock to > diamond transformation**** > > ** ** > > All, > I have some code that looks like the following: > > { > double a, b, c; > for (...) { > ... > a = lots of FP math; > b = lots of FP math; > c = lots of FP math; > if (cond) { &g...
2013 Aug 06
3
[LLVMdev] Potential SimplifyCFG optimization; hammock to diamond transformation
All, I have some code that looks like the following: { double a, b, c; for (...) { ... a = lots of FP math; b = lots of FP math; c = lots of FP math; if (cond) { a = 0.0; b = 0.1; c = 0.2; } ... } } Could we not convert the hammock into a diamond and move the initial computation of a, b, and c into the else block. Something like this: { 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 m...
2013 Aug 06
1
[LLVMdev] Potential SimplifyCFG optimization; hammock to diamond transformation
...gt; double a, b, c; > for (...) { > ... > a = lots of FP math; > b = lots of FP math; > c = lots of FP math; > if (cond) { > a = 0.0; > b = 0.1; > c = 0.2; > } > ... > } > } > > Could we not convert the hammock into a diamond and move the initial computation of a, b, and c into the else block. Something like this: > > { > double a, b, c; > for (...) { > ... > if (cond) { > a = 0.0; > b = 0.1; > c = 0.2; > } else { > a = lots of FP...
2013 Aug 06
0
[LLVMdev] Potential SimplifyCFG optimization; hammock to diamond transformation
...a = lots of FP math; > > b = lots of FP math; > > c = lots of FP math; > > if (cond) { > > a = 0.0; > > b = 0.1; > > c = 0.2; > > } > > ... > > } > > } > > > > Could we not convert the hammock into a diamond and move the initial > computation of a, b, and c into the else block. Something like this: > > > > { > > double a, b, c; > > for (...) { > > ... > > if (cond) { > > a = 0.0; > > b = 0.1; > > c =...
2004 Apr 05
1
[LLVMdev] CFG
Alright, I can now see my hammocks being translated into phi nodes. Thanx for the info. I now have a question regarding the analyze tool. I noticed it has a -help option. I tried using the -print-cfg option. It creates a cfg.main.dot file. Is there a graphical tool I can use to view this graph ? Thanx, -- Vinay S. Belgaumkar
2017 Aug 04
3
[RFC][InlineCost] Modeling JumpThreading (or similar) in inline cost model
...esn't actually help, AFAICT). My first attempt at solving this problem did something similar to what is done in JumpThreadingPass::ProcessImpliedCondition(). Specifically, it tried to prove that dst_ptr was non-null based on a dominating condition. The only tricky parts were to deal with hammocks/diamonds when walking up the CFG (See: https://reviews.llvm.org/D36287 as a concrete example of how I proposed to get an immediate dominator without the domtree) and to account for the fact that dst_ptr and a_ptr are equal. I'm pretty sure I can get this approach to work, however, I'm...
2012 Feb 08
0
[LLVMdev] SelectionDAG scalarizes vector operations.
...tell you why it did not vectorize; e.g., if some instruction was not available in vector form. So the vectorizer takes care of any desired unrollings on its own, and does not rely on a separate unroll pass. It does rely on a separate if-conversion pass especially designed to eliminate if-then-else hammocks in relevant regions (loops) right before the vectorizer kicks in. This part may require undoing, when an if-converted loop is not vectorized and the target does not support the resulting predicated scalar instructions. Hope this helps. Had the pleasure of working with the GCC autovect guys (or ra...
2017 Dec 02
0
nouveau: refcount_t splat on 4.15-rc1 on nv50
...01 01 e8 c8 00 8d ff <0f> ff eb be 31 f6 48 c7 c7 a0 14 c7 82 e8 a6 7d 0d 00 eb 91 0f [ 10.458480] ---[ end trace 08f29138ff4259e7 ]--- Appears to be benign: no obvious breakage afterwards. I did not yet bisect -- would you want me to? Meow! -- < darkling> When all you have is a hammock, every problem looks like a nap.
2017 Aug 07
3
[RFC][InlineCost] Modeling JumpThreading (or similar) in inline cost model
...P doesn't actually help, AFAICT). My first attempt at solving this problem did something similar to what is done in JumpThreadingPass::ProcessImpliedCondition(). Specifically, it tried to prove that dst_ptr was non-null based on a dominating condition. The only tricky parts were to deal with hammocks/diamonds when walking up the CFG (See: https://reviews.llvm.org/D36287 as a concrete example of how I proposed to get an immediate dominator without the domtree) and to account for the fact that dst_ptr and a_ptr are equal. I'm pretty sure I can get this approach to work, however, I'm not...
2017 Aug 04
4
[RFC][InlineCost] Modeling JumpThreading (or similar) in inline cost model
...My first attempt at solving this problem did something similar to > what is done in JumpThreadingPass::ProcessImpliedCondition(). > Specifically, it tried to prove that dst_ptr was non-null based on > a dominating condition. The only tricky parts were to deal with > hammocks/diamonds when walking up the CFG (See: > https://reviews.llvm.org/D36287 <https://reviews.llvm.org/D36287> > as a concrete example of how I proposed to get an immediate > dominator without the domtree) and to account for the fact that > dst_ptr and a_ptr are equal...
2012 Feb 08
5
[LLVMdev] SelectionDAG scalarizes vector operations.
Hi Dave, >> We generate xEXT nodes in many cases. Unlike GCC which vectorizes >> inner loops, we vectorize the implicit outermost loop of data-parallel >> workloads (also called whole function vectorization). We vectorize >> code even if the user uses xEXT instructions, uses mixed types, etc. >> We choose a vectorization factor which is likely to generate more
2017 Aug 07
2
[RFC][InlineCost] Modeling JumpThreading (or similar) in inline cost model
...similar to what is done in > JumpThreadingPass::ProcessImpliedCondition(). > Specifically, it tried to prove that dst_ptr was > non-null based on a dominating condition. The only > tricky parts were to deal with hammocks/diamonds when > walking up the CFG (See: > https://reviews.llvm.org/D36287 > <https://reviews.llvm.org/D36287> as a concrete > example of how I proposed to get an immediate > dominator without the...