aboutsummaryrefslogtreecommitdiff
path: root/llvm/docs/SourceLevelDebugging.rst
diff options
context:
space:
mode:
authorStephen Tozer <Stephen.Tozer@Sony.com>2021-03-04 11:59:21 +0000
committerStephen Tozer <Stephen.Tozer@Sony.com>2021-03-04 11:59:21 +0000
commitd2000b45d033c06dc7973f59909a0ad12887ff51 (patch)
treede87f2e697943ac5f1b6dc3fafac2ba605dcf61c /llvm/docs/SourceLevelDebugging.rst
parentd07f106f4a48b6e941266525b6f7177834d7b74e (diff)
downloadllvm-d2000b45d033c06dc7973f59909a0ad12887ff51.zip
llvm-d2000b45d033c06dc7973f59909a0ad12887ff51.tar.gz
llvm-d2000b45d033c06dc7973f59909a0ad12887ff51.tar.bz2
Revert "[DebugInfo] Add new instruction and DIExpression operator for variadic debug values"
This reverts commit d07f106f4a48b6e941266525b6f7177834d7b74e.
Diffstat (limited to 'llvm/docs/SourceLevelDebugging.rst')
-rw-r--r--llvm/docs/SourceLevelDebugging.rst22
1 files changed, 2 insertions, 20 deletions
diff --git a/llvm/docs/SourceLevelDebugging.rst b/llvm/docs/SourceLevelDebugging.rst
index 357f720..e5984cd 100644
--- a/llvm/docs/SourceLevelDebugging.rst
+++ b/llvm/docs/SourceLevelDebugging.rst
@@ -576,15 +576,13 @@ the equivalent location is used.
After MIR locations are assigned to each variable, machine pseudo-instructions
corresponding to each ``llvm.dbg.value`` and ``llvm.dbg.addr`` intrinsic are
-inserted. There are two forms of this type of instruction.
-
-The first form, ``DBG_VALUE``, appears thus:
+inserted. These ``DBG_VALUE`` instructions appear thus:
.. code-block:: text
DBG_VALUE %1, $noreg, !123, !DIExpression()
-And has the following operands:
+And have the following operands:
* The first operand can record the variable location as a register,
a frame index, an immediate, or the base address register if the original
debug intrinsic referred to memory. ``$noreg`` indicates the variable
@@ -596,22 +594,6 @@ And has the following operands:
* Operand 3 is the Variable field of the original debug intrinsic.
* Operand 4 is the Expression field of the original debug intrinsic.
-The second form, ``DBG_VALUE_LIST``, appears thus:
-
-.. code-block:: text
-
- DBG_VALUE_LIST !123, !DIExpression(DW_OP_LLVM_arg, 0, DW_OP_LLVM_arg, 1, DW_OP_plus), %1, %2
-
-And has the following operands:
- * The first operand is the Variable field of the original debug intrinsic.
- * The second operand is the Expression field of the original debug intrinsic.
- * Any number of operands, from the 3rd onwards, record a sequence of variable
- location operands, which may take any of the same values as the first
- operand of the ``DBG_VALUE`` instruction above. These variable location
- operands are inserted into the final DWARF Expression in positions indicated
- by the DW_OP_LLVM_arg operator in the DIExpression, as described in
- :ref:`DIExpression<_DIExpression>`.
-
The position at which the DBG_VALUEs are inserted should correspond to the
positions of their matching ``llvm.dbg.value`` intrinsics in the IR block. As
with optimization, LLVM aims to preserve the order in which variable