[PATCH] D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC].

Michael Kruse via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 3 08:15:34 PDT 2017


Meinersbur added a comment.

This is an interesting case because `%i.trunc` is synthesizable within the loop, but not outside of it.

What `getStmtFor(BB)` is trying to get here is some statement where it transfer the llvm::Value from (using a MemoryKind::Value WRITE/READ pair).

A "sophisticated" solution would be to select one statement in the loop (the last would be good) and insert a MemoryKind::Value WRITE there.

A simple solution, which is also the status quo before this patch, is to bail out (`return FD_CannotForward`)


https://reviews.llvm.org/D35663





More information about the llvm-commits mailing list