forked from OSchip/llvm-project
Add params() to FunctionType. NFC.
While at it, also use makeArrayRef in elements(). llvm-svn: 222556
This commit is contained in:
parent
eb4a4d5aeb
commit
e973fd4a09
|
@ -123,6 +123,9 @@ public:
|
|||
typedef Type::subtype_iterator param_iterator;
|
||||
param_iterator param_begin() const { return ContainedTys + 1; }
|
||||
param_iterator param_end() const { return &ContainedTys[NumContainedTys]; }
|
||||
ArrayRef<Type *> params() const {
|
||||
return makeArrayRef(param_begin(), param_end());
|
||||
}
|
||||
|
||||
/// Parameter type accessors.
|
||||
Type *getParamType(unsigned i) const { return ContainedTys[i+1]; }
|
||||
|
@ -274,9 +277,8 @@ public:
|
|||
typedef Type::subtype_iterator element_iterator;
|
||||
element_iterator element_begin() const { return ContainedTys; }
|
||||
element_iterator element_end() const { return &ContainedTys[NumContainedTys];}
|
||||
|
||||
ArrayRef<Type *> const elements() const {
|
||||
return ArrayRef<Type*>(&*element_begin(), getNumElements());
|
||||
return makeArrayRef(element_begin(), element_end());
|
||||
}
|
||||
|
||||
/// isLayoutIdentical - Return true if this is layout identical to the
|
||||
|
|
|
@ -148,10 +148,9 @@ struct FunctionTypeKeyInfo {
|
|||
bool isVarArg;
|
||||
KeyTy(const Type* R, const ArrayRef<Type*>& P, bool V) :
|
||||
ReturnType(R), Params(P), isVarArg(V) {}
|
||||
KeyTy(const FunctionType* FT) :
|
||||
ReturnType(FT->getReturnType()),
|
||||
Params(makeArrayRef(FT->param_begin(), FT->param_end())),
|
||||
isVarArg(FT->isVarArg()) {}
|
||||
KeyTy(const FunctionType *FT)
|
||||
: ReturnType(FT->getReturnType()), Params(FT->params()),
|
||||
isVarArg(FT->isVarArg()) {}
|
||||
bool operator==(const KeyTy& that) const {
|
||||
if (ReturnType != that.ReturnType)
|
||||
return false;
|
||||
|
|
Loading…
Reference in New Issue