[llvm-commits] [SignlessTypes] CVS: llvm/lib/ExecutionEngine/Interpreter/Execution.cpp

Reid Spencer reid at x10sys.com
Sun Oct 22 01:59:31 PDT 2006



Changes in directory llvm/lib/ExecutionEngine/Interpreter:

Execution.cpp updated: 1.139.6.2 -> 1.139.6.3
---
Log message:

Implement the FDIV instruction for floating point divide.


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

 Execution.cpp |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)


Index: llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
diff -u llvm/lib/ExecutionEngine/Interpreter/Execution.cpp:1.139.6.2 llvm/lib/ExecutionEngine/Interpreter/Execution.cpp:1.139.6.3
--- llvm/lib/ExecutionEngine/Interpreter/Execution.cpp:1.139.6.2	Fri Oct 20 03:19:49 2006
+++ llvm/lib/ExecutionEngine/Interpreter/Execution.cpp	Sun Oct 22 03:59:00 2006
@@ -91,6 +91,7 @@
                           CE->getOperand(0)->getType());
   case Instruction::SDiv:
   case Instruction::UDiv:
+  case Instruction::FDiv:
     return executeDivInst(getOperandValue(CE->getOperand(0), SF),
                           getOperandValue(CE->getOperand(1), SF),
                           CE->getOperand(0)->getType());
@@ -505,8 +506,9 @@
   case Instruction::Add:   R = executeAddInst  (Src1, Src2, Ty); break;
   case Instruction::Sub:   R = executeSubInst  (Src1, Src2, Ty); break;
   case Instruction::Mul:   R = executeMulInst  (Src1, Src2, Ty); break;
-  case Instruction::SDiv:  R = executeDivInst  (Src1, Src2, Ty); break;
-  case Instruction::UDiv:  R = executeDivInst  (Src1, Src2, Ty); break;
+  case Instruction::SDiv:  
+  case Instruction::UDiv:  
+  case Instruction::FDiv:  R = executeDivInst  (Src1, Src2, Ty); break;
   case Instruction::Rem:   R = executeRemInst  (Src1, Src2, Ty); break;
   case Instruction::And:   R = executeAndInst  (Src1, Src2, Ty); break;
   case Instruction::Or:    R = executeOrInst   (Src1, Src2, Ty); break;






More information about the llvm-commits mailing list