Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] ScalarEvolution, HowManyLessThans question for step > 1"
2017 Aug 09
2
[ScalarEvolution][SCEV] no-wrap flags dependent on order of getSCEV() calls
Hi,
On Tue, Aug 8, 2017 at 12:58 PM, Friedman, Eli <efriedma at codeaurora.org> wrote:
> Oh, I see... yes, we do stupid things involving mutating NoWrap flags after
> a SCEV is created. (grep for setNoWrapFlags in ScalarEvolution.cpp.)
That's really a compile time hack -- we defer some expensive tricks to
prove nsw/nuw on an add recurrences to when we've been asked to
2016 Jun 30
1
Regarding ScalarEvolution's loop backedge computation
Hi Pankaj,
Chawla, Pankaj via llvm-dev wrote:
> It looks like ScalarEvolution bails out of loop backedge computation if
> it cannot prove the IV stride as either positive or negative (based on
> loop control condition). I think this logic can be refined for signed
IVs.
>
> Consider this simple loop-
>
> void foo(int *A, int n, int s) {
>
> int i;
>
>
2016 Jun 29
3
Regarding ScalarEvolution's loop backedge computation
Hi,
It looks like ScalarEvolution bails out of loop backedge computation if it cannot prove the IV stride as either positive or negative (based on loop control condition). I think this logic can be refined for signed IVs.
Consider this simple loop-
void foo(int *A, int n, int s) {
int i;
for(i=0; i<n; i += s) {
A[i]++;
}
}
The IV of this loop has this SCEV form-
2017 Aug 14
2
[ScalarEvolution][SCEV] no-wrap flags dependent on order of getSCEV() calls
Hi Geoff,
On Wed, Aug 9, 2017 at 8:58 AM, Geoff Berry <gberry at codeaurora.org> wrote:
> On 8/8/2017 8:38 PM, Sanjoy Das wrote:
>>
>> Hi,
>>
>> On Tue, Aug 8, 2017 at 12:58 PM, Friedman, Eli <efriedma at codeaurora.org>
>> wrote:
>>>
>>> Oh, I see... yes, we do stupid things involving mutating NoWrap flags
>>> after
2017 Aug 14
2
[ScalarEvolution][SCEV] no-wrap flags dependent on order of getSCEV() calls
> On Aug 14, 2017, at 7:35 AM, Geoff Berry <gberry at codeaurora.org> wrote:
>
> Hi Sanjoy,
>
> [adding Adam since I believe he added the original FIXME to preserve SCEV
> in LoopDataPrefetch]
For record, that wasn’t me. It was there from the beginning when Hal added the PPC-specific pass.
Adam
>
> On 8/14/2017 1:36 AM, Sanjoy Das wrote:
>> Hi Geoff,
2012 Jun 26
4
ActionView::Template::Error (undefined method `strftime' for nil:NilClass)
Hello, I''m a newbie. I need help resolving this issue. I recently added a
pdf to the newsletter admin section of the website and now I can no longer
view page 2 of the list of pdf''s. Nor can I login to see the newsletters as
a student. I''m using Ruby 1.9.3, Rails 3.2.1.
Here''s the information from the log file.
ActionView::Template::Error (undefined
2012 Jun 25
1
ActionView::Template::Error (undefined method `strftime' for nil:NilClass):
Hello, I''m a newbie. I need help resolving this issue. I recently added a
pdf to the newsletter admin section of the website and now I can no longer
view page 2 of the list of pdf''s. Nor can I login to see the newsletters as
a student. I''m using Ruby 1.9.3, Rails 3.2.1.
Here''s the information from the log file.
ActionView::Template::Error (undefined
2006 Oct 19
2
OT :JavascriptSortableTables
I found this on the rails wiki
http://www.kryogenix.org/code/browser/sorttable/
Looked farily easy, class and id for the table. Dropped the JS in to
application.js.
Problem is it''s putting the sort link on the first row of data and not on
<thead>
Anyone know how to fix it ?
Here''s a bit of my table:
<table class="sortable" id="poso">
2017 Aug 08
2
[ScalarEvolution][SCEV] no-wrap flags dependent on order of getSCEV() calls
On 8/8/2017 1:37 PM, Friedman, Eli wrote:
> On 8/8/2017 10:22 AM, Geoff Berry via llvm-dev wrote:
>> Hi all,
>>
>> I'm looking into resolving a FIXME in the LoopDataPrefetch (and FalkorMarkStridedAccesses) pass by marking both of these passes as preserving the ScalarEvolution analysis. Unfortunately, when this change is made, LSR will generate different code. One of the
2007 Sep 23
1
Selecting Links with their parent class attribute?
Hi all,
Trying to figure out a quick way to do something. I have a yahoo groups
list, and it has listings that look like this:
</td></tr>
<tr><td colspan="2" class="ygrp-g">
<span class="ygrp-nowrap">
<em><a href="/group/freecycledc/">freecycledc</a></em>
</span>
<a
2016 Apr 10
2
ScalarEvolution "add nsw" question
Hello,
I was wondering under which circumstances ScalarEvolution will propagate
the no wrap flags from binary operators. In particular I looked at
non-loop carried code, e.g., as in the following function:
int add(int x, int y) { return x + y; }
for which clang uses an "add nsw" instruction but ScalarEvolution does
not propagate this information. The -analyze output looks like this:
2006 Jan 21
5
How do you deal with non-model property form values
I have a User ActiveRecord model that has email and password properties. I
want to build a login for that has a "remember me" option. My view looks
like this:
<% @page_title = "Login" -%>
<%= error_messages_for ''user'' %>
<%= form_tag %>
<table>
<tr>
<td align="right" width="1%"
2009 May 05
1
Rcompression and Java Deflator
(this may be a duplicate post since I attached a file to the previous try...sorry about that)
Below are the first few lines of a zlib compressed byte array written from Java with the Deflator class.
> readBin("row_1",raw(),10000000)
[1] 4c 45 50 e2 49 d5 86 bc 48 a1 32 5d 49 9d f5 90 48 e0 14 33 49 8f 54 6a 49 77 c9 48 48 d9 ec 56 47 91 48 f0 47 25 56 ef 47 b8 f5 7b 46 35 25 00
2016 Apr 10
2
ScalarEvolution "add nsw" question
Hey Sanjoy,
Thanks for the quick repsonse.
On 04/10, Sanjoy Das wrote:
> [+CC Bjarke who wrote getNoWrapFlagsFromUB + related bits]
Also thanks.
> One fundamental reason why we cannot reason about NoWrap flags in SCEV
> for arithmetic outside of loops is to avoid issues like this:
>
> if (cond) {
> val[x +nsw y] = 42;
> } else {
> val[x + y] = 42;
> }
>
>
2018 Nov 27
2
ScalarEvolution class returns no valid loop exit count
Hi,
I have problems to estimate the loop exit count of a simple loop with the
ScalarEvolution class.
simple loop:
......
int a = 0;
for(int i; i < 10; ++i){
a = a + 1;
};
......
For the loop analyzation I use the ScalarEvolution class with the following
initialization:
......
void analysis(Function* func)
DominatorTree DT = DominatorTree();
DT.recalculate(*func);
2016 Mar 04
3
vignette index
Dear helpers,
I have multiple vignette files for a package, and I would like to have the "right" order of these files when displayed online. For instance, see below:
https://cran.r-project.org/web/packages/bst/index.html
The order of vignette links on CRAN is different from what I hoped for:
> vignette(package="bst")
Vignettes in package 'bst':
pros
2018 Jan 26
0
Late setting of SCEV NoWrap flags does bad with cache
On Thu, Jan 25, 2018 at 9:55 PM, Maxim Kazantsev <max.kazantsev at azul.com> wrote:
> I don't really believe that option 2 may work just because even if we recalculate the range for this add recurrency, there are already its derivatives with cached ranges (the most obvious example is sext and expressions where this sext is involved). We can speculate about what is "simple
2018 Jan 26
2
Late setting of SCEV NoWrap flags does bad with cache
Thanks for your insides Sanjoy!
I don't really believe that option 2 may work just because even if we recalculate the range for this add recurrency, there are already its derivatives with cached ranges (the most obvious example is sext and expressions where this sext is involved). We can speculate about what is "simple enough" to not cache the ranges, but I believe that there is
2014 Mar 12
2
[LLVMdev] Autovectorization questions
On Mar 12, 2014, at 4:05 PM, Chandler Carruth <chandlerc at google.com> wrote:
>
> On Wed, Mar 12, 2014 at 3:50 PM, Arnold Schwaighofer <aschwaighofer at apple.com> wrote:
> In order to vectorize code like this LLVM needs to prove that “A[i*7]” does not wrap in the address space. It fails to do so
>
> But, why?
>
> I'm moderately sure that neither C nor C++
2018 Jan 25
1
Late setting of SCEV NoWrap flags does bad with cache
Hi,
I think these two patches are related to the topic:
https://reviews.llvm.org/D41578 “[SCEV] Do not cache S -> V if S is not equivalent of V”
* It’s committed. It can cause generation of redundant instructions. We’ve got regressions due to it. The biggest one is 7.31% regression in Spec2k6 401.bzip2 on Cortex-A57(AArch64).
https://reviews.llvm.org/D42290 “[SCEV] Clear poison flags