[llvm] f79bab3 - [NFC][AMDGPU] DWARF Extensions For Heterogeneous Debugging clarifications

via llvm-commits llvm-commits at lists.llvm.org
Sun Mar 7 10:34:56 PST 2021


Author: Tony
Date: 2021-03-07T18:34:17Z
New Revision: f79bab3fd7f4a143d5148b6f53ac2d4650ee1c3f

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

LOG: [NFC][AMDGPU] DWARF Extensions For Heterogeneous Debugging clarifications

Clarify that the base type endianity is used when creating implicit
location storage.

Remove duplicate definition of the generic type.

Reviewed By: scott.linder

Differential Revision: https://reviews.llvm.org/D98137

Added: 
    

Modified: 
    llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst

Removed: 
    


################################################################################
diff  --git a/llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst b/llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
index fc9c0450586d..e3c828d4d0ba 100644
--- a/llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
+++ b/llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
@@ -711,8 +711,8 @@ DWARF Expression Value
 ++++++++++++++++++++++
 
 A value has a type and a literal value. It can represent a literal value of any
-supported base type of the target architecture. The base type specifies the size
-and encoding of the literal value.
+supported base type of the target architecture. The base type specifies the
+size, encoding, and endianity of the literal value.
 
 .. note::
 
@@ -1271,24 +1271,9 @@ This section describes the operations that push values on the stack.
 
 Each value stack entry has a type and a literal value and can represent a
 literal value of any supported base type of the target architecture. The base
-type specifies the size and encoding of the literal value.
+type specifies the size, encoding, and endianity of the literal value.
 
-Instead of a base type, value stack entries can have a distinguished generic
-type, which is an integral type that has the size of an address in the target
-architecture default address space and unspecified signedness.
-
-*The generic type is the same as the unspecified type used for stack operations
-defined in DWARF Version 4 and before.*
-
-An integral type is a base type that has an encoding of ``DW_ATE_signed``,
-``DW_ATE_signed_char``, ``DW_ATE_unsigned``, ``DW_ATE_unsigned_char``,
-``DW_ATE_boolean``, or any target architecture defined integral encoding in the
-inclusive range ``DW_ATE_lo_user`` to ``DW_ATE_hi_user``.
-
-.. note::
-
-  Unclear if ``DW_ATE_address`` is an integral type. GDB does not seem to
-  consider it as integral.
+The base type of value stack entries can be the distinguished generic type.
 
 .. _amdgpu-dwarf-literal-operations:
 
@@ -2107,8 +2092,8 @@ implicit storage value starting at the bit offset.
 
     ``DW_OP_stack_value`` pops one stack entry that must be a value V.
 
-    An implicit location storage LS is created with the literal value V and a
-    size equal to V's base type size.
+    An implicit location storage LS is created with the literal value V using
+    the size, encoding, and enianity specified by V's base type.
 
     It pushes a location description L with one implicit location description SL
     on the stack. SL specifies LS with a bit offset of 0.


        


More information about the llvm-commits mailing list