[AArch64] Add a FIXME about invalid KILL markers after the ld/st opt pass.
authorChad Rosier <mcrosier@codeaurora.org>
Tue, 9 Feb 2016 19:42:19 +0000 (19:42 +0000)
committerChad Rosier <mcrosier@codeaurora.org>
Tue, 9 Feb 2016 19:42:19 +0000 (19:42 +0000)
llvm-svn: 260264

llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp

index 9f454b2..f85d6a8 100644 (file)
@@ -1911,6 +1911,11 @@ bool AArch64LoadStoreOpt::runOnMachineFunction(MachineFunction &Fn) {
 // FIXME: Do we need/want a pre-alloc pass like ARM has to try to keep
 // loads and stores near one another?
 
+// FIXME: When pairing store instructions it's very possible for this pass to
+// hoist a store with a KILL marker above another use (without a KILL marker).
+// The resulting IR is invalid, but nothing uses the KILL markers after this
+// pass, so it's never caused a problem in practice.
+
 /// createAArch64LoadStoreOptimizationPass - returns an instance of the
 /// load / store optimization pass.
 FunctionPass *llvm::createAArch64LoadStoreOptimizationPass() {