[llvm-commits] CVS: llvm/lib/Target/PowerPC/PPCISelLowering.cpp PPCISelLowering.h

Chris Lattner lattner at cs.uiuc.edu
Tue Feb 7 12:16:42 PST 2006



Changes in directory llvm/lib/Target/PowerPC:

PPCISelLowering.cpp updated: 1.85 -> 1.86
PPCISelLowering.h updated: 1.20 -> 1.21
---
Log message:

Implement getConstraintType for PPC.


---
Diffs of the changes:  (+18 -0)

 PPCISelLowering.cpp |   17 +++++++++++++++++
 PPCISelLowering.h   |    1 +
 2 files changed, 18 insertions(+)


Index: llvm/lib/Target/PowerPC/PPCISelLowering.cpp
diff -u llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.85 llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.86
--- llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.85	Mon Feb  6 18:47:13 2006
+++ llvm/lib/Target/PowerPC/PPCISelLowering.cpp	Tue Feb  7 14:16:30 2006
@@ -980,6 +980,23 @@
   return BB;
 }
 
+/// getConstraintType - Given a constraint letter, return the type of
+/// constraint it is for this target.
+PPCTargetLowering::ConstraintType 
+PPCTargetLowering::getConstraintType(char ConstraintLetter) const {
+  switch (ConstraintLetter) {
+  default: break;
+  case 'b':
+  case 'r':
+  case 'f':
+  case 'v':
+  case 'y':
+    return C_RegisterClass;
+  }  
+  return TargetLowering::getConstraintType(ConstraintLetter);
+}
+
+
 std::vector<unsigned> PPCTargetLowering::
 getRegForInlineAsmConstraint(const std::string &Constraint) const {
   if (Constraint.size() == 1) {


Index: llvm/lib/Target/PowerPC/PPCISelLowering.h
diff -u llvm/lib/Target/PowerPC/PPCISelLowering.h:1.20 llvm/lib/Target/PowerPC/PPCISelLowering.h:1.21
--- llvm/lib/Target/PowerPC/PPCISelLowering.h:1.20	Mon Feb  6 18:47:13 2006
+++ llvm/lib/Target/PowerPC/PPCISelLowering.h	Tue Feb  7 14:16:30 2006
@@ -97,6 +97,7 @@
     virtual MachineBasicBlock *InsertAtEndOfBasicBlock(MachineInstr *MI,
                                                        MachineBasicBlock *MBB);
     
+    ConstraintType getConstraintType(char ConstraintLetter) const;
     std::vector<unsigned> 
       getRegForInlineAsmConstraint(const std::string &Constraint) const;
     bool isOperandValidForConstraint(SDOperand Op, char ConstraintLetter);






More information about the llvm-commits mailing list