From 5df48493f08930ad05d9746c65fd53e5131a08d0 Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Sat, 17 Jul 2021 16:46:29 +0200 Subject: [PATCH] [IRBuilder] Deprecate CreateConstInBoundsGEP1_64() without element type This API is incompatible with opaque pointers and deprecated in favor of the version that accepts an explicit element type. --- llvm/include/llvm/IR/IRBuilder.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/llvm/include/llvm/IR/IRBuilder.h b/llvm/include/llvm/IR/IRBuilder.h index dfcc667abf4e..4a5c03dd0ede 100644 --- a/llvm/include/llvm/IR/IRBuilder.h +++ b/llvm/include/llvm/IR/IRBuilder.h @@ -1927,8 +1927,10 @@ public: return Insert(GetElementPtrInst::CreateInBounds(Ty, Ptr, Idx), Name); } - Value *CreateConstInBoundsGEP1_64(Value *Ptr, uint64_t Idx0, - const Twine &Name = "") { + LLVM_ATTRIBUTE_DEPRECATED( + Value *CreateConstInBoundsGEP1_64(Value *Ptr, uint64_t Idx0, + const Twine &Name = ""), + "Use the version with explicit element type instead") { return CreateConstInBoundsGEP1_64( Ptr->getType()->getScalarType()->getPointerElementType(), Ptr, Idx0, Name);