From 7db463ced55a481a4693c8da1d413606c97fab9e Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Sat, 17 Jul 2021 16:03:14 +0200 Subject: [PATCH] [IRBuilder] Deprecate CreateConstGEP2_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 bd7fa7f..a0a56d1 100644 --- a/llvm/include/llvm/IR/IRBuilder.h +++ b/llvm/include/llvm/IR/IRBuilder.h @@ -1944,8 +1944,10 @@ public: return Insert(GetElementPtrInst::Create(Ty, Ptr, Idxs), Name); } - Value *CreateConstGEP2_64(Value *Ptr, uint64_t Idx0, uint64_t Idx1, - const Twine &Name = "") { + LLVM_ATTRIBUTE_DEPRECATED( + Value *CreateConstGEP2_64(Value *Ptr, uint64_t Idx0, uint64_t Idx1, + const Twine &Name = ""), + "Use the version with explicit element type instead") { return CreateConstGEP2_64( Ptr->getType()->getScalarType()->getPointerElementType(), Ptr, Idx0, Idx1, Name); -- 2.7.4