search for: loophead

Displaying 9 results from an estimated 9 matches for "loophead".

Did you mean: lookahead
2013 Mar 11
0
[LLVMdev] How to unroll reduction loop with caching accumulator on register?
...vvm.read.ptx.sreg.ctaid.x() %PositionOfBlockInGrid.x = shl i32 %ctaid.x, 9 %BlockLB.Add.ThreadPosInBlock.x = add i32 %PositionOfBlockInGrid.x, %tid.x %isThreadLBgtLoopUB.x = icmp sgt i32 %BlockLB.Add.ThreadPosInBlock.x, 65535 br i1 %isThreadLBgtLoopUB.x, label %CUDA.AfterLoop.x, label %CUDA.LoopHeader.x.preheader CUDA.LoopHeader.x.preheader: ; preds = %"Loop Function Root" %1 = sext i32 %BlockLB.Add.ThreadPosInBlock.x to i64 store float 0.000000e+00, float* inttoptr (i64 47380979712 to float*), align 8192, !tbaa !0 %p_.moved.to.4.cloned = shl nsw i64 %1, 9...
2013 Mar 11
2
[LLVMdev] How to unroll reduction loop with caching accumulator on register?
Dear all, Attached notunrolled.ll is a module containing reduction kernel. What I'm trying to do is to unroll it in such way, that partial reduction on unrolled iterations would be performed on register, and then stored to memory only once. Currently llvm's unroller together with all standard optimizations produce code, which stores value to memory after every unrolled iteration, which is
2008 Jun 11
1
[LLVMdev] Unnatural loops with O0
...non-text attachment was scrubbed... Name: tailup-loop.c Type: text/x-csrc Size: 149 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20080611/43841b2a/attachment.c> -------------- next part -------------- A non-text attachment was scrubbed... Name: taildup-loopheader.patch Type: text/x-diff Size: 2139 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20080611/43841b2a/attachment.patch>
2008 May 08
3
[LLVMdev] Unnatural loops with O0
Hello everybody, we noticed that llvmgcc4.2-2.2 sometimes generates non-natural loops when compiling to bytecode without any optimizations. Apparently what happens is that the loop header is duplicated, which results in two entry points for the loop. Since this could obstruct subsequent loop optimizations, it might be interesting to further investigate this behavior. To show the problem, I have
2008 Jun 21
0
[LLVMdev] Unnatural loops with O0
...for Embedded Processors > Institut für Computersprachen E185/1 > Technische Universität Wien > > Argentinierstraße 8 / 185 > A-1040 Wien, Austria > > Tel.: (+431) 58801-58521 > > E-Mail: brandner at complang.tuwien.ac.at > > <tailup-loop.c><taildup- > loopheader.patch>_______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
2014 Jun 27
2
[LLVMdev] how create a pointer to FILE*
Hi, all I want to create a function in LLVM IR, whose type is: void _to_prof( FILE* ptrF); I do it within LLVM, but I don't know how build the parameter type for FILE* ptrF. Best Regards. Eric Lu -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140627/c49bdb2a/attachment.html>
2018 May 31
0
RFC: Extending loop metadata
...ransformations must be represented in the IR metadata. Second, a pass must carry-out all transformations. Regarding the first part, I suggest storing the loop transformations in a metadata node of the parent function, e.g.: define func() !looptransform !3 [...] br i1 %cond, label %loopheader, ... !loop !1 !1 = distinct !{ !4, !2 } ; LoopID !2 = {"llvm.loop.id", "myloop"} ; Loop name Only the loop id remains a property of the loop. The transformations are stored in the !looptransform metadata node: !3 = { !3, !4, ... } ; Ordered list of loop transfor...
2009 Feb 11
2
[LLVMdev] Unnatural loops with O0
...rachen E185/1 > > Technische Universität Wien > > > > Argentinierstraße 8 / 185 > > A-1040 Wien, Austria > > > > Tel.: (+431) 58801-58521 > > > > E-Mail: brandner at complang.tuwien.ac.at > > > > <tailup-loop.c><taildup- > > loopheader.patch>_______________________________________________ > > LLVM Developers mailing list > > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > > _______________________________________________ > LLVM Dev...
2012 Jul 16
3
[LLVMdev] RFC: LLVM incubation, or requirements for committing new backends
...t serialPatternMatch(BlockT *CurBlock); > + int ifPatternMatch(BlockT *CurBlock); > + int switchPatternMatch(BlockT *CurBlock); > + int loopendPatternMatch(BlockT *CurBlock); > + int loopPatternMatch(BlockT *CurBlock); > + > + int loopbreakPatternMatch(LoopT *LoopRep, BlockT *LoopHeader); > + int loopcontPatternMatch(LoopT *LoopRep, BlockT *LoopHeader); > + //int loopWithoutBreak(BlockT *); > + > + void handleLoopbreak (BlockT *ExitingBlock, LoopT *ExitingLoop, > + BlockT *ExitBlock, LoopT *exitLoop, BlockT *landBlock); > + void handl...