[PATCH] D64101: [LoopUnroll] fix cloning callbr

Nick Desaulniers via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 3 15:11:28 PDT 2019


nickdesaulniers added a comment.

In D64101#1569218 <https://reviews.llvm.org/D64101#1569218>, @efriedma wrote:

> Is this transform safe? The inline asm could stash the address of a destination in a variable in one loop iteration, and use it in a later loop iteration.  Or is that not legal?


Isn't that an issue in inline assembly regardless of whether or not it's `asm goto`?
GCC seems to unroll the loop, even when capturing the induction variable:
https://godbolt.org/z/HVUTC4
Should the presence of inline assembly be such an optimization barrier?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D64101/new/

https://reviews.llvm.org/D64101





More information about the llvm-commits mailing list