[PATCH] D47655: [MachineOutliner] Don't outline sequences where x16/x17/nzcv are live across

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 26 16:23:24 PDT 2018


efriedma added a comment.

Your results weren't making any sense, so I started debugging a bit... it looks like somehow the mechanism for removing candidates is broken.   I'm seeing candidates which should have been erased in AArch64InstrInfo::getOutlininingCandidateInfo, showing up later in MachineOutliner::outline. I haven't tracked down exactly where the bug is, though; any ideas?



================
Comment at: include/llvm/CodeGen/MachineOutliner.h:150
+    // at the liveins to the block.
+    LRU.addLiveIns(*MBB);
+
----------------
The addLiveIns call shouldn't be necessary; it's causing the code to reject valid candidates.


https://reviews.llvm.org/D47655





More information about the llvm-commits mailing list