389 #define AMD_DBGAPI_H 1 392 #if !defined(AMD_DBGAPI_CALL) 393 #define AMD_DBGAPI_CALL 396 #if !defined(AMD_DBGAPI_EXPORT_DECORATOR) 397 #if defined(__GNUC__) 398 #define AMD_DBGAPI_EXPORT_DECORATOR __attribute__ ((visibility ("default"))) 399 #elif defined(_MSC_VER) 400 #define AMD_DBGAPI_EXPORT_DECORATOR __declspec(dllexport) 404 #if !defined(AMD_DBGAPI_IMPORT_DECORATOR) 405 #if defined(__GNUC__) 406 #define AMD_DBGAPI_IMPORT_DECORATOR 407 #elif defined(_MSC_VER) 408 #define AMD_DBGAPI_IMPORT_DECORATOR __declspec(dllimport) 412 #define AMD_DBGAPI_EXPORT AMD_DBGAPI_EXPORT_DECORATOR AMD_DBGAPI_CALL 413 #define AMD_DBGAPI_IMPORT AMD_DBGAPI_IMPORT_DECORATOR AMD_DBGAPI_CALL 415 #if !defined(AMD_DBGAPI) 416 #if defined(AMD_DBGAPI_EXPORTS) 417 #define AMD_DBGAPI AMD_DBGAPI_EXPORT 419 #define AMD_DBGAPI AMD_DBGAPI_IMPORT 423 #if defined(__cplusplus) 427 #if defined(__linux__) 428 #include <sys/types.h> 453 #define AMD_DBGAPI_VERSION_0_24 459 #define AMD_DBGAPI_VERSION_0_30 465 #define AMD_DBGAPI_VERSION_0_41 471 #define AMD_DBGAPI_VERSION_0_42 477 #define AMD_DBGAPI_VERSION_0_46 542 #if defined(__linux__) 569 #if defined(__linux__) 580 #if defined(__linux__) 590 #if defined(__linux__) 602 #if defined(__linux__) 613 #if defined(__linux__) 955 #define AMD_DBGAPI_VERSION_MAJOR 0 961 #define AMD_DBGAPI_VERSION_MINOR 46 1063 AMD_DBGAPI_VERSION_0_24;
1093 #define AMD_DBGAPI_ARCHITECTURE_NONE ((amd_dbgapi_architecture_id_t){ 0 }) 1228 uint32_t elf_amdgpu_machine,
1332 amd_dbgapi_global_address_t address, amd_dbgapi_size_t *size,
1333 const void *memory,
char **instruction_text,
1334 amd_dbgapi_symbolizer_id_t symbolizer_id,
1336 amd_dbgapi_symbolizer_id_t symbolizer_id,
1337 amd_dbgapi_global_address_t address,
1545 amd_dbgapi_global_address_t address, amd_dbgapi_size_t *size,
1591 #define AMD_DBGAPI_PROCESS_NONE ((amd_dbgapi_process_id_t){ 0 }) 1760 amd_dbgapi_client_process_id_t client_process_id,
1969 #define AMD_DBGAPI_CODE_OBJECT_NONE ((amd_dbgapi_code_object_id_t){ 0 }) 2162 #define AMD_DBGAPI_AGENT_NONE ((amd_dbgapi_agent_id_t){ 0 }) 2340 #define AMD_DBGAPI_QUEUE_NONE ((amd_dbgapi_queue_id_t){ 0 }) 2611 amd_dbgapi_os_queue_packet_id_t *read_packet_id,
2612 amd_dbgapi_os_queue_packet_id_t *write_packet_id,
2641 #define AMD_DBGAPI_DISPATCH_NONE ((amd_dbgapi_dispatch_id_t){ 0 }) 2902 #define AMD_DBGAPI_WAVE_NONE ((amd_dbgapi_wave_id_t){ 0 }) 3638 #define AMD_DBGAPI_DISPLACED_STEPPING_NONE \ 3639 (amd_dbgapi_displaced_stepping_id_t{ 0 }) 3883 #define AMD_DBGAPI_WATCHPOINT_NONE ((amd_dbgapi_watchpoint_id_t){ 0 }) 4088 amd_dbgapi_global_address_t *watchpoint_address,
4148 #define AMD_DBGAPI_REGISTER_CLASS_NONE ((amd_dbgapi_register_class_id_t){ 0 }) 4277 #define AMD_DBGAPI_REGISTER_NONE ((amd_dbgapi_register_id_t){ 0 }) 4676 amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size,
4739 amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size,
4854 #define AMD_DBGAPI_LANE_NONE ((amd_dbgapi_lane_id_t) (-1)) 4877 #define AMD_DBGAPI_ADDRESS_CLASS_NONE ((amd_dbgapi_address_class_id_t){ 0 }) 5066 #define AMD_DBGAPI_ADDRESS_SPACE_NONE ((amd_dbgapi_address_space_id_t){ 0 }) 5074 #define AMD_DBGAPI_ADDRESS_SPACE_GLOBAL ((amd_dbgapi_address_space_id_t){ 1 }) 5427 amd_dbgapi_segment_address_t source_segment_address,
5429 amd_dbgapi_segment_address_t *destination_segment_address)
5513 amd_dbgapi_segment_address_t segment_address,
5609 amd_dbgapi_lane_id_t lane_id,
5611 amd_dbgapi_segment_address_t segment_address,
5705 amd_dbgapi_lane_id_t lane_id,
5707 amd_dbgapi_segment_address_t segment_address,
5823 #define AMD_DBGAPI_EVENT_NONE ((amd_dbgapi_event_id_t){ 0 }) 6218 #define AMD_DBGAPI_SHARED_LIBRARY_NONE ((amd_dbgapi_shared_library_id_t){ 0 }) 6341 #define AMD_DBGAPI_BREAKPOINT_NONE ((amd_dbgapi_breakpoint_id_t){ 0 }) 6471 amd_dbgapi_client_thread_id_t client_thread_id,
6494 void *(*allocate_memory) (
size_t byte_size);
6542 amd_dbgapi_client_process_id_t client_process_id,
6543 amd_dbgapi_os_process_id_t *os_pid);
6580 amd_dbgapi_client_process_id_t client_process_id,
6581 const char *shared_library_name,
6608 amd_dbgapi_client_process_id_t client_process_id,
6643 amd_dbgapi_client_process_id_t client_process_id,
6645 const char *symbol_name, amd_dbgapi_global_address_t *address);
6695 amd_dbgapi_client_process_id_t client_process_id,
6697 amd_dbgapi_global_address_t address,
6731 amd_dbgapi_client_process_id_t client_process_id,
6747 #if defined(__cplusplus) Queue supports the AMD PM4 protocol.
Definition: amd-dbgapi.h:665
The wave stopped due to completing an instruction single-step.
Definition: amd-dbgapi.h:3113
Opaque agent handle.
Definition: amd-dbgapi.h:2154
Return the event kind.
Definition: amd-dbgapi.h:6007
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_dwarf_register_to_register(amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_register, amd_dbgapi_register_id_t *register_id) AMD_DBGAPI_VERSION_0_41
Return a register handle from an AMD GPU DWARF register number for an architecture.
uint64_t amd_dbgapi_global_address_t
Integral type used for a global virtual memory address in the inferior process.
Definition: amd-dbgapi.h:513
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_set_memory_precision(amd_dbgapi_process_id_t process_id, amd_dbgapi_memory_precision_t memory_precision) AMD_DBGAPI_VERSION_0_24
Control precision of memory access reporting.
void(* deallocate_memory)(void *data)
Deallocate memory that was allocated by amd_dbgapi_callbacks_s::allocate_memory.
Definition: amd-dbgapi.h:6512
uint64_t handle
Definition: amd-dbgapi.h:5817
uint64_t handle
Definition: amd-dbgapi.h:1087
Return the dispatch grid size (work-items) in the X, Y, and Z dimensions.
Definition: amd-dbgapi.h:2706
The address space is only read the waves of a kernel dispatch.
Definition: amd-dbgapi.h:5095
A set of watchpoints.
Definition: amd-dbgapi.h:4003
The wave stopped after causing a hardware fatal halt.
Definition: amd-dbgapi.h:3254
amd_dbgapi_status_t(* disable_notify_shared_library)(amd_dbgapi_client_process_id_t client_process_id, amd_dbgapi_shared_library_id_t shared_library_id)
Request to stop being notified for a shared library previously set by amd_dbgapi_callbacks_s::enable_...
Definition: amd-dbgapi.h:6607
A wave waits for memory instructions to complete before executing further instructions.
Definition: amd-dbgapi.h:5739
The client process handle is invalid.
Definition: amd-dbgapi.h:883
If none of the bits are set, then amd_dbgapi_wave_stop stopped the wave.
Definition: amd-dbgapi.h:3091
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_code_object_list(amd_dbgapi_process_id_t process_id, size_t *code_object_count, amd_dbgapi_code_object_id_t **code_objects, amd_dbgapi_changed_t *changed) AMD_DBGAPI_VERSION_0_41
Return the list of loaded code objects.
uint64_t amd_dbgapi_os_queue_id_t
Native operating system queue ID.
Definition: amd-dbgapi.h:591
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_next_pending_event(amd_dbgapi_process_id_t process_id, amd_dbgapi_event_id_t *event_id, amd_dbgapi_event_kind_t *kind) AMD_DBGAPI_VERSION_0_41
Obtain the next pending event.
A wave on the queue had a memory violation.
Definition: amd-dbgapi.h:2476
An invalid argument was given to the function.
Definition: amd-dbgapi.h:734
uint64_t handle
Definition: amd-dbgapi.h:3877
Opaque displaced stepping handle.
Definition: amd-dbgapi.h:3630
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_wave_stop(amd_dbgapi_wave_id_t wave_id) AMD_DBGAPI_VERSION_0_41
Request a wave to stop executing.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_attach(amd_dbgapi_client_process_id_t client_process_id, amd_dbgapi_process_id_t *process_id) AMD_DBGAPI_VERSION_0_30
Attach to a process in order to provide debug control of the AMD GPUs it uses.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_write_register(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id, amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size, const void *value) AMD_DBGAPI_VERSION_0_42
Write a register.
Print fatal error messages.
Definition: amd-dbgapi.h:6135
There is a fence with system memory scope.
Definition: amd-dbgapi.h:2827
The segment address cannot be converted to the requested address space.
Definition: amd-dbgapi.h:863
The instruction causes the wave to stop executing for some period of time, before continuing executio...
Definition: amd-dbgapi.h:1444
amd_dbgapi_wave_creation_t
The kinds of wave creation supported by the hardware.
Definition: amd-dbgapi.h:1895
Queue is in a valid state.
Definition: amd-dbgapi.h:2449
Opaque queue handle.
Definition: amd-dbgapi.h:2332
A packet on the queue is invalid.
Definition: amd-dbgapi.h:2472
Watchpoints are not supported.
Definition: amd-dbgapi.h:3954
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_remove_watchpoint(amd_dbgapi_process_id_t process_id, amd_dbgapi_watchpoint_id_t watchpoint_id) AMD_DBGAPI_VERSION_0_24
Remove a hardware data watchpoint previously set by amd_dbgapi_set_watchpoint.
amd_dbgapi_status_t(* insert_breakpoint)(amd_dbgapi_client_process_id_t client_process_id, amd_dbgapi_shared_library_id_t shared_library_id, amd_dbgapi_global_address_t address, amd_dbgapi_breakpoint_id_t breakpoint_id)
Insert a breakpoint in a shared library using a global address.
Definition: amd-dbgapi.h:6694
Print fatal error and warning messages.
Definition: amd-dbgapi.h:6139
The runtime has been unloaded.
Definition: amd-dbgapi.h:5981
A reserved value only present to ensure that the underlying representation of this enumeration type i...
Definition: amd-dbgapi.h:1469
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_code_object_get_info(amd_dbgapi_code_object_id_t code_object_id, amd_dbgapi_code_object_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about a code object.
Opaque process handle.
Definition: amd-dbgapi.h:1583
amd_dbgapi_status_t(* enable_notify_shared_library)(amd_dbgapi_client_process_id_t client_process_id, const char *shared_library_name, amd_dbgapi_shared_library_id_t shared_library_id, amd_dbgapi_shared_library_state_t *shared_library_state)
Request to be notified when a shared library is loaded and unloaded.
Definition: amd-dbgapi.h:6579
Read access by load instructions.
Definition: amd-dbgapi.h:3980
The instruction classification is unknown.
Definition: amd-dbgapi.h:1349
Native operating system queue ID.
Definition: amd-dbgapi.h:2396
The instruction terminates the wave execution.
Definition: amd-dbgapi.h:1412
The number of lanes supported by the wave.
Definition: amd-dbgapi.h:3001
amd_dbgapi_breakpoint_action_t
The action to perform after reporting a breakpoint has been hit.
Definition: amd-dbgapi.h:6409
Return how watchpoints are shared between processes.
Definition: amd-dbgapi.h:1617
Return the architecture of this dispatch.
Definition: amd-dbgapi.h:2670
Return the source language address class name.
Definition: amd-dbgapi.h:4899
There is a fence with agent memory scope.
Definition: amd-dbgapi.h:2823
The address space is read only.
Definition: amd-dbgapi.h:5090
amd_dbgapi_wave_state_t
The execution state of a wave.
Definition: amd-dbgapi.h:3053
uint32_t amd_dbgapi_lane_id_t
A wave lane handle.
Definition: amd-dbgapi.h:4849
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_read_register(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id, amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Read a register.
Return the AMD GPU ELF EF_AMDGPU_MACH value corresponding to the architecture.
Definition: amd-dbgapi.h:1118
There is no fence.
Definition: amd-dbgapi.h:2819
Queue supports HSA kernel dispatch with multiple producers protocol that supports cooperative dispatc...
Definition: amd-dbgapi.h:661
The wave is running in single-step mode.
Definition: amd-dbgapi.h:3063
amd_dbgapi_changed_t
Indication of if a value has changed.
Definition: amd-dbgapi.h:523
The wave is stopped.
Definition: amd-dbgapi.h:810
amd_dbgapi_register_exists_t
Indication of if a wave has a register.
Definition: amd-dbgapi.h:4379
The wave cannot be resumed.
Definition: amd-dbgapi.h:818
The wave does not have the register.
Definition: amd-dbgapi.h:4384
Opaque register class handle.
Definition: amd-dbgapi.h:4140
uint64_t handle
Definition: amd-dbgapi.h:1585
The segment address in the address space is a member of the source language address class...
Definition: amd-dbgapi.h:5447
Return the architecture to which this register class belongs.
Definition: amd-dbgapi.h:4163
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_classify_instruction(amd_dbgapi_architecture_id_t architecture_id, amd_dbgapi_global_address_t address, amd_dbgapi_size_t *size, const void *memory, amd_dbgapi_instruction_kind_t *instruction_kind, amd_dbgapi_instruction_properties_t *instruction_properties, void **instruction_information) AMD_DBGAPI_VERSION_0_46
Classify a single instruction.
amd_dbgapi_agent_info_t
Agent queries that are supported by amd_dbgapi_agent_get_info.
Definition: amd-dbgapi.h:2170
amd_dbgapi_dispatch_barrier_t
Dispatch barrier.
Definition: amd-dbgapi.h:2795
Return the size of the register in bytes.
Definition: amd-dbgapi.h:4303
A wave on the queue executed an instruction that caused an error.
Definition: amd-dbgapi.h:2486
The wave has an active displaced stepping buffer.
Definition: amd-dbgapi.h:904
The wave stopped due to triggering an enabled floating point invalid operation exception.
Definition: amd-dbgapi.h:3155
#define AMD_DBGAPI_VERSION_0_46
The function was introduced in version 0.46 of the interface and has the symbol version string of "AM...
Definition: amd-dbgapi.h:477
The wave stopped due to triggering an enabled floating point overflow exception.
Definition: amd-dbgapi.h:3140
No more watchpoints available.
Definition: amd-dbgapi.h:835
Opaque hardware data watchpoint handle.
Definition: amd-dbgapi.h:3875
Return the wave of a AMD_DBGAPI_EVENT_KIND_WAVE_STOP or AMD_DBGAPI_EVENT_KIND_WAVE_COMMAND_TERMINATED...
Definition: amd-dbgapi.h:6013
uint64_t handle
Definition: amd-dbgapi.h:6335
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_event_processed(amd_dbgapi_event_id_t event_id) AMD_DBGAPI_VERSION_0_41
Report that an event has been processed.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_dwarf_address_class_to_address_class(amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_address_class, amd_dbgapi_address_class_id_t *address_class_id) AMD_DBGAPI_VERSION_0_41
Return the architecture source language address class from a DWARF address class number for an archit...
Return the breakpoint of a AMD_DBGAPI_EVENT_KIND_BREAKPOINT_RESUME event.
Definition: amd-dbgapi.h:6018
Print no messages.
Definition: amd-dbgapi.h:6130
const char AMD_DBGAPI * amd_dbgapi_get_build_name(void) AMD_DBGAPI_VERSION_0_24
Query the installed library build name.
Return the architecture of this wave.
Definition: amd-dbgapi.h:2969
amd_dbgapi_log_level_t
The logging levels supported.
Definition: amd-dbgapi.h:6125
Return the process to which this code object belongs.
Definition: amd-dbgapi.h:1983
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_breakpoint_get_info(amd_dbgapi_breakpoint_id_t breakpoint_id, amd_dbgapi_breakpoint_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about a breakpoint.
The watchpoint handle is invalid.
Definition: amd-dbgapi.h:831
No forward progress is needed.
Definition: amd-dbgapi.h:1855
uint64_t amd_dbgapi_os_agent_id_t
Native operating system agent ID.
Definition: amd-dbgapi.h:581
The operation is not currently implemented.
Definition: amd-dbgapi.h:726
PCI slot of the agent in BDF format (see [Bus:Device.Function (BDF) Notation][bfd].
Definition: amd-dbgapi.h:2193
The wave stopped due to executing an trap instruction other than the AMD_DBGAPI_WAVE_STOP_REASON_DEBU...
Definition: amd-dbgapi.h:3205
The instruction enters the trap handler.
Definition: amd-dbgapi.h:1426
The function has executed successfully.
Definition: amd-dbgapi.h:694
The value has changed.
Definition: amd-dbgapi.h:532
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_dispatch_list(amd_dbgapi_process_id_t process_id, size_t *dispatch_count, amd_dbgapi_dispatch_id_t **dispatches, amd_dbgapi_changed_t *changed) AMD_DBGAPI_VERSION_0_41
Return the list of dispatches.
Read-modify-write access by atomic instructions.
Definition: amd-dbgapi.h:3989
The instruction has some form of special behavior not covered by any of the other instruction kinds...
Definition: amd-dbgapi.h:1453
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_wave_register_list(amd_dbgapi_wave_id_t wave_id, size_t *register_count, amd_dbgapi_register_id_t **registers) AMD_DBGAPI_VERSION_0_41
Report the list of registers supported by a wave.
Return the dispatch workgroup size (work-items) in the X, Y, and Z dimensions.
Definition: amd-dbgapi.h:2701
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_report_shared_library(amd_dbgapi_shared_library_id_t shared_library_id, amd_dbgapi_shared_library_state_t shared_library_state) AMD_DBGAPI_VERSION_0_41
Report that a shared library enabled by the amd_dbgapi_callbacks_s::enable_notify_shared_library call...
The wave is not stopped.
Definition: amd-dbgapi.h:806
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_architecture_register_class_list(amd_dbgapi_architecture_id_t architecture_id, size_t *register_class_count, amd_dbgapi_register_class_id_t **register_classes) AMD_DBGAPI_VERSION_0_24
Report the list of register classes supported by the architecture.
amd_dbgapi_queue_state_t
Queue state.
Definition: amd-dbgapi.h:2444
Queue supports the AMD SDMA protocol.
Definition: amd-dbgapi.h:669
The code object handle is invalid.
Definition: amd-dbgapi.h:778
No more displaced stepping buffers are available that are suitable for the requested wave...
Definition: amd-dbgapi.h:827
The wave stopped due to triggering an enabled floating point underflow exception. ...
Definition: amd-dbgapi.h:3145
Return the dispatch barrier setting.
Definition: amd-dbgapi.h:2681
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_write_memory(amd_dbgapi_process_id_t process_id, amd_dbgapi_wave_id_t wave_id, amd_dbgapi_lane_id_t lane_id, amd_dbgapi_address_space_id_t address_space_id, amd_dbgapi_segment_address_t segment_address, amd_dbgapi_size_t *value_size, const void *value) AMD_DBGAPI_VERSION_0_41
Write memory.
The shared library handle is invalid.
Definition: amd-dbgapi.h:871
Opaque shared library handle.
Definition: amd-dbgapi.h:6195
An event has occurred that is causing the queue to enter the error state.
Definition: amd-dbgapi.h:5927
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_displaced_stepping_get_info(amd_dbgapi_displaced_stepping_id_t displaced_stepping_id, amd_dbgapi_displaced_stepping_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about a displaced stepping buffer.
amd_dbgapi_event_info_t
Event queries that are supported by amd_dbgapi_event_get_info.
Definition: amd-dbgapi.h:5996
amd_dbgapi_status_t(* get_symbol_address)(amd_dbgapi_client_process_id_t client_process_id, amd_dbgapi_shared_library_id_t shared_library_id, const char *symbol_name, amd_dbgapi_global_address_t *address)
Return the address of a symbol in a shared library.
Definition: amd-dbgapi.h:6642
amd_dbgapi_runtime_state_t
Inferior runtime state.
Definition: amd-dbgapi.h:5972
The wave stopped due to executing a debug trap instruction.
Definition: amd-dbgapi.h:3175
amd_dbgapi_shared_library_state_t
The state of a shared library.
Definition: amd-dbgapi.h:6203
Resume execution.
Definition: amd-dbgapi.h:6414
A wave on the queue had an assert trap.
Definition: amd-dbgapi.h:2480
PCI vendor ID of the agent.
Definition: amd-dbgapi.h:2197
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_set_progress(amd_dbgapi_process_id_t process_id, amd_dbgapi_progress_t progress) AMD_DBGAPI_VERSION_0_24
Set the progress required for a process.
The list of code objects has changed.
Definition: amd-dbgapi.h:5868
Return the wave's state.
Definition: amd-dbgapi.h:2916
Return the dispatch release fence.
Definition: amd-dbgapi.h:2691
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_get_status_string(amd_dbgapi_status_t status, const char **status_string) AMD_DBGAPI_VERSION_0_24
Query a textual description of a status code.
The wave belongs to a queue that is in the error state.
Definition: amd-dbgapi.h:3125
Return the queue to which this wave belongs.
Definition: amd-dbgapi.h:2953
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_finalize(void) AMD_DBGAPI_VERSION_0_24
Finalize the library.
The instruction unconditionally branches to a literal address.
Definition: amd-dbgapi.h:1361
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_initialize(amd_dbgapi_callbacks_t *callbacks) AMD_DBGAPI_VERSION_0_30
Initialize the library.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_get_info(amd_dbgapi_process_id_t process_id, amd_dbgapi_process_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about a process.
The breakpoint handle is invalid.
Definition: amd-dbgapi.h:875
Return the reason the wave stopped as a bit set.
Definition: amd-dbgapi.h:2923
The library is already initialized.
Definition: amd-dbgapi.h:742
amd_dbgapi_code_object_info_t
Code object queries that are supported by amd_dbgapi_code_object_get_info.
Definition: amd-dbgapi.h:1977
Return the agent to which this queue belongs.
Definition: amd-dbgapi.h:2354
amd_dbgapi_queue_error_reason_t
A bit mask of the reasons that a queue is in error.
Definition: amd-dbgapi.h:2463
int amd_dbgapi_notifier_t
Type used to notify the client of the library that a process may have pending events.
Definition: amd-dbgapi.h:570
#define AMD_DBGAPI_VERSION_0_30
The function was introduced in version 0.30 of the interface and has the symbol version string of "AM...
Definition: amd-dbgapi.h:459
The instruction unconditionally branches to an address held in a pair of registers.
Definition: amd-dbgapi.h:1376
#define AMD_DBGAPI
Definition: amd-dbgapi.h:419
A command for a wave was not able to complete because the wave has terminated.
Definition: amd-dbgapi.h:5852
Return the byte size of an address in the address space.
Definition: amd-dbgapi.h:5123
Agent name.
Definition: amd-dbgapi.h:2182
The lane handle is invalid.
Definition: amd-dbgapi.h:847
The wave stopped due to triggering a data watchpoint.
Definition: amd-dbgapi.h:3109
The wave handle is invalid.
Definition: amd-dbgapi.h:802
Return the process to which this shared library belongs.
Definition: amd-dbgapi.h:6233
Opaque code object handle.
Definition: amd-dbgapi.h:1961
#define AMD_DBGAPI_VERSION_0_24
The function was introduced in version 0.24 of the interface and has the symbol version string of "AM...
Definition: amd-dbgapi.h:453
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_get_architecture(uint32_t elf_amdgpu_machine, amd_dbgapi_architecture_id_t *architecture_id) AMD_DBGAPI_VERSION_0_24
Get an architecture from the AMD GPU ELF EF_AMDGPU_MACH value corresponding to the architecture...
amd_dbgapi_address_class_state_t
Indication of whether a segment address in an address space is a member of an source language address...
Definition: amd-dbgapi.h:5436
Return the AMD GPU DWARF address space number for the address space's architecture.
Definition: amd-dbgapi.h:5138
amd_dbgapi_address_class_info_t
Source language address class queries that are supported by ::amd_dbgapi_architecture_address_class_g...
Definition: amd-dbgapi.h:4886
uint64_t handle
Definition: amd-dbgapi.h:6197
uint64_t handle
Definition: amd-dbgapi.h:3632
Return the address space access.
Definition: amd-dbgapi.h:5133
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_architecture_get_info(amd_dbgapi_architecture_id_t architecture_id, amd_dbgapi_architecture_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_30
Query information about an architecture.
The register class handle is invalid.
Definition: amd-dbgapi.h:839
Return the dispatch completion event address.
Definition: amd-dbgapi.h:2741
amd_dbgapi_register_class_state_t
Indication of whether a register is a member of a register class.
Definition: amd-dbgapi.h:4566
A reserved value only present to ensure that the underlying representation of this enumeration type i...
Definition: amd-dbgapi.h:3268
The instruction unconditionally halts the wave.
Definition: amd-dbgapi.h:1431
Return the number of data watchpoints supported by the process.
Definition: amd-dbgapi.h:1611
uint64_t handle
Definition: amd-dbgapi.h:4142
amd_dbgapi_watchpoint_kind_t
Watchpoint memory access kinds.
Definition: amd-dbgapi.h:3975
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_wave_get_info(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_wave_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about a wave.
The notifier for the process that indicates if pending events are available.
Definition: amd-dbgapi.h:1605
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_set_wave_creation(amd_dbgapi_process_id_t process_id, amd_dbgapi_wave_creation_t creation) AMD_DBGAPI_VERSION_0_24
Set the wave creation mode for a process.
void(* log_message)(amd_dbgapi_log_level_t level, const char *message)
Report a log message.
Definition: amd-dbgapi.h:6742
Queue supports the HSA kernel dispatch with single producer protocol.
Definition: amd-dbgapi.h:651
Return the dispatch acquire fence.
Definition: amd-dbgapi.h:2686
Opaque event handle.
Definition: amd-dbgapi.h:5815
The runtime support in the inferior has been loaded or unloaded.
Definition: amd-dbgapi.h:5891
Normal progress is needed.
Definition: amd-dbgapi.h:1831
amd_dbgapi_watchpoint_id_t * watchpoint_ids
Definition: amd-dbgapi.h:4006
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_architecture_address_space_list(amd_dbgapi_architecture_id_t architecture_id, size_t *address_space_count, amd_dbgapi_address_space_id_t **address_spaces) AMD_DBGAPI_VERSION_0_24
Report the list of address spaces supported by the architecture.
Return the process to which this breakpoint belongs.
Definition: amd-dbgapi.h:6360
Return the dispatch to which this wave belongs.
Definition: amd-dbgapi.h:2947
An invalid combination of arguments was given to the function.
Definition: amd-dbgapi.h:738
Return the queue packet ID of the dispatch packet that initiated the dispatch.
Definition: amd-dbgapi.h:2676
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_address_space_get_info(amd_dbgapi_address_space_id_t address_space_id, amd_dbgapi_address_space_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_46
Query information about an address space.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_read_memory(amd_dbgapi_process_id_t process_id, amd_dbgapi_wave_id_t wave_id, amd_dbgapi_lane_id_t lane_id, amd_dbgapi_address_space_id_t address_space_id, amd_dbgapi_segment_address_t segment_address, amd_dbgapi_size_t *value_size, void *value) AMD_DBGAPI_VERSION_0_41
Read memory.
amd_dbgapi_event_kind_t
The event kinds.
Definition: amd-dbgapi.h:5828
void AMD_DBGAPI amd_dbgapi_set_log_level(amd_dbgapi_log_level_t level) AMD_DBGAPI_VERSION_0_24
Set the logging level.
Return the register class name.
Definition: amd-dbgapi.h:4170
The instruction unconditionally branches to an address held in a pair of source registers and the add...
Definition: amd-dbgapi.h:1407
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_wave_register_exists(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id, amd_dbgapi_register_exists_t *exists) AMD_DBGAPI_VERSION_0_41
Query if a register exists for a wave.
No addresses in the address spaces can alias.
Definition: amd-dbgapi.h:5277
The wave has an outstanding stop request.
Definition: amd-dbgapi.h:814
The library is not initialized.
Definition: amd-dbgapi.h:746
The wave stopped due to triggering an enabled floating point input denormal exception.
Definition: amd-dbgapi.h:3130
The symbol was not found.
Definition: amd-dbgapi.h:896
Write access by store instructions or read-modify-write access by atomic instructions.
Definition: amd-dbgapi.h:3985
amd_dbgapi_address_space_alias_t
Indication of whether addresses in two address spaces may alias.
Definition: amd-dbgapi.h:5272
Return the register handle for the PC for the architecture.
Definition: amd-dbgapi.h:1153
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_convert_address_space(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_lane_id_t lane_id, amd_dbgapi_address_space_id_t source_address_space_id, amd_dbgapi_segment_address_t source_segment_address, amd_dbgapi_address_space_id_t destination_address_space_id, amd_dbgapi_segment_address_t *destination_segment_address) AMD_DBGAPI_VERSION_0_41
Convert a source segment address in the source address space into a destination segment address in th...
The wave stopped due to detecting an unrecoverable ECC error.
Definition: amd-dbgapi.h:3245
amd_dbgapi_address_space_access_t
Indication of how the address space is accessed.
Definition: amd-dbgapi.h:5079
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_agent_get_info(amd_dbgapi_agent_id_t agent_id, amd_dbgapi_agent_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about an agent.
Queue supports the AMD SDMA XGMI protocol.
Definition: amd-dbgapi.h:673
The bytes being disassembled are not a legal instruction.
Definition: amd-dbgapi.h:774
uint64_t handle
Definition: amd-dbgapi.h:2334
uint64_t amd_dbgapi_segment_address_t
Each address space has its own linear address to access it termed a segment address.
Definition: amd-dbgapi.h:5345
The instruction has no properties.
Definition: amd-dbgapi.h:1464
Return the AMD GPU DWARF register number for the register's architecture.
Definition: amd-dbgapi.h:4330
Dispatch has a barrier.
Definition: amd-dbgapi.h:2805
Return the breakpoint instruction for the architecture.
Definition: amd-dbgapi.h:1142
uint64_t amd_dbgapi_os_queue_packet_id_t
Native operating system queue packet ID.
Definition: amd-dbgapi.h:603
The value has not changed.
Definition: amd-dbgapi.h:528
The instruction conditionally branches to a literal address.
Definition: amd-dbgapi.h:1368
The URI name of the ELF shared object from which the code object was loaded.
Definition: amd-dbgapi.h:2032
Opaque address space handle.
Definition: amd-dbgapi.h:5058
The ELF AMD GPU machine value is invalid or unsupported.
Definition: amd-dbgapi.h:782
The difference between the address in the ELF shared object and the address the code object is loaded...
Definition: amd-dbgapi.h:2038
The address space supports all accesses.
Definition: amd-dbgapi.h:5085
The register handle is invalid.
Definition: amd-dbgapi.h:843
Memory instructions execute normally and a wave does not wait for the memory access to complete...
Definition: amd-dbgapi.h:5734
Native operating system process ID.
Definition: amd-dbgapi.h:1629
amd_dbgapi_process_info_t
Process queries that are supported by amd_dbgapi_process_get_info.
Definition: amd-dbgapi.h:1599
uint64_t handle
Definition: amd-dbgapi.h:2635
The wave stopped due to triggering an enabled floating point inexact exception.
Definition: amd-dbgapi.h:3150
The register is not a member of the register class.
Definition: amd-dbgapi.h:4571
The address class handle is invalid.
Definition: amd-dbgapi.h:851
A wave has stopped.
Definition: amd-dbgapi.h:5837
Return the process to which this dispatch belongs.
Definition: amd-dbgapi.h:2665
amd_dbgapi_architecture_info_t
Architecture queries that are supported by amd_dbgapi_architecture_get_info.
Definition: amd-dbgapi.h:1102
Return the process to which this wave belongs.
Definition: amd-dbgapi.h:2964
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_prefetch_register(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id, amd_dbgapi_size_t register_count) AMD_DBGAPI_VERSION_0_41
Prefetch register values.
Opaque register handle.
Definition: amd-dbgapi.h:4269
amd_dbgapi_dispatch_fence_scope_t
Dispatch memory fence scope.
Definition: amd-dbgapi.h:2814
Addresses in the address spaces may alias.
Definition: amd-dbgapi.h:5281
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_displaced_stepping_start(amd_dbgapi_wave_id_t wave_id, const void *saved_instruction_bytes, amd_dbgapi_displaced_stepping_id_t *displaced_stepping) AMD_DBGAPI_VERSION_0_46
Associate an active displaced stepping buffer with a wave.
Return the architecture to which this register belongs.
Definition: amd-dbgapi.h:4291
The watchpoints of a process are shared between all processes.
Definition: amd-dbgapi.h:3966
Maximum number of waves supported by an execution unit.
Definition: amd-dbgapi.h:2211
The event handle is invalid.
Definition: amd-dbgapi.h:867
amd_dbgapi_shared_library_info_t
Shared library queries that are supported by amd_dbgapi_shared_library_get_info.
Definition: amd-dbgapi.h:6227
The wave stopped due to triggering an enabled integer divide by zero exception.
Definition: amd-dbgapi.h:3160
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_architecture_register_list(amd_dbgapi_architecture_id_t architecture_id, size_t *register_count, amd_dbgapi_register_id_t **registers) AMD_DBGAPI_VERSION_0_24
Report the list of registers supported by the architecture.
Normal wave creation allows new waves to be created.
Definition: amd-dbgapi.h:1900
Return the dispatch group segment size in bytes.
Definition: amd-dbgapi.h:2716
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_watchpoint_get_info(amd_dbgapi_watchpoint_id_t watchpoint_id, amd_dbgapi_watchpoint_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about a watchpoint.
Return the address space name.
Definition: amd-dbgapi.h:5118
Return the size in bytes of the memory holding the queue packets.
Definition: amd-dbgapi.h:2391
pid_t amd_dbgapi_os_process_id_t
Native operating system process ID.
Definition: amd-dbgapi.h:543
Return the architecture name.
Definition: amd-dbgapi.h:1110
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_report_breakpoint_hit(amd_dbgapi_breakpoint_id_t breakpoint_id, amd_dbgapi_client_thread_id_t client_thread_id, amd_dbgapi_breakpoint_action_t *breakpoint_action) AMD_DBGAPI_VERSION_0_41
Report that a breakpoint inserted by the amd_dbgapi_callbacks_s::insert_breakpoint calback has been h...
Return the agent to which this dispatch belongs.
Definition: amd-dbgapi.h:2660
The displaced stepping handle is invalid.
Definition: amd-dbgapi.h:822
Resume execution in in single step mode.
Definition: amd-dbgapi.h:3417
A fatal error has occurred.
Definition: amd-dbgapi.h:720
amd_dbgapi_queue_info_t
Queue queries that are supported by amd_dbgapi_queue_get_info.
Definition: amd-dbgapi.h:2348
The runtime has been loaded and debugging is supported by the library.
Definition: amd-dbgapi.h:5977
The segment address in the address space is not a member of the source language address class...
Definition: amd-dbgapi.h:5442
The wave stopped with an XNACK error.
Definition: amd-dbgapi.h:3263
Return the dispatch kernel code entry address.
Definition: amd-dbgapi.h:2731
amd_dbgapi_register_info_t
Register queries that are supported by amd_dbgapi_register_get_info.
Definition: amd-dbgapi.h:4285
Return the process to which this event belongs.
Definition: amd-dbgapi.h:6002
uint64_t handle
Definition: amd-dbgapi.h:2156
size_t count
Definition: amd-dbgapi.h:4005
The watchpoints are not shared across processes.
Definition: amd-dbgapi.h:3960
amd_dbgapi_register_class_info_t
Register class queries that are supported by amd_dbgapi_architecture_register_class_get_info.
Definition: amd-dbgapi.h:4157
void AMD_DBGAPI amd_dbgapi_get_version(uint32_t *major, uint32_t *minor, uint32_t *patch) AMD_DBGAPI_VERSION_0_24
Query the version of the installed library.
Return the agent to which this wave belongs.
Definition: amd-dbgapi.h:2959
Request to resume a host breakpoint.
Definition: amd-dbgapi.h:5881
The process handle is invalid.
Definition: amd-dbgapi.h:786
The wave stopped due to triggering a memory violation.
Definition: amd-dbgapi.h:3220
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_wave_list(amd_dbgapi_process_id_t process_id, size_t *wave_count, amd_dbgapi_wave_id_t **waves, amd_dbgapi_changed_t *changed) AMD_DBGAPI_VERSION_0_41
Return the list of existing waves.
The instruction conditionally branches to an address held in a pair of registers. ...
Definition: amd-dbgapi.h:1386
Return the architecture specific address space that is used to implement a pointer or reference to th...
Definition: amd-dbgapi.h:4908
amd_dbgapi_watchpoint_info_t
Watchpoint queries that are supported by amd_dbgapi_watchpoint_get_info.
Definition: amd-dbgapi.h:3891
The wave stopped due to executing an assert trap instruction.
Definition: amd-dbgapi.h:3193
The instruction unconditionally branches to a literal address and the address of the following instru...
Definition: amd-dbgapi.h:1397
The address space handle is invalid.
Definition: amd-dbgapi.h:855
Print fatal error, warning, and info messages.
Definition: amd-dbgapi.h:6143
Opaque dispatch handle.
Definition: amd-dbgapi.h:2633
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_architecture_address_class_list(amd_dbgapi_architecture_id_t architecture_id, size_t *address_class_count, amd_dbgapi_address_class_id_t **address_classes) AMD_DBGAPI_VERSION_0_24
Report the list of source language address classes supported by the architecture. ...
Return the base address of the memory holding the queue packets.
Definition: amd-dbgapi.h:2386
Return the client thread of a AMD_DBGAPI_EVENT_KIND_BREAKPOINT_RESUME event.
Definition: amd-dbgapi.h:6023
Queue supports the HSA kernel dispatch with multiple producers protocol.
Definition: amd-dbgapi.h:635
The instruction executes sequentially.
Definition: amd-dbgapi.h:1355
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_dispatch_get_info(amd_dbgapi_dispatch_id_t dispatch_id, amd_dbgapi_dispatch_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about a dispatch.
The wave has the register.
Definition: amd-dbgapi.h:4388
Return the queue to which this dispatch belongs.
Definition: amd-dbgapi.h:2655
The wave stopped due to triggering an enabled floating point divide by zero exception.
Definition: amd-dbgapi.h:3135
The runtime has been loaded but there is a restriction error that prevents debugging the process...
Definition: amd-dbgapi.h:5987
Return if the runtime loaded in the inferior is supported by the library for a AMD_DBGAPI_EVENT_KIND_...
Definition: amd-dbgapi.h:6030
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_queue_get_info(amd_dbgapi_queue_id_t queue_id, amd_dbgapi_queue_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about a queue.
Callbacks that the client of the library must provide.
Definition: amd-dbgapi.h:6480
amd_dbgapi_instruction_properties_t
A bit mask of the properties of an instruction.
Definition: amd-dbgapi.h:1459
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_register_is_in_register_class(amd_dbgapi_register_class_id_t register_class_id, amd_dbgapi_register_id_t register_id, amd_dbgapi_register_class_state_t *register_class_state) AMD_DBGAPI_VERSION_0_41
Determine if a register is a member of a register class.
The shared library is not currently loaded.
Definition: amd-dbgapi.h:892
There is a restriction error that prevents debugging the process.
Definition: amd-dbgapi.h:762
Return the breakpoint instruction size in bytes for the architecture.
Definition: amd-dbgapi.h:1134
Return the dispatch private segment size in bytes.
Definition: amd-dbgapi.h:2711
Opaque source language address class handle.
Definition: amd-dbgapi.h:4869
Return the architecture to which this address space belongs.
Definition: amd-dbgapi.h:5111
Unknown queue type.
Definition: amd-dbgapi.h:619
Return the process to which this queue belongs.
Definition: amd-dbgapi.h:2359
amd_dbgapi_progress_t
The kinds of progress supported by the library.
Definition: amd-dbgapi.h:1824
amd_dbgapi_breakpoint_info_t
Breakpoint queries that are supported by amd_dbgapi_breakpoint_get_info.
Definition: amd-dbgapi.h:6349
Return the reason the queue is in error as a bit set.
Definition: amd-dbgapi.h:2381
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_wave_resume(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_resume_mode_t resume_mode) AMD_DBGAPI_VERSION_0_46
Resume execution of a stopped wave.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_dwarf_address_space_to_address_space(amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_address_space, amd_dbgapi_address_space_id_t *address_space_id) AMD_DBGAPI_VERSION_0_41
Return the address space from an AMD GPU DWARF address space number for an architecture.
amd_dbgapi_memory_precision_t
Memory access precision.
Definition: amd-dbgapi.h:5728
uint64_t handle
Definition: amd-dbgapi.h:1963
Return the process to which this watchpoint belongs.
Definition: amd-dbgapi.h:3897
Opaque wave handle.
Definition: amd-dbgapi.h:2894
Return the number of bytes to subtract from the PC after stopping due to a breakpoint instruction to ...
Definition: amd-dbgapi.h:1148
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_address_is_in_address_class(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_lane_id_t lane_id, amd_dbgapi_address_space_id_t address_space_id, amd_dbgapi_segment_address_t segment_address, amd_dbgapi_address_class_id_t address_class_id, amd_dbgapi_address_class_state_t *address_class_state) AMD_DBGAPI_VERSION_0_41
Determine if a segment address in an address space is a member of a source language address class...
uint64_t handle
Definition: amd-dbgapi.h:2896
Return the largest instruction size in bytes for the architecture.
Definition: amd-dbgapi.h:1123
amd_dbgapi_address_space_info_t
Address space queries that are supported by amd_dbgapi_address_space_get_info.
Definition: amd-dbgapi.h:5105
Return the minimum instruction alignment in bytes for the architecture.
Definition: amd-dbgapi.h:1129
The native operating system process associated with a client process has exited.
Definition: amd-dbgapi.h:888
Return the shared library to which this breakpoint belongs.
Definition: amd-dbgapi.h:6355
The instruction performs some kind of execution barrier which may result in the wave being halted unt...
Definition: amd-dbgapi.h:1438
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_queue_packet_list(amd_dbgapi_queue_id_t queue_id, amd_dbgapi_os_queue_packet_id_t *read_packet_id, amd_dbgapi_os_queue_packet_id_t *write_packet_id, size_t *packets_byte_size, void **packets_bytes) AMD_DBGAPI_VERSION_0_41
Return the packets for a queue.
Stop wave creation prevents new waves from being created.
Definition: amd-dbgapi.h:1904
Native operating system agent ID.
Definition: amd-dbgapi.h:2216
Return the dispatch kernel descriptor address.
Definition: amd-dbgapi.h:2726
The wave is running.
Definition: amd-dbgapi.h:3058
No event.
Definition: amd-dbgapi.h:5833
Resume normal execution.
Definition: amd-dbgapi.h:3413
The operation is not supported.
Definition: amd-dbgapi.h:730
uint64_t handle
Definition: amd-dbgapi.h:4271
uint64_t handle
Definition: amd-dbgapi.h:5060
Return the dispatch grid dimensionality.
Definition: amd-dbgapi.h:2696
uint64_t amd_dbgapi_size_t
Integral type used for sizes, including memory allocations, in the inferior.
Definition: amd-dbgapi.h:518
Return the NULL segment address value in the address space.
Definition: amd-dbgapi.h:5128
The shared library is loaded.
Definition: amd-dbgapi.h:6208
Return the dispatch kernel argument segment address.
Definition: amd-dbgapi.h:2721
Return the architecture of this queue.
Definition: amd-dbgapi.h:2364
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_shared_library_get_info(amd_dbgapi_shared_library_id_t shared_library_id, amd_dbgapi_shared_library_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about a shared library.
#define AMD_DBGAPI_VERSION_0_41
The function was introduced in version 0.41 of the interface and has the symbol version string of "AM...
Definition: amd-dbgapi.h:465
amd_dbgapi_wave_stop_reason_t
A bit mask of the reasons that a wave stopped.
Definition: amd-dbgapi.h:3085
The register is a member of the register class.
Definition: amd-dbgapi.h:4575
Return the architecture of this agent.
Definition: amd-dbgapi.h:2187
Return the process to which this displaced stepping belongs.
Definition: amd-dbgapi.h:3654
Total number of Execution Units (EUs) available in the agent.
Definition: amd-dbgapi.h:2206
A callback to the client reported an error.
Definition: amd-dbgapi.h:879
The wave stopped due to executing a breakpoint instruction.
Definition: amd-dbgapi.h:3097
amd_dbgapi_os_queue_type_t
Native operating system queue type.
Definition: amd-dbgapi.h:614
amd_dbgapi_resume_mode_t
The mode in which to resuming the execution of a wave.
Definition: amd-dbgapi.h:3408
amd_dbgapi_status_t
AMD debugger API status codes.
Definition: amd-dbgapi.h:689
Return the current program counter value of the wave.
Definition: amd-dbgapi.h:2975
The agent handle is invalid.
Definition: amd-dbgapi.h:790
#define AMD_DBGAPI_VERSION_0_42
The function was introduced in version 0.42 of the interface and has the symbol version string of "AM...
Definition: amd-dbgapi.h:471
Return the AMD GPU DWARF address class number for the address class' architecture.
Definition: amd-dbgapi.h:4913
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_register_get_info(amd_dbgapi_register_id_t register_id, amd_dbgapi_register_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_46
Query information about a register.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_event_get_info(amd_dbgapi_event_id_t event_id, amd_dbgapi_event_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about an event.
The architecture handle is invalid.
Definition: amd-dbgapi.h:770
A reserved value only present to ensure that the underlying representation of this enumeration type i...
Definition: amd-dbgapi.h:2491
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_disassemble_instruction(amd_dbgapi_architecture_id_t architecture_id, amd_dbgapi_global_address_t address, amd_dbgapi_size_t *size, const void *memory, char **instruction_text, amd_dbgapi_symbolizer_id_t symbolizer_id, amd_dbgapi_status_t(*symbolizer)( amd_dbgapi_symbolizer_id_t symbolizer_id, amd_dbgapi_global_address_t address, char **symbol_text)) AMD_DBGAPI_VERSION_0_30
Disassemble a single instruction.
The wave workgroup coordinate in the dispatch grid dimensions.
Definition: amd-dbgapi.h:2989
Leave execution halted.
Definition: amd-dbgapi.h:6418
Opaque architecture handle.
Definition: amd-dbgapi.h:1085
If none of the bits are set, then the queue is not in the error state.
Definition: amd-dbgapi.h:2468
Return the queue type.
Definition: amd-dbgapi.h:2369
amd_dbgapi_wave_info_t
Wave queries that are supported by amd_dbgapi_wave_get_info.
Definition: amd-dbgapi.h:2910
uint64_t handle
Definition: amd-dbgapi.h:4871
The address is not within the shared library.
Definition: amd-dbgapi.h:900
The wave's number in the workgroup.
Definition: amd-dbgapi.h:2996
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_agent_list(amd_dbgapi_process_id_t process_id, size_t *agent_count, amd_dbgapi_agent_id_t **agents, amd_dbgapi_changed_t *changed) AMD_DBGAPI_VERSION_0_41
Return the list of agents.
Return the queue state.
Definition: amd-dbgapi.h:2374
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_detach(amd_dbgapi_process_id_t process_id) AMD_DBGAPI_VERSION_0_24
Detach from a process and no longer have debug control of the AMD GPU devices it uses.
The wave is stopped.
Definition: amd-dbgapi.h:3076
Return the process to which this agent belongs.
Definition: amd-dbgapi.h:2176
The wave stopped due to executing an illegal instruction.
Definition: amd-dbgapi.h:3230
Queue is in an error state.
Definition: amd-dbgapi.h:2457
struct amd_dbgapi_symbolizer_id_s * amd_dbgapi_symbolizer_id_t
Opaque client symbolizer handle.
Definition: amd-dbgapi.h:1237
An error occurred while trying to access memory in the inferior.
Definition: amd-dbgapi.h:859
A generic error has occurred.
Definition: amd-dbgapi.h:698
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_displaced_stepping_complete(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_displaced_stepping_id_t displaced_stepping) AMD_DBGAPI_VERSION_0_42
Complete a displaced stepping buffer for a wave.
The process is already attached to the given inferior process.
Definition: amd-dbgapi.h:766
struct amd_dbgapi_client_process_s * amd_dbgapi_client_process_id_t
Opaque client process handle.
Definition: amd-dbgapi.h:1571
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_set_watchpoint(amd_dbgapi_process_id_t process_id, amd_dbgapi_global_address_t address, amd_dbgapi_size_t size, amd_dbgapi_watchpoint_kind_t kind, amd_dbgapi_watchpoint_id_t *watchpoint_id, amd_dbgapi_global_address_t *watchpoint_address, amd_dbgapi_size_t *watchpoint_size) AMD_DBGAPI_VERSION_0_41
Set a hardware data watchpoint.
amd_dbgapi_displaced_stepping_info_t
Displaced stepping queries that are supported by amd_dbgapi_displaced_stepping_id_t.
Definition: amd-dbgapi.h:3648
Dispatch has no barrier.
Definition: amd-dbgapi.h:2800
amd_dbgapi_watchpoint_share_kind_t
The way watchpoints are shared between processes.
Definition: amd-dbgapi.h:3949
The dispatch handle is invalid.
Definition: amd-dbgapi.h:798
amd_dbgapi_instruction_kind_t
The kinds of instruction classifications.
Definition: amd-dbgapi.h:1343
Read, write, or read-modify-write access by load, store, or atomic instructions.
Definition: amd-dbgapi.h:3994
The shared library is unloaded.
Definition: amd-dbgapi.h:6212
Return the watchpoint(s) the wave triggered.
Definition: amd-dbgapi.h:2936
struct amd_dbgapi_client_thread_s * amd_dbgapi_client_thread_id_t
Opaque client thread handle.
Definition: amd-dbgapi.h:6430
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_architecture_register_class_get_info(amd_dbgapi_register_class_id_t register_class_id, amd_dbgapi_register_class_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_41
Query information about a register class of an architecture.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_address_class_get_info(amd_dbgapi_address_class_id_t address_class_id, amd_dbgapi_address_class_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_46
Query information about a source language address class of an architecture.
Return the register name.
Definition: amd-dbgapi.h:4298
Return if the architectures of all the agents of a process support controlling memory precision...
Definition: amd-dbgapi.h:1623
Print fatal error, warning, info, and verbose messages.
Definition: amd-dbgapi.h:6147
The queue handle is invalid.
Definition: amd-dbgapi.h:794
amd_dbgapi_status_t(* remove_breakpoint)(amd_dbgapi_client_process_id_t client_process_id, amd_dbgapi_breakpoint_id_t breakpoint_id)
Remove a breakpoint previously inserted by amd_dbgapi_callbacks_s::insert_breakpoint.
Definition: amd-dbgapi.h:6730
PCI device ID of the agent.
Definition: amd-dbgapi.h:2201
Return the architecture to which this address class belongs.
Definition: amd-dbgapi.h:4892
Return the register type as a C style type string.
Definition: amd-dbgapi.h:4325
amd_dbgapi_status_t(* get_os_pid)(amd_dbgapi_client_process_id_t client_process_id, amd_dbgapi_os_process_id_t *os_pid)
Return the native operating system process handle for the process identified by the client process ha...
Definition: amd-dbgapi.h:6541
amd_dbgapi_dispatch_info_t
Dispatch queries that are supported by amd_dbgapi_dispatch_get_info.
Definition: amd-dbgapi.h:2649
The wave cannot be resumed in the manner requested due to displaced stepping restrictions.
Definition: amd-dbgapi.h:909
Opaque breakpoint handle.
Definition: amd-dbgapi.h:6333
Return the current execution mask of the wave.
Definition: amd-dbgapi.h:2983
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_address_spaces_may_alias(amd_dbgapi_address_space_id_t address_space_id1, amd_dbgapi_address_space_id_t address_space_id2, amd_dbgapi_address_space_alias_t *address_space_alias) AMD_DBGAPI_VERSION_0_41
Determine if an address in one address space may alias an address in another address space...
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_queue_list(amd_dbgapi_process_id_t process_id, size_t *queue_count, amd_dbgapi_queue_id_t **queues, amd_dbgapi_changed_t *changed) AMD_DBGAPI_VERSION_0_41
Return the list of queues.