Displaying 10 results from an estimated 10 matches for "cmp9".
Did you mean:
cmp
2013 Oct 30
0
[LLVMdev] loop vectorizer
...SLP vectorizer.
BBV: using target information
BBV: fusing loop #1 for for.body in _Z3barmmPfS_S_...
BBV: found 2 instructions with candidate pairs
BBV: found 0 pair connections.
BBV: done!
However, this was run on the unrolled loop (I guess).
Here is the IR printed by 'opt':
entry:
%cmp9 = icmp ult i64 %start, %end
br i1 %cmp9, label %for.body, label %for.end
for.body: ; preds = %entry,
%for.body
%storemerge10 = phi i64 [ %inc, %for.body ], [ %start, %entry ]
%div = lshr i64 %storemerge10, 2
%mul1 = shl i64 %div, 3
%rem = and...
2013 Oct 30
3
[LLVMdev] loop vectorizer
On 30 October 2013 09:25, Nadav Rotem <nrotem at apple.com> wrote:
> The access pattern to arrays a and b is non-linear. Unrolled loops are
> usually handled by the SLP-vectorizer. Are ir0 and ir1 consecutive for all
> values for i ?
>
Based on his list of values, it seems that the induction stride is linear
within each block of 4 iterations, but it's not a clear
2013 Oct 30
3
[LLVMdev] loop vectorizer
...BBV: fusing loop #1 for for.body in _Z3barmmPfS_S_...
> BBV: found 2 instructions with candidate pairs
> BBV: found 0 pair connections.
> BBV: done!
>
> However, this was run on the unrolled loop (I guess).
>
> Here is the IR printed by 'opt':
>
> entry:
> %cmp9 = icmp ult i64 %start, %end
> br i1 %cmp9, label %for.body, label %for.end
>
> for.body: ; preds = %entry, %for.body
> %storemerge10 = phi i64 [ %inc, %for.body ], [ %start, %entry ]
> %div = lshr i64 %storemerge10, 2
> %mul1 = shl i64 %div, 3
> %rem = and i64 %storemerge10, 3...
2013 Nov 01
2
[LLVMdev] loop vectorizer: this loop is not worth vectorizing
...rizable type.
LV: Can't vectorize the instructions or CFG
LV: Not vectorizing.
; Function Attrs: nounwind uwtable
define void @_Z3barmmPfS_S_(i64 %start, i64 %end, float* noalias %c,
float* noalias %a, float* noalias %b) #3 {
entry:
%div = lshr i64 %start, 2
%div1 = lshr i64 %end, 2
%cmp9 = icmp ult i64 %div, %div1
br i1 %cmp9, label %for.body4.preheader, label %for.end20
for.body4.preheader: ; preds = %entry
br label %for.body4
for.body4: ; preds =
%for.body4.preheader, %for.body4
%storemerge10 = phi i6...
2017 Jan 24
3
[InstCombine] rL292492 affected LoopVectorizer and caused 17.30%/11.37% perf regressions on Cortex-A53/Cortex-A15 LNT machines
On Tue, Jan 24, 2017 at 1:20 PM, Sanjay Patel via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
>
> I started looking at the log files that you attached, and I'm confused.
> The code that is supposedly causing the perf regression is created by the
> loop vectorizer, right? Except the bad code is not in the "vector.body", so
> is there something peculiar about
2013 Nov 01
0
[LLVMdev] loop vectorizer: this loop is not worth vectorizing
...instructions or CFG
> LV: Not vectorizing.
>
> ; Function Attrs: nounwind uwtable
> define void @_Z3barmmPfS_S_(i64 %start, i64 %end, float* noalias %c,
> float* noalias %a, float* noalias %b) #3 {
> entry:
> %div = lshr i64 %start, 2
> %div1 = lshr i64 %end, 2
> %cmp9 = icmp ult i64 %div, %div1
> br i1 %cmp9, label %for.body4.preheader, label %for.end20
>
> for.body4.preheader: ; preds = %entry
> br label %for.body4
>
> for.body4: ; preds =
> %for.body4.preheader, %for....
2013 Oct 30
0
[LLVMdev] loop vectorizer
..._Z3barmmPfS_S_...
>> BBV: found 2 instructions with candidate pairs
>> BBV: found 0 pair connections.
>> BBV: done!
>>
>> However, this was run on the unrolled loop (I guess).
>>
>> Here is the IR printed by 'opt':
>>
>> entry:
>> %cmp9 = icmp ult i64 %start, %end
>> br i1 %cmp9, label %for.body, label %for.end
>>
>> for.body: ; preds = %entry, %for.body
>> %storemerge10 = phi i64 [ %inc, %for.body ], [ %start, %entry ]
>> %div = lshr i64 %storemerge10, 2
>> %mul1 = shl i64 %div, 3
>> %rem...
2013 Oct 30
2
[LLVMdev] loop vectorizer
...instructions with candidate pairs
>>> BBV: found 0 pair connections.
>>> BBV: done!
>>>
>>> However, this was run on the unrolled loop (I guess).
>>>
>>> Here is the IR printed by 'opt':
>>>
>>> entry:
>>> %cmp9 = icmp ult i64 %start, %end
>>> br i1 %cmp9, label %for.body, label %for.end
>>>
>>> for.body: ; preds = %entry, %for.body
>>> %storemerge10 = phi i64 [ %inc, %for.body ], [ %start, %entry ]
>>> %div = lshr i64 %storemerge10, 2
>>> %mul1 = shl...
2013 Oct 30
0
[LLVMdev] loop vectorizer
...s
>>>> BBV: found 0 pair connections.
>>>> BBV: done!
>>>>
>>>> However, this was run on the unrolled loop (I guess).
>>>>
>>>> Here is the IR printed by 'opt':
>>>>
>>>> entry:
>>>> %cmp9 = icmp ult i64 %start, %end
>>>> br i1 %cmp9, label %for.body, label %for.end
>>>>
>>>> for.body: ; preds = %entry, %for.body
>>>> %storemerge10 = phi i64 [ %inc, %for.body ], [ %start, %entry ]
>>>> %div = lshr i64 %storemerge10, 2
>&g...
2013 Feb 14
1
[LLVMdev] LiveIntervals analysis problem
...8, i16* %incdec.ptr.7.i55.i.i, align 2, !tbaa !5
store i16 %69, i16* %incdec.ptr.8.i56.i.i, align 2, !tbaa !5
%cmp4.i.i = icmp slt i32 %sub2.i.i, 1
br i1 %cmp4.i.i, label %for.cond66.i, label %while.cond.preheader.i.i
while.cond.preheader.i.i: ; preds = %if.end.i.i
%cmp975.i.i = icmp sgt i32 %sub2.i.i, 15
br i1 %cmp975.i.i, label %while.body.lr.ph.i.i, label %while.end.i.i
while.body.lr.ph.i.i: ; preds = %while.cond.preheader.i.i
%70 = sub i32 16510, %and.i530.i
%71 = lshr i32 %70, 4
br label %while.body.i.i
while.body.i.i:...