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); _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits