[llvm-commits] [llvm] r43353 - /llvm/trunk/lib/CodeGen/BranchFolding.cpp

Bill Wendling isanbard at gmail.com
Thu Oct 25 11:23:46 PDT 2007


Author: void
Date: Thu Oct 25 13:23:45 2007
New Revision: 43353

URL: http://llvm.org/viewvc/llvm-project?rev=43353&view=rev
Log:
Added comment explaining why we are doing this check.

Modified:
    llvm/trunk/lib/CodeGen/BranchFolding.cpp

Modified: llvm/trunk/lib/CodeGen/BranchFolding.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/BranchFolding.cpp?rev=43353&r1=43352&r2=43353&view=diff

==============================================================================
--- llvm/trunk/lib/CodeGen/BranchFolding.cpp (original)
+++ llvm/trunk/lib/CodeGen/BranchFolding.cpp Thu Oct 25 13:23:45 2007
@@ -272,6 +272,11 @@
   while (I1 != MBB1->begin() && I2 != MBB2->begin()) {
     --I1; --I2;
     if (!I1->isIdenticalTo(I2) || 
+        // XXX: This check is dubious. It's used to get around a problem where
+        // people incorrectly expect inline asm directives to remain in the same
+        // relative order. This is untenable because normal compiler
+        // optimizations (like this one) may reorder and/or merge these
+        // directives.
         I1->getOpcode() == TargetInstrInfo::INLINEASM) {
       ++I1; ++I2;
       break;





More information about the llvm-commits mailing list