search for: arrayidx21

Displaying 3 results from an estimated 3 matches for "arrayidx21".

Did you mean: arrayidx2
2013 Nov 08
3
[LLVMdev] Loads moving across barriers
...= getelementptr <2 x float> addrspace(3)* %data0, i32 %tmp16 store <2 x float> %tmp10, <2 x float> addrspace(3)* %arrayidx17, align 8 br label %if.end if.end: ; preds = %if.then, %entry tail call void @__amdil_barrier_local() #0 %arrayidx21 = getelementptr <2 x float> addrspace(1)* %out, i32 %1 %tmp25 = load <2 x float> addrspace(3)* %arrayidx, align 8 store <2 x float> %tmp25, <2 x float> addrspace(1)* %arrayidx21, align 8 ret void } attributes #0 = { noduplicate nounwind } attributes #1 = { nounwind re...
2012 May 04
0
[LLVMdev] Extending GetElementPointer, or Premature Linearization Considered Harmful
Hi Preston, On Fri, May 4, 2012 at 9:12 AM, Preston Briggs <preston.briggs at gmail.com> wrote: > > which produces > > %arrayidx24 = getelementptr inbounds [100 x [100 x i64]]* %A, i64 > %arrayidx21.sum, i64 %add1411, i64 %add > store i64 0, i64* %arrayidx24, align 8 > {{{(5 + ((3 + %n) * %n)),+,(2 * %n * %n)}<%for.cond1.preheader>,+,(4 * %n)}<%for.cond4.preheader>,+,6}<%for.cond7.preheader> This expression is not straight forward because llvm always fold the loop invar...
2012 May 04
3
[LLVMdev] Extending GetElementPointer, or Premature Linearization Considered Harmful
...int j = 0; j < n; j++)* * for (long int k = 0; k < n; k++)* * **for (long int l = 0; l < n; l++)* * **for (long int m = 0; m < n; m++)* * **A[1 + 2*i][3 + 4*j][5 + 6*k][7 + 8*l][9 + 10*m] = 0;* } which produces *%arrayidx24 = getelementptr inbounds [100 x [100 x i64]]* %A, i64 %arrayidx21.sum, i64 %add1411, i64 %add* *store i64 0, i64* %arrayidx24, align 8* *{{{(5 + ((3 + %n) * %n)),+,(2 * %n * %n)}<%for.cond1.preheader>,+,(4 * %n)}<%for.cond4.preheader>,+,6}<%for.cond7.preheader>* *{7,+,8}<%for.cond10.preheader>* *{9,+,10}<%for.body12>* This is more...