[llvm-commits] CVS: llvm/lib/Target/X86/InstSelectSimple.cpp

Chris Lattner lattner at cs.uiuc.edu
Sun Apr 11 19:12:00 PDT 2004


Changes in directory llvm/lib/Target/X86:

InstSelectSimple.cpp updated: 1.230 -> 1.231

---
Log message:

Adjust some comments, fix a bug in my previous patch


---
Diffs of the changes:  (+4 -4)

Index: llvm/lib/Target/X86/InstSelectSimple.cpp
diff -u llvm/lib/Target/X86/InstSelectSimple.cpp:1.230 llvm/lib/Target/X86/InstSelectSimple.cpp:1.231
--- llvm/lib/Target/X86/InstSelectSimple.cpp:1.230	Sun Apr 11 18:21:26 2004
+++ llvm/lib/Target/X86/InstSelectSimple.cpp	Sun Apr 11 19:12:04 2004
@@ -1877,7 +1877,7 @@
       return;
     }
   
-  // Special case: R1 = sub <const fp>, R2
+  // Special case: R1 = op <const fp>, R2
   if (ConstantFP *CFP = dyn_cast<ConstantFP>(Op0))
     if (CFP->isExactlyValue(-0.0) && OperatorClass == 1) {
       // -0.0 - X === -X
@@ -1885,7 +1885,7 @@
       BuildMI(*BB, IP, X86::FCHS, 1, DestReg).addReg(op1Reg);
       return;
     } else if (!CFP->isExactlyValue(+0.0) && !CFP->isExactlyValue(+1.0)) {
-      // R1 = sub CST, R2  -->  R1 = subr R2, CST
+      // R1 = op CST, R2  -->  R1 = opr R2, CST
 
       // Create a constant pool entry for this constant.
       MachineConstantPool *CP = F->getConstantPool();
@@ -2634,7 +2634,6 @@
         static const unsigned Opcode[] = {
           0/*BYTE*/, X86::FILD16m, X86::FILD32m, 0/*FP*/, X86::FILD64m
         };
-
         unsigned BaseReg = 0, Scale = 1, IndexReg = 0, Disp = 0;
         getAddressingMode(I.getOperand(0), BaseReg, Scale, IndexReg, Disp);
         addFullAddress(BuildMI(BB, Opcode[Class], 5, DestReg),
@@ -2644,6 +2643,7 @@
         User = 0;
       }
       break;
+
     case Instruction::Add:
     case Instruction::Sub:
     case Instruction::And:
@@ -2653,7 +2653,7 @@
       break;
     case Instruction::Mul:
     case Instruction::Div:
-      if (Class == cFP) User = 0;
+      if (Class != cFP) User = 0;
       break;  // Folding only implemented for floating point.
     default: User = 0; break;
     }





More information about the llvm-commits mailing list