Displaying 4 results from an estimated 4 matches for "merge_new_and_old".
2013 Sep 25
0
[LLVMdev] [Polly] Move Polly's execution later
...te about moving Polly later.
1. Why does Polly generate incorrect code when we move Polly immediately after the loop rotating pass?
It is mainly caused by a wrong polly merge block. When Polly detects a valid loop for Polyhedral transformations, it usually introduces a new basic block "polly.merge_new_and_old" after the original loop exit block. This new basic block contains a branch instruction that decides whether to exit or re-enter the loop like this:
polly.loop_exit28: ; preds = %polly.stmt.for.body.i, %polly.loop_if25
br label %polly.merge_new_and_old
polly.m...
2013 Sep 25
3
[LLVMdev] [Polly] Move Polly's execution later
...report.
>
> 1. Why does Polly generate incorrect code when we move Polly immediately after the loop rotating pass?
>
> It is mainly caused by a wrong polly merge block. When Polly detects a valid loop for Polyhedral transformations, it usually introduces a new basic block "polly.merge_new_and_old" after the original loop exit block. This new basic block contains a branch instruction that decides whether to exit or re-enter the loop like this:
>
> polly.loop_exit28: ; preds = %polly.stmt.for.body.i, %polly.loop_if25
> br label %polly.merge_new_...
2013 Sep 22
4
[LLVMdev] [Polly] Move Polly's execution later
Hi Tobias,
At 2013-09-19 22:59:25,"Tobias Grosser" <tobias at grosser.es> wrote:
>On 09/19/2013 04:46 PM, Star Tan wrote:
>> Hi Tobias,
>>
>>
>> I am trying to move Polly later.
>>
>>
>> LLVM provides some predefined ExtensionPointTy:
>> EP_EarlyAsPossible,
>> EP_ModuleOptimizerEarly,
>>
2013 May 15
2
[LLVMdev] [polly] Polly Loop info and LoopSimplify functionality
...teLoop() we create something like this (topology is
important):
polly.start: ; preds =
%polly.split_new_and_old
... <some code>
br label %polly.loop_header
polly.loop_after: ; preds =
%polly.loop_header
br label %polly.merge_new_and_old // This is exit from the loop
polly.loop_header: ; preds =
%polly.stmt.for.body6, %polly.start
... <some code>
br i1 %9, label %polly.loop_body, label %polly.loop_after
polly.loop_body: ; preds =
%polly.loop_header
br labe...