Displaying 4 results from an estimated 4 matches for "suboptimial".
Did you mean:
suboptimal
2013 Oct 31
3
[LLVMdev] LICM and SCEV AA?
...endence of a[i] and a[0] (note that i starts at 1 in this loop). While we can probably fix the vectorizer to handle this, I don't think that is the right place for the fix, because this is really a LICM problem. LICM could move a[0] out of the loop, but it currently doesn't (which is pretty suboptimial in itself). The reason is that LICM does not use SE (either directly or indirectly), and BasicAA does not recognize that a[0] and a[i] will never overlap in this loop.
I see several possible solutions:
1. Add yet-another hack to BasicAA to catch this case.
2. Let LICM use SE directly. Instead...
2013 Nov 02
0
[LLVMdev] LICM and SCEV AA?
...endence of a[i] and a[0] (note that i starts at 1 in this loop). While we can probably fix the vectorizer to handle this, I don't think that is the right place for the fix, because this is really a LICM problem. LICM could move a[0] out of the loop, but it currently doesn't (which is pretty suboptimial in itself). The reason is that LICM does not use SE (either directly or indirectly), and BasicAA does not recognize that a[0] and a[i] will never overlap in this loop.
>
> I see several possible solutions:
>
> 1. Add yet-another hack to BasicAA to catch this case.
>
> 2. Let LI...
2013 Nov 02
1
[LLVMdev] LICM and SCEV AA?
...endence of a[i] and a[0] (note that i starts at 1 in this loop). While we can probably fix the vectorizer to handle this, I don't think that is the right place for the fix, because this is really a LICM problem. LICM could move a[0] out of the loop, but it currently doesn't (which is pretty suboptimial in itself). The reason is that LICM does not use SE (either directly or indirectly), and BasicAA does not recognize that a[0] and a[i] will never overlap in this loop.
>>
>> I see several possible solutions:
>>
>> 1. Add yet-another hack to BasicAA to catch this case.
>...
2013 Nov 02
2
[LLVMdev] LICM and SCEV AA?
...arts at 1 in this loop). While we can probably fix
> > the vectorizer to handle this, I don't think that is the right
> > place for the fix, because this is really a LICM problem. LICM
> > could move a[0] out of the loop, but it currently doesn't (which
> > is pretty suboptimial in itself). The reason is that LICM does not
> > use SE (either directly or indirectly), and BasicAA does not
> > recognize that a[0] and a[i] will never overlap in this loop.
> >
> > I see several possible solutions:
> >
> > 1. Add yet-another hack to BasicAA...