[llvm] 5102084 - [Docs] Add release notes for opaque pointers (NFC)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 22 05:14:28 PDT 2022


Author: Nikita Popov
Date: 2022-07-22T14:14:03+02:00
New Revision: 5102084787a10a82d9d8f59e129a24ba659d9118

URL: https://github.com/llvm/llvm-project/commit/5102084787a10a82d9d8f59e129a24ba659d9118
DIFF: https://github.com/llvm/llvm-project/commit/5102084787a10a82d9d8f59e129a24ba659d9118.diff

LOG: [Docs] Add release notes for opaque pointers (NFC)

Added: 
    

Modified: 
    llvm/docs/ReleaseNotes.rst

Removed: 
    


################################################################################
diff  --git a/llvm/docs/ReleaseNotes.rst b/llvm/docs/ReleaseNotes.rst
index 5f7dca3c8e64a..193898a4c31c8 100644
--- a/llvm/docs/ReleaseNotes.rst
+++ b/llvm/docs/ReleaseNotes.rst
@@ -66,6 +66,10 @@ versions of these toolchains.
 Changes to the LLVM IR
 ----------------------
 
+* LLVM now uses `opaque pointers <OpaquePointers.html>`__. This means that
+  
diff erent pointer types like ``i8*``, ``i32*`` or ``void()**`` are now
+  represented as a single ``ptr`` type. See the linked document for migration
+  instructions.
 * Renamed ``llvm.experimental.vector.extract`` intrinsic to ``llvm.vector.extract``.
 * Renamed ``llvm.experimental.vector.insert`` intrinsic to ``llvm.vector.insert``.
 * The constant expression variants of the following instructions have been
@@ -224,6 +228,19 @@ Changes to the C API
 * Add ``LLVMDeleteInstruction`` function which allows deleting instructions that
   are not inserted into a basic block.
 
+* As part of the opaque pointer migration, the following APIs are deprecated and
+  will be removed in the next release:
+  * ``LLVMBuildLoad`` -> ``LLVMBuildLoad2``
+  * ``LLVMBuildCall`` -> ``LLVMBuildCall2``
+  * ``LLVMBuildInvoke`` -> ``LLVMBuildInvoke2``
+  * ``LLVMBuildGEP`` -> ``LLVMBuildGEP2``
+  * ``LLVMBuildInBoundsGEP`` -> ``LLVMBuildInBoundsGEP2``
+  * ``LLVMBuildStructGEP`` -> ``LLVMBuildStructGEP2``
+  * ``LLVMBuildPtrDiff`` -> ``LLVMBuildPtrDiff2``
+  * ``LLVMConstGEP`` -> ``LLVMConstGEP2``
+  * ``LLVMConstInBoundsGEP`` -> ``LLVMConstInBoundsGEP2``
+  * ``LLVMAddAlias`` -> ``LLVMAddAlias2``
+
 * Refactor compression namespaces across the project, making way for a possible
   introduction of alternatives to zlib compression in the llvm toolchain.
   Changes are as follows:


        


More information about the llvm-commits mailing list