[IRBuilder] Deprecate CreateConstInBoundsGEP1_64() without element type
authorNikita Popov <nikita.ppv@gmail.com>
Sat, 17 Jul 2021 14:46:29 +0000 (16:46 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Sat, 17 Jul 2021 15:07:48 +0000 (17:07 +0200)
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

index dfcc667..4a5c03d 100644 (file)
@@ -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);