Displaying 2 results from an estimated 2 matches for "looparrinit".
2014 Aug 02
2
[LLVMdev] Create "appending" section that can be partially dead stripped
On 01/08/14 19:37, Reid Kleckner wrote:
> What happens if you drop appending linkage? I think it will just work,
> since you are already using a custom section, which will ensure that all
> the data appears contiguously in memory.
Thanks for the suggestion, but it still puts everything in a single
.section statement.
> Although, I do worry about what LLVM's alias analysis will
2014 Aug 05
2
[LLVMdev] Create "appending" section that can be partially dead stripped
...= load i32* %eleptr2
%sum1 = add i32 %ele1, %ele2
store i32 %sum1, i32* %sumvar
; now loop over the entire array by using @arrstart and @arrstop
%loopstop = ptrtoint [0 x i32]* @arrstop to i64
%loopstart = ptrtoint [0 x i32]* @arrstart to i64
%loopcount = sub i64 %loopstop, %loopstart
%looparrinit = bitcast [0 x i32]* @arrstart to i32*
br label %LoopStart
; sum all elements in the array
LoopStart:
%looparr = phi i32* [%looparrinit, %Entry], [%looparrnext, %LoopBody]
%loopcond = icmp eq i64 %loopcount, 0
br i1 %loopcond, label %LoopEnd, label %LoopBody
LoopBody:
%val = load i32* %l...