[PATCH] D49220: [x86] Teach the EFLAGS copy lowering to handle much more complex control flow patterns including forks, merges, and even cyles.
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 12 13:51:20 PDT 2018
craig.topper added inline comments.
================
Comment at: llvm/lib/Target/X86/X86FlagsCopyLowering.cpp:433
+ auto HasEFLAGSClobber = [&](MachineBasicBlock::iterator Begin,
+ MachineBasicBlock::iterator End) {
+ // Scan backwards as we expect these to be relatively short and often find
----------------
Nit - this isn't lined up right with the line above.
================
Comment at: llvm/test/CodeGen/X86/flags-copy-lowering.mir:777
+# We set EFLAGS in bb.0, clobber them in bb.3, and copy them in bb.2 and bb.6.
+# Because of the cycles this requires hoisting the tests for the bb.6 copy to
+# bb.1 but not using them in bb.2, instead doing local tests within bb.2.
----------------
I don't think understand this sentence. I don't see any tests in bb.1 in the CHECKs.
Repository:
rL LLVM
https://reviews.llvm.org/D49220
More information about the llvm-commits
mailing list