Displaying 12 results from an estimated 12 matches for "scevgep11".
Did you mean:
scevgep15
2012 Oct 17
4
[LLVMdev] Redundant Add Operation in Code Generation?
...920, align 2
* %uglygep14.sum = add i32 %lsr_iv8, %tmp45*
%scevgep15 = getelementptr i8* %extIn_013, i32 %uglygep14_sum
%scevgep1516 = bitcast i8* %scevgep15 to i16*
%tmp79 = load i16* %scevgep1516, align 2
%conv93.i.i = sext i16 %tmp79 to i32
*%uglygep.sum = add i32 %lsr_iv8, %tmp45*
%scevgep11 = getelementptr i8* %sysBits_010, i32 %uglygep_sum
You can see here that "add i32 %lsr_iv8, %tmp45" is done multiple times,
appearing that there are two redundant add operations that are not needed
yet are generated?
Thanks.
-------------- next part --------------
An HTML attachment was...
2011 May 03
0
[LLVMdev] Loop-Unroll optimization
...0; i++)
{
c[i] = a[i] + b[i];
}
printf("%d\n", c[999]);
-------------------------------------------------
and bit-code in *Hello4.bc*
bb3: ; preds = %bb3,
%bb3.preheader
%i.17 = phi i32 [ %5, %bb3 ], [ 0, %bb3.preheader ]
%scevgep11 = getelementptr [1000 x i32]* %b, i32 0, i32 %i.17
%scevgep10 = getelementptr [1000 x i32]* %a, i32 0, i32 %i.17
%scevgep = getelementptr [1000 x i32]* %c, i32 0, i32 %i.17
%2 = load i32* %scevgep10, align 4
%3 = load i32* %scevgep11, align 4
%4 = add nsw i32 %3, %2
store i32 %4, i32* %...
2011 May 04
1
[LLVMdev] Loop-Unroll optimization
...}
>
> printf("%d\n", c[999]);
> -------------------------------------------------
>
> and bit-code in *Hello4.bc*
> bb3: ; preds = %bb3,
> %bb3.preheader
> %i.17 = phi i32 [ %5, %bb3 ], [ 0, %bb3.preheader ]
> %scevgep11 = getelementptr [1000 x i32]* %b, i32 0, i32 %i.17
> %scevgep10 = getelementptr [1000 x i32]* %a, i32 0, i32 %i.17
> %scevgep = getelementptr [1000 x i32]* %c, i32 0, i32 %i.17
> %2 = load i32* %scevgep10, align 4
> %3 = load i32* %scevgep11, align 4
> %4 = add nsw i32 %3,...
2011 May 03
3
[LLVMdev] Loop-Unroll optimization
Hi,
You might want to try running -loops -loop-simplify before loop unroll.
>From loop simplify.cpp
This pass performs several transformations to transform natural loops
into a00011 // simpler form, which makes subsequent analyses and
transformations simpler and00012 // more effective.
Arushi
On Tue, May 3, 2011 at 2:17 PM, Manish Gupta <mgupta.iitr at gmail.com> wrote:
> You
2012 Oct 17
0
[LLVMdev] Redundant Add Operation in Code Generation?
...sum = add i32 %lsr_iv8, %tmp45
> %scevgep15 = getelementptr i8* %extIn_013, i32 %uglygep14_sum
> %scevgep1516 = bitcast i8* %scevgep15 to i16*
> %tmp79 = load i16* %scevgep1516, align 2
> %conv93.i.i = sext i16 %tmp79 to i32
> %uglygep.sum = add i32 %lsr_iv8, %tmp45
> %scevgep11 = getelementptr i8* %sysBits_010, i32 %uglygep_sum
>
> You can see here that "add i32 %lsr_iv8, %tmp45" is done multiple times,
> appearing that there are two redundant add operations that are not needed
> yet are generated?
CodeGenPrepare manipulates GEPs in a way that can e...
2012 Oct 19
3
[LLVMdev] Redundant Add Operation in Code Generation?
...= add i32 %lsr_iv8, %tmp45*
> %scevgep15 = getelementptr i8* %extIn_013, i32 %uglygep14_sum
> %scevgep1516 = bitcast i8* %scevgep15 to i16*
> %tmp79 = load i16* %scevgep1516, align 2
> %conv93.i.i = sext i16 %tmp79 to i32
> *%uglygep.sum = add i32 %lsr_iv8, %tmp45*
> %scevgep11 = getelementptr i8* %sysBits_010, i32 %uglygep_sum
>
> You can see here that "add i32 %lsr_iv8, %tmp45" is done multiple times,
> appearing that there are two redundant add operations that are not needed
> yet are generated?
>
>
> That's LSR, as you can see from t...
2012 Oct 19
0
[LLVMdev] Redundant Add Operation in Code Generation?
...sum = add i32 %lsr_iv8, %tmp45
> %scevgep15 = getelementptr i8* %extIn_013, i32 %uglygep14_sum
> %scevgep1516 = bitcast i8* %scevgep15 to i16*
> %tmp79 = load i16* %scevgep1516, align 2
> %conv93.i.i = sext i16 %tmp79 to i32
> %uglygep.sum = add i32 %lsr_iv8, %tmp45
> %scevgep11 = getelementptr i8* %sysBits_010, i32 %uglygep_sum
>
> You can see here that "add i32 %lsr_iv8, %tmp45" is done multiple times, appearing that there are two redundant add operations that are not needed yet are generated?
That's LSR, as you can see from the variable names ;) It...
2012 Oct 19
2
[LLVMdev] Redundant Add Operation in Code Generation?
...p45*
>> %scevgep15 = getelementptr i8* %extIn_013, i32 %uglygep14_sum
>> %scevgep1516 = bitcast i8* %scevgep15 to i16*
>> %tmp79 = load i16* %scevgep1516, align 2
>> %conv93.i.i = sext i16 %tmp79 to i32
>> *%uglygep.sum = add i32 %lsr_iv8, %tmp45*
>> %scevgep11 = getelementptr i8* %sysBits_010, i32 %uglygep_sum
>>
>> You can see here that "add i32 %lsr_iv8, %tmp45" is done multiple times,
>> appearing that there are two redundant add operations that are not needed
>> yet are generated?
>>
>>
>> That'...
2012 Oct 17
2
[LLVMdev] Redundant Add Operation in Code Generation?
...> > %scevgep15 = getelementptr i8* %extIn_013, i32 %uglygep14_sum
> > %scevgep1516 = bitcast i8* %scevgep15 to i16*
> > %tmp79 = load i16* %scevgep1516, align 2
> > %conv93.i.i = sext i16 %tmp79 to i32
> > %uglygep.sum = add i32 %lsr_iv8, %tmp45
> > %scevgep11 = getelementptr i8* %sysBits_010, i32 %uglygep_sum
> >
> > You can see here that "add i32 %lsr_iv8, %tmp45" is done multiple times,
> > appearing that there are two redundant add operations that are not needed
> > yet are generated?
>
> CodeGenPrepare manipul...
2012 Oct 19
0
[LLVMdev] Redundant Add Operation in Code Generation?
...%tmp45
>> %scevgep15 = getelementptr i8* %extIn_013, i32 %uglygep14_sum
>> %scevgep1516 = bitcast i8* %scevgep15 to i16*
>> %tmp79 = load i16* %scevgep1516, align 2
>> %conv93.i.i = sext i16 %tmp79 to i32
>> %uglygep.sum = add i32 %lsr_iv8, %tmp45
>> %scevgep11 = getelementptr i8* %sysBits_010, i32 %uglygep_sum
>>
>> You can see here that "add i32 %lsr_iv8, %tmp45" is done multiple times, appearing that there are two redundant add operations that are not needed yet are generated?
>
> That's LSR, as you can see from the va...
2012 Oct 19
0
[LLVMdev] Redundant Add Operation in Code Generation?
...cevgep15 = getelementptr i8* %extIn_013, i32 %uglygep14_sum
>>> %scevgep1516 = bitcast i8* %scevgep15 to i16*
>>> %tmp79 = load i16* %scevgep1516, align 2
>>> %conv93.i.i = sext i16 %tmp79 to i32
>>> %uglygep.sum = add i32 %lsr_iv8, %tmp45
>>> %scevgep11 = getelementptr i8* %sysBits_010, i32 %uglygep_sum
>>>
>>> You can see here that "add i32 %lsr_iv8, %tmp45" is done multiple times, appearing that there are two redundant add operations that are not needed yet are generated?
>>
>> That's LSR, as you can...
2012 Oct 17
0
[LLVMdev] Redundant Add Operation in Code Generation?
...p15 = getelementptr i8* %extIn_013, i32 %uglygep14_sum
>> > %scevgep1516 = bitcast i8* %scevgep15 to i16*
>> > %tmp79 = load i16* %scevgep1516, align 2
>> > %conv93.i.i = sext i16 %tmp79 to i32
>> > %uglygep.sum = add i32 %lsr_iv8, %tmp45
>> > %scevgep11 = getelementptr i8* %sysBits_010, i32 %uglygep_sum
>> >
>> > You can see here that "add i32 %lsr_iv8, %tmp45" is done multiple times,
>> > appearing that there are two redundant add operations that are not
>> needed
>> > yet are generated?
>>...