Closed verdog closed 4 weeks ago
Thanks for reporting the issue, and please accept apologies for the delayed response. There is an internal ticket to track this issue so we can provide a long term solution.
In the meantime, here is a quick patch that would work-around the issue you see. This is not a permanent (or clean) solution, but could unblock someone experiencing an issue similar to this one.
diff --git a/gdb/amd-dbgapi-target.c b/gdb/amd-dbgapi-target.c
index 830ef40644a..9c079069a11 100644
--- a/gdb/amd-dbgapi-target.c
+++ b/gdb/amd-dbgapi-target.c
@@ -1047,6 +1047,12 @@ amd_dbgapi_target::xfer_partial (enum target_object object, const char *annex,
uint64_t dwarf_address_space
= (uint64_t) amdgpu_address_space_id_from_core_address (offset);
+ /* Promote GLOBAL addresses to GENERIC.
+
+ See DWARF_*_ADDRESS_CLASS in gdb/amdgpu-tdep.c. */
+ if (dwarf_address_space == 0 /* DWARF_GLOBAL_ADDR_CLASS */)
+ dwarf_address_space = 1 /* DWARF_GENERIC_ADDR_CLASS */;
+
amd_dbgapi_segment_address_t segment_address
= amdgpu_segment_address_from_core_address (offset);
@verdog Do you still need assistance with this ticket? If not, please close the ticket. Thanks!
I have visibility on the internal ticket and will watch it from there. Thanks!
This code:
launches a simple kernel that calls the passed in lambda. The kernel works as expected, setting every value in
d_buf
and thenbuf
to its index.If I set a breakpoint in the lambda code, rocgdb can't print the values of items that were captured by value, but can print the local variable
i
:This workflow is common in RAJA, see their example programs.
ROCm Versions
Using an MI100 GPU.