lib/Target/X86/InstSelectSimple.cpp: Add visitCallInst, visitCastInst.
authorBrian Gaeke <gaeke@uiuc.edu>
Fri, 22 Nov 2002 11:07:01 +0000 (11:07 +0000)
committerBrian Gaeke <gaeke@uiuc.edu>
Fri, 22 Nov 2002 11:07:01 +0000 (11:07 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4821 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/InstSelectSimple.cpp
lib/Target/X86/X86ISelSimple.cpp

index 3f7a2567ce45bfd60f6f2feca3cd5b19ef88fbca..e5c5535ba9acb1bc3febb5bce85aec977e8a4971 100644 (file)
@@ -63,8 +63,11 @@ namespace {
     // Visitation methods for various instructions.  These methods simply emit
     // fixed X86 code for each instruction.
     //
+
+    // Control flow operators
     void visitReturnInst(ReturnInst &RI);
     void visitBranchInst(BranchInst &BI);
+    void visitCallInst(CallInst &I);
 
     // Arithmetic operators
     void visitSimpleBinary(BinaryOperator &B, unsigned OpcodeClass);
@@ -97,6 +100,7 @@ namespace {
     // Other operators
     void visitShiftInst(ShiftInst &I);
     void visitPHINode(PHINode &I);
+    void visitCastInst(CastInst &I);
 
     void visitInstruction(Instruction &I) {
       std::cerr << "Cannot instruction select: " << I;
@@ -359,6 +363,11 @@ ISel::visitBranchInst (BranchInst & BI)
     }
 }
 
+void
+ISel::visitCallInst (CallInst &CI)
+{
+  visitInstruction (CI);
+}
 
 /// visitSimpleBinary - Implement simple binary operators for integral types...
 /// OperatorClass is one of: 0 for Add, 1 for Sub, 2 for And, 3 for Or,
@@ -572,6 +581,11 @@ void ISel::visitPHINode(PHINode &PN) {
   }
 }
 
+void
+ISel::visitCastInst (CastInst &CI)
+{
+  visitInstruction (CI);
+}
 
 /// createSimpleX86InstructionSelector - This pass converts an LLVM function
 /// into a machine code representation is a very simple peep-hole fashion.  The
index 3f7a2567ce45bfd60f6f2feca3cd5b19ef88fbca..e5c5535ba9acb1bc3febb5bce85aec977e8a4971 100644 (file)
@@ -63,8 +63,11 @@ namespace {
     // Visitation methods for various instructions.  These methods simply emit
     // fixed X86 code for each instruction.
     //
+
+    // Control flow operators
     void visitReturnInst(ReturnInst &RI);
     void visitBranchInst(BranchInst &BI);
+    void visitCallInst(CallInst &I);
 
     // Arithmetic operators
     void visitSimpleBinary(BinaryOperator &B, unsigned OpcodeClass);
@@ -97,6 +100,7 @@ namespace {
     // Other operators
     void visitShiftInst(ShiftInst &I);
     void visitPHINode(PHINode &I);
+    void visitCastInst(CastInst &I);
 
     void visitInstruction(Instruction &I) {
       std::cerr << "Cannot instruction select: " << I;
@@ -359,6 +363,11 @@ ISel::visitBranchInst (BranchInst & BI)
     }
 }
 
+void
+ISel::visitCallInst (CallInst &CI)
+{
+  visitInstruction (CI);
+}
 
 /// visitSimpleBinary - Implement simple binary operators for integral types...
 /// OperatorClass is one of: 0 for Add, 1 for Sub, 2 for And, 3 for Or,
@@ -572,6 +581,11 @@ void ISel::visitPHINode(PHINode &PN) {
   }
 }
 
+void
+ISel::visitCastInst (CastInst &CI)
+{
+  visitInstruction (CI);
+}
 
 /// createSimpleX86InstructionSelector - This pass converts an LLVM function
 /// into a machine code representation is a very simple peep-hole fashion.  The