From: Craig Topper Date: Sat, 1 Aug 2015 22:20:27 +0000 (+0000) Subject: Merge the const and non-const Type::getScalarType to a const version that returns... X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=e0582480a4d8e804ca6661cd30a447b3956a7f26;p=oota-llvm.git Merge the const and non-const Type::getScalarType to a const version that returns a non-const pointer. Since we don't put const on Types all places were already calling the non-const version. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@243843 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/IR/Type.h b/include/llvm/IR/Type.h index e24ba0f0971..bbee3f93741 100644 --- a/include/llvm/IR/Type.h +++ b/include/llvm/IR/Type.h @@ -304,8 +304,7 @@ public: /// getScalarType - If this is a vector type, return the element type, /// otherwise return 'this'. - const Type *getScalarType() const LLVM_READONLY; - Type *getScalarType() LLVM_READONLY; + Type *getScalarType() const LLVM_READONLY; //===--------------------------------------------------------------------===// // Type Iteration support. diff --git a/lib/IR/Type.cpp b/lib/IR/Type.cpp index ad0013aed39..17d24465601 100644 --- a/lib/IR/Type.cpp +++ b/lib/IR/Type.cpp @@ -42,16 +42,10 @@ Type *Type::getPrimitiveType(LLVMContext &C, TypeID IDNumber) { /// getScalarType - If this is a vector type, return the element type, /// otherwise return this. -Type *Type::getScalarType() { - if (VectorType *VTy = dyn_cast(this)) - return VTy->getElementType(); - return this; -} - -const Type *Type::getScalarType() const { - if (const VectorType *VTy = dyn_cast(this)) +Type *Type::getScalarType() const { + if (auto *VTy = dyn_cast(this)) return VTy->getElementType(); - return this; + return const_cast(this); } /// isIntegerTy - Return true if this is an IntegerType of the specified width.