Added isLegalAddressExpression hook to test if the given expression can be

folded into target addressing mode for the given type.

llvm-svn: 35121
This commit is contained in:
Evan Cheng 2007-03-16 08:42:32 +00:00
parent 0408dc0d37
commit ce8b779c6c
2 changed files with 15 additions and 1 deletions

View File

@ -855,7 +855,13 @@ public:
//===--------------------------------------------------------------------===//
// Loop Strength Reduction hooks
//
/// isLegalAddressExpression - Return true if the binary expression made up of
/// specified opcode, operands, and type can be folded into target addressing
/// mode for load / store of the given type.
virtual bool isLegalAddressExpression(unsigned Opc, Value *Op0, Value *Op1,
const Type *Ty) const;
/// isLegalAddressImmediate - Return true if the integer value can be used as
/// the offset of the target addressing mode for load / store of the given
/// type.

View File

@ -1931,6 +1931,14 @@ getRegForInlineAsmConstraint(const std::string &Constraint,
// Loop Strength Reduction hooks
//===----------------------------------------------------------------------===//
/// isLegalAddressExpression - Return true if the binary expression made up of
/// specified opcode, operands, and type can be folded into target addressing
/// mode for load / store of the given type.
bool TargetLowering::isLegalAddressExpression(unsigned Opc, Value *Op0,
Value *Op1, const Type *Ty) const {
return false;
}
/// isLegalAddressImmediate - Return true if the integer value can be used as
/// the offset of the target addressing mode for load / store of the given
/// type.