forked from OSchip/llvm-project
Replace const std::vector& with ArrayRef in the type creation APIs.
llvm-svn: 129024
This commit is contained in:
parent
6895b87dfe
commit
e30f330393
|
@ -19,6 +19,7 @@
|
|||
#define LLVM_DERIVED_TYPES_H
|
||||
|
||||
#include "llvm/Type.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/Support/DataTypes.h"
|
||||
|
||||
namespace llvm {
|
||||
|
@ -147,7 +148,7 @@ class FunctionType : public DerivedType {
|
|||
|
||||
FunctionType(const FunctionType &); // Do not implement
|
||||
const FunctionType &operator=(const FunctionType &); // Do not implement
|
||||
FunctionType(const Type *Result, const std::vector<const Type*> &Params,
|
||||
FunctionType(const Type *Result, ArrayRef<const Type*> Params,
|
||||
bool IsVarArgs);
|
||||
|
||||
public:
|
||||
|
@ -156,7 +157,7 @@ public:
|
|||
///
|
||||
static FunctionType *get(
|
||||
const Type *Result, ///< The result type
|
||||
const std::vector<const Type*> &Params, ///< The types of the parameters
|
||||
ArrayRef<const Type*> Params, ///< The types of the parameters
|
||||
bool isVarArg ///< Whether this is a variable argument length function
|
||||
);
|
||||
|
||||
|
@ -237,14 +238,13 @@ class StructType : public CompositeType {
|
|||
friend class TypeMap<StructValType, StructType>;
|
||||
StructType(const StructType &); // Do not implement
|
||||
const StructType &operator=(const StructType &); // Do not implement
|
||||
StructType(LLVMContext &C,
|
||||
const std::vector<const Type*> &Types, bool isPacked);
|
||||
StructType(LLVMContext &C, ArrayRef<const Type*> Types, bool isPacked);
|
||||
public:
|
||||
/// StructType::get - This static method is the primary way to create a
|
||||
/// StructType.
|
||||
///
|
||||
static StructType *get(LLVMContext &Context,
|
||||
const std::vector<const Type*> &Params,
|
||||
ArrayRef<const Type*> Params,
|
||||
bool isPacked=false);
|
||||
|
||||
/// StructType::get - Create an empty structure type.
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
#include "llvm/Assembly/Writer.h"
|
||||
#include "llvm/LLVMContext.h"
|
||||
#include "llvm/Metadata.h"
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/DepthFirstIterator.h"
|
||||
#include "llvm/ADT/StringExtras.h"
|
||||
#include "llvm/ADT/SCCIterator.h"
|
||||
|
@ -460,7 +461,7 @@ bool FunctionType::isValidArgumentType(const Type *ArgTy) {
|
|||
}
|
||||
|
||||
FunctionType::FunctionType(const Type *Result,
|
||||
const std::vector<const Type*> &Params,
|
||||
ArrayRef<const Type*> Params,
|
||||
bool IsVarArgs)
|
||||
: DerivedType(Result->getContext(), FunctionTyID), isVarArgs(IsVarArgs) {
|
||||
ContainedTys = reinterpret_cast<PATypeHandle*>(this+1);
|
||||
|
@ -483,7 +484,7 @@ FunctionType::FunctionType(const Type *Result,
|
|||
}
|
||||
|
||||
StructType::StructType(LLVMContext &C,
|
||||
const std::vector<const Type*> &Types, bool isPacked)
|
||||
ArrayRef<const Type*> Types, bool isPacked)
|
||||
: CompositeType(C, StructTyID) {
|
||||
ContainedTys = reinterpret_cast<PATypeHandle*>(this + 1);
|
||||
NumContainedTys = Types.size();
|
||||
|
@ -838,7 +839,7 @@ FunctionValType FunctionValType::get(const FunctionType *FT) {
|
|||
|
||||
// FunctionType::get - The factory function for the FunctionType class...
|
||||
FunctionType *FunctionType::get(const Type *ReturnType,
|
||||
const std::vector<const Type*> &Params,
|
||||
ArrayRef<const Type*> Params,
|
||||
bool isVarArg) {
|
||||
FunctionValType VT(ReturnType, Params, isVarArg);
|
||||
FunctionType *FT = 0;
|
||||
|
@ -915,7 +916,7 @@ bool VectorType::isValidElementType(const Type *ElemTy) {
|
|||
//
|
||||
|
||||
StructType *StructType::get(LLVMContext &Context,
|
||||
const std::vector<const Type*> &ETypes,
|
||||
ArrayRef<const Type*> ETypes,
|
||||
bool isPacked) {
|
||||
StructValType STV(ETypes, isPacked);
|
||||
StructType *ST = 0;
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
#ifndef LLVM_TYPESCONTEXT_H
|
||||
#define LLVM_TYPESCONTEXT_H
|
||||
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include <map>
|
||||
|
||||
|
@ -157,8 +158,8 @@ class StructValType {
|
|||
std::vector<const Type*> ElTypes;
|
||||
bool packed;
|
||||
public:
|
||||
StructValType(const std::vector<const Type*> &args, bool isPacked)
|
||||
: ElTypes(args), packed(isPacked) {}
|
||||
StructValType(ArrayRef<const Type*> args, bool isPacked)
|
||||
: ElTypes(args.vec()), packed(isPacked) {}
|
||||
|
||||
static StructValType get(const StructType *ST) {
|
||||
std::vector<const Type *> ElTypes;
|
||||
|
@ -187,8 +188,8 @@ class FunctionValType {
|
|||
std::vector<const Type*> ArgTypes;
|
||||
bool isVarArg;
|
||||
public:
|
||||
FunctionValType(const Type *ret, const std::vector<const Type*> &args,
|
||||
bool isVA) : RetTy(ret), ArgTypes(args), isVarArg(isVA) {}
|
||||
FunctionValType(const Type *ret, ArrayRef<const Type*> args, bool isVA)
|
||||
: RetTy(ret), ArgTypes(args.vec()), isVarArg(isVA) {}
|
||||
|
||||
static FunctionValType get(const FunctionType *FT);
|
||||
|
||||
|
|
Loading…
Reference in New Issue