diff options
Diffstat (limited to 'llvm/docs/LangRef.rst')
-rw-r--r-- | llvm/docs/LangRef.rst | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/llvm/docs/LangRef.rst b/llvm/docs/LangRef.rst index e15c0a3acb0..ae266629a64 100644 --- a/llvm/docs/LangRef.rst +++ b/llvm/docs/LangRef.rst @@ -17304,106 +17304,3 @@ Lowering: """"""""" Lowers to a call to `objc_storeWeak <https://clang.llvm.org/docs/AutomaticReferenceCounting.html#arc-runtime-objc-storeweak>`_. - -Preserving Debug Information Intrinsics -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -These intrinsics are used to carry certain debuginfo together with -IR-level operations. For example, it may be desirable to -know the structure/union name and the original user-level field -indices. Such information got lost in IR GetElementPtr instruction -since the IR types are different from debugInfo types and unions -are converted to structs in IR. - -'``llvm.preserve.array.access.index``' Intrinsic -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Syntax: -""""""" -:: - - declare <type2> - @llvm.preserve.array.access.index.p0s_union.anons.p0a10s_union.anons(<type> base, - i32 dim, - i32 index) - -Overview: -""""""""" - -The '``llvm.preserve.array.access.index``' intrinsic returns the getelementptr address -based on array base ``base``, array dimension ``dim`` and the last access index ``index`` -into the array. - -Arguments: -"""""""""" - -The ``base`` is the array base address. The ``dim`` is the array dimension. -The ``base`` is a pointer if ``dim`` equals 0. -The ``index`` is the last access index into the array or pointer. - -Semantics: -"""""""""" - -The '``llvm.preserve.array.access.index``' intrinsic produces the same result -as a getelementptr with base ``base`` and access operands ``{dim's 0's, index}``. - -'``llvm.preserve.union.access.index``' Intrinsic -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Syntax: -""""""" -:: - - declare <type> - @llvm.preserve.union.access.index.p0s_union.anons.p0s_union.anons(<type> base, - i32 di_index) - -Overview: -""""""""" - -The '``llvm.preserve.union.access.index``' intrinsic carries the debuginfo field index -``di_index`` and returns the ``base`` address. -The ``llvm.preserve.access.index`` type of metadata is attached to this call instruction -to provide union debuginfo type. - -Arguments: -"""""""""" - -The ``base`` is the union base address. The ``di_index`` is the field index in debuginfo. - -Semantics: -"""""""""" - -The '``llvm.preserve.union.access.index``' intrinsic returns the ``base`` address. - -'``llvm.preserve.struct.access.index``' Intrinsic -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Syntax: -""""""" -:: - - declare <type2> - @llvm.preserve.struct.access.index.p0i8.p0s_struct.anon.0s(<type> base, - i32 gep_index, - i32 di_index) - -Overview: -""""""""" - -The '``llvm.preserve.struct.access.index``' intrinsic returns the getelementptr address -based on struct base ``base`` and IR struct member index ``gep_index``. -The ``llvm.preserve.access.index`` type of metadata is attached to this call instruction -to provide struct debuginfo type. - -Arguments: -"""""""""" - -The ``base`` is the structure base address. The ``gep_index`` is the struct member index -based on IR structures. The ``di_index`` is the struct member index based on debuginfo. - -Semantics: -"""""""""" - -The '``llvm.preserve.struct.access.index``' intrinsic produces the same result -as a getelementptr with base ``base`` and access operands ``{0, gep_index}``. |