search for: duplicateinstructionsinsplitbetween

Displaying 4 results from an estimated 4 matches for "duplicateinstructionsinsplitbetween".

2018 Feb 27
2
CallSiteSplitting and musttail calls
...y ( See https://reviews.llvm.org/ > D43729 ). Apparently my problems were: > > * Iterating through the instruction/block list after erasing > block/instruction > * Trying to split block after removing one predecessor > > Regarding the latter, it appears that semantics of ` > DuplicateInstructionsInSplitBetween` change significantly in such case, > and it starts to loop indefinitely. The `SplitEdge` function that it calls > places all of the instructions into the split block, so that the original > block becomes empty. > > Is it expected behavior, or am I doing something wrong? > > Th...
2018 Feb 28
0
CallSiteSplitting and musttail calls
...Unfortunately, not all of these utilities have good unit tests (though > they should!). > > This would not be the first set of bugs people have found wrt to very > start/end of blocks, or bb == predbb issues. > Coincidentally I stumbled over a similar issue with bb == predbb in DuplicateInstructionsInSplitBetween too and put up a patch trying to fix it https://reviews.llvm.org/D43822 > > On Sat, Feb 24, 2018 at 12:58 PM, Fedor Indutny via llvm-dev > <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote: > > Update: > > I was able to make progre...
2018 Feb 24
0
CallSiteSplitting and musttail calls
...I was able to make progress on it today ( See https://reviews.llvm.org/D43729 ). Apparently my problems were: * Iterating through the instruction/block list after erasing block/instruction * Trying to split block after removing one predecessor Regarding the latter, it appears that semantics of `DuplicateInstructionsInSplitBetween` change significantly in such case, and it starts to loop indefinitely. The `SplitEdge` function that it calls places all of the instructions into the split block, so that the original block becomes empty. Is it expected behavior, or am I doing something wrong? Thanks, Fedor. On Sat, Feb 24, 201...
2018 Feb 24
2
CallSiteSplitting and musttail calls
Hello! I've discovered that `CallSiteSplitting` optimization doesn't support musttail calls. The easiest fix as it stands is disabling it for such call sites: https://reviews.llvm.org/D43729 . However, I'm not happy with such contribution. My more sophisticated attempt has failed due to my poor understanding of llvm internals. Here is the attempted patch: