summaryrefslogtreecommitdiffstats
path: root/llvm/docs
diff options
context:
space:
mode:
authorDjordje Todorovic <djordje.todorovic@rt-rk.com>2019-06-27 13:52:34 +0000
committerDjordje Todorovic <djordje.todorovic@rt-rk.com>2019-06-27 13:52:34 +0000
commita0d45058ebb39dc18cbcdcba01d11d36eca001be (patch)
treea5a1d6c8bee81c6fd5322c99ec0887959905625f /llvm/docs
parentc692a8dc51de996eed2214379c368c93e9a5354b (diff)
downloadbcm5719-llvm-a0d45058ebb39dc18cbcdcba01d11d36eca001be.tar.gz
bcm5719-llvm-a0d45058ebb39dc18cbcdcba01d11d36eca001be.zip
[DWARF] Handle the DW_OP_entry_value operand
Add the IR and the AsmPrinter parts for handling of the DW_OP_entry_values DWARF operation. ([11/13] Introduce the debug entry values.) Co-authored-by: Ananth Sowda <asowda@cisco.com> Co-authored-by: Nikola Prica <nikola.prica@rt-rk.com> Co-authored-by: Ivan Baev <ibaev@cisco.com> Differential Revision: https://reviews.llvm.org/D60866 llvm-svn: 364542
Diffstat (limited to 'llvm/docs')
-rw-r--r--llvm/docs/LangRef.rst11
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/docs/LangRef.rst b/llvm/docs/LangRef.rst
index 7b74971c817..2322bbfd7a6 100644
--- a/llvm/docs/LangRef.rst
+++ b/llvm/docs/LangRef.rst
@@ -4729,6 +4729,17 @@ The current supported opcode vocabulary is limited:
of the stack is treated as an address. The second stack entry is treated as an
address space identifier.
- ``DW_OP_stack_value`` marks a constant value.
+- If an expression is marked with ``DW_OP_entry_value`` all register and
+ memory read operations refer to the respective value at the function entry.
+ The first operand of ``DW_OP_entry_value`` is the size of following
+ DWARF expression.
+ ``DW_OP_entry_value`` may appear after the ``LiveDebugValues`` pass.
+ LLVM only supports entry values for function parameters
+ that are unmodified throughout a function and that are described as
+ simple register location descriptions.
+ ``DW_OP_entry_value`` may also appear after the ``AsmPrinter`` pass when
+ a call site parameter value (``DW_AT_call_site_parameter_value``)
+ is represented as entry value of the parameter.
DWARF specifies three kinds of simple location descriptions: Register, memory,
and implicit location descriptions. Note that a location description is
OpenPOWER on IntegriCloud