482#define AMD_DBGAPI_H 1
485#if !defined(AMD_DBGAPI_CALL)
486#define AMD_DBGAPI_CALL
489#if !defined(AMD_DBGAPI_EXPORT_DECORATOR)
491#define AMD_DBGAPI_EXPORT_DECORATOR __attribute__ ((visibility ("default")))
492#elif defined(_MSC_VER)
493#define AMD_DBGAPI_EXPORT_DECORATOR __declspec(dllexport)
497#if !defined(AMD_DBGAPI_IMPORT_DECORATOR)
499#define AMD_DBGAPI_IMPORT_DECORATOR
500#elif defined(_MSC_VER)
501#define AMD_DBGAPI_IMPORT_DECORATOR __declspec(dllimport)
505#define AMD_DBGAPI_EXPORT AMD_DBGAPI_EXPORT_DECORATOR AMD_DBGAPI_CALL
506#define AMD_DBGAPI_IMPORT AMD_DBGAPI_IMPORT_DECORATOR AMD_DBGAPI_CALL
508#if !defined(AMD_DBGAPI)
509#if defined(AMD_DBGAPI_EXPORTS)
510#define AMD_DBGAPI AMD_DBGAPI_EXPORT
512#define AMD_DBGAPI AMD_DBGAPI_IMPORT
516#if __cplusplus >= 201103L
518#define AMD_DBGAPI_HANDLE_LITERAL(type, value) (type{ value })
519#elif __STDC_VERSION__ >= 199901L
521#define AMD_DBGAPI_HANDLE_LITERAL(type, value) ((type){ value })
523#define AMD_DBGAPI_HANDLE_LITERAL(type, value) {value}
526#if defined(__cplusplus) && __cplusplus >= 201402L
527#define DEPRECATED [[deprecated]]
532#if defined(__cplusplus)
536#if defined(__linux__)
537#include <sys/types.h>
562#define AMD_DBGAPI_VERSION_0_54
568#define AMD_DBGAPI_VERSION_0_56
574#define AMD_DBGAPI_VERSION_0_58
580#define AMD_DBGAPI_VERSION_0_62
586#define AMD_DBGAPI_VERSION_0_64
592#define AMD_DBGAPI_VERSION_0_67
598#define AMD_DBGAPI_VERSION_0_68
604#define AMD_DBGAPI_VERSION_0_70
610#define AMD_DBGAPI_VERSION_0_76
616#define AMD_DBGAPI_VERSION_0_77
677#if defined(__linux__)
705#if defined(__linux__)
716#if defined(__linux__)
726#if defined(__linux__)
738#if defined(__linux__)
749#if defined(__linux__)
1074#define AMD_DBGAPI_VERSION_MAJOR 0
1080#define AMD_DBGAPI_VERSION_MINOR 77
1213#define AMD_DBGAPI_ARCHITECTURE_NONE \
1214 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_architecture_id_t, 0)
1349 uint32_t elf_amdgpu_machine,
1456 const void *memory,
char **instruction_text,
1712#define AMD_DBGAPI_PROCESS_NONE \
1713 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_process_id_t, 0)
2282#define AMD_DBGAPI_CODE_OBJECT_NONE \
2283 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_code_object_id_t, 0)
2483#define AMD_DBGAPI_AGENT_NONE \
2484 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_agent_id_t, 0)
2717#define AMD_DBGAPI_QUEUE_NONE \
2718 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_queue_id_t, 0)
2904 AMD_DBGAPI_EXCEPTION_WAVE_APERTURE_VIOLATION
DEPRECATED
3097#define AMD_DBGAPI_DISPATCH_NONE \
3098 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_dispatch_id_t, 0)
3364#define AMD_DBGAPI_WORKGROUP_NONE \
3365 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_workgroup_id_t, 0)
3542#define AMD_DBGAPI_WAVE_NONE \
3543 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_wave_id_t, 0)
3907 AMD_DBGAPI_WAVE_STOP_REASON_APERTURE_VIOLATION
DEPRECATED
4358#define AMD_DBGAPI_DISPLACED_STEPPING_NONE \
4359 (amd_dbgapi_displaced_stepping_id_t{ 0 })
4610#define AMD_DBGAPI_WATCHPOINT_NONE \
4611 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_watchpoint_id_t, 0)
4877#define AMD_DBGAPI_REGISTER_CLASS_NONE \
4878 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_register_class_id_t, 0)
5007#define AMD_DBGAPI_REGISTER_NONE \
5008 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_register_id_t, 0)
5682#define AMD_DBGAPI_LANE_NONE ((amd_dbgapi_lane_id_t) (-1))
5705#define AMD_DBGAPI_ADDRESS_CLASS_NONE \
5706 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_class_id_t, 0)
5890#define AMD_DBGAPI_ADDRESS_SPACE_NONE \
5891 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_space_id_t, 0)
5899#define AMD_DBGAPI_ADDRESS_SPACE_GLOBAL \
5900 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_space_id_t, 1)
6809#define AMD_DBGAPI_EVENT_NONE \
6810 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_event_id_t, 0)
7210#define AMD_DBGAPI_BREAKPOINT_NONE \
7211 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_breakpoint_id_t, 0)
7390 void *(*allocate_memory) (
size_t byte_size);
7447 size_t value_size,
void *value);
7563 const void *write_buffer);
7578#if defined(__cplusplus)
#define AMD_DBGAPI
Definition amd-dbgapi.h:512
#define DEPRECATED
Old deprecated name kept for backward compatibility.
Definition amd-dbgapi.h:529
amd_dbgapi_agent_state_t
Agent state.
Definition amd-dbgapi.h:2559
amd_dbgapi_agent_info_t
Agent queries that are supported by amd_dbgapi_agent_get_info.
Definition amd-dbgapi.h:2493
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_67
Query information about an agent.
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_54
Return the list of agents.
@ AMD_DBGAPI_AGENT_STATE_NOT_SUPPORTED
Agent does not support debugging.
Definition amd-dbgapi.h:2586
@ AMD_DBGAPI_AGENT_STATE_SUPPORTED
Agent supports debugging.
Definition amd-dbgapi.h:2563
@ AMD_DBGAPI_AGENT_INFO_STATE
Return the agent state.
Definition amd-dbgapi.h:2519
@ AMD_DBGAPI_AGENT_INFO_OS_ID
Native operating system agent ID.
Definition amd-dbgapi.h:2552
@ AMD_DBGAPI_AGENT_INFO_PCI_DEVICE_ID
PCI device ID of the agent.
Definition amd-dbgapi.h:2537
@ AMD_DBGAPI_AGENT_INFO_PROCESS
Return the process to which this agent belongs.
Definition amd-dbgapi.h:2498
@ AMD_DBGAPI_AGENT_INFO_PCI_VENDOR_ID
PCI vendor ID of the agent.
Definition amd-dbgapi.h:2533
@ AMD_DBGAPI_AGENT_INFO_NAME
Agent name.
Definition amd-dbgapi.h:2504
@ AMD_DBGAPI_AGENT_INFO_ARCHITECTURE
Return the architecture of this agent.
Definition amd-dbgapi.h:2514
@ AMD_DBGAPI_AGENT_INFO_EXECUTION_UNIT_COUNT
Total number of Execution Units (EUs) available in the agent.
Definition amd-dbgapi.h:2542
@ AMD_DBGAPI_AGENT_INFO_PCI_DOMAIN
PCI domain the agent is in.
Definition amd-dbgapi.h:2523
@ AMD_DBGAPI_AGENT_INFO_PCI_SLOT
PCI slot of the agent in BDF format (see [Bus:Device.Function (BDF) Notation][bfd].
Definition amd-dbgapi.h:2529
@ AMD_DBGAPI_AGENT_INFO_MAX_WAVES_PER_EXECUTION_UNIT
Maximum number of waves supported by an execution unit.
Definition amd-dbgapi.h:2547
amd_dbgapi_architecture_info_t
Architecture queries that are supported by amd_dbgapi_architecture_get_info.
Definition amd-dbgapi.h:1224
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_54
Disassemble a single instruction.
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_58
Classify a single instruction.
struct amd_dbgapi_symbolizer_id_s * amd_dbgapi_symbolizer_id_t
Opaque client symbolizer handle.
Definition amd-dbgapi.h:1358
amd_dbgapi_instruction_kind_t
The kinds of instruction classifications.
Definition amd-dbgapi.h:1467
amd_dbgapi_instruction_properties_t
A bit mask of the properties of an instruction.
Definition amd-dbgapi.h:1583
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_54
Query information about an architecture.
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_54
Get an architecture from the AMD GPU ELF EF_AMDGPU_MACH value corresponding to the architecture.
@ AMD_DBGAPI_ARCHITECTURE_INFO_ELF_AMDGPU_MACHINE
Return the AMD GPU ELF EF_AMDGPU_MACH value corresponding to the architecture.
Definition amd-dbgapi.h:1239
@ AMD_DBGAPI_ARCHITECTURE_INFO_MINIMUM_INSTRUCTION_ALIGNMENT
Return the minimum instruction alignment in bytes for the architecture.
Definition amd-dbgapi.h:1250
@ AMD_DBGAPI_ARCHITECTURE_INFO_BREAKPOINT_INSTRUCTION_SIZE
Return the breakpoint instruction size in bytes for the architecture.
Definition amd-dbgapi.h:1255
@ AMD_DBGAPI_ARCHITECTURE_INFO_PC_REGISTER
Return the register handle for the PC for the architecture.
Definition amd-dbgapi.h:1274
@ AMD_DBGAPI_ARCHITECTURE_INFO_BREAKPOINT_INSTRUCTION_PC_ADJUST
Return the number of bytes to subtract from the PC after stopping due to a breakpoint instruction to ...
Definition amd-dbgapi.h:1269
@ AMD_DBGAPI_ARCHITECTURE_INFO_LARGEST_INSTRUCTION_SIZE
Return the largest instruction size in bytes for the architecture.
Definition amd-dbgapi.h:1244
@ AMD_DBGAPI_ARCHITECTURE_INFO_BREAKPOINT_INSTRUCTION
Return the breakpoint instruction for the architecture.
Definition amd-dbgapi.h:1263
@ AMD_DBGAPI_ARCHITECTURE_INFO_NAME
Return the architecture name.
Definition amd-dbgapi.h:1231
@ AMD_DBGAPI_INSTRUCTION_KIND_BARRIER
The instruction performs some kind of execution barrier which may result in the wave being halted unt...
Definition amd-dbgapi.h:1561
@ AMD_DBGAPI_INSTRUCTION_KIND_INDIRECT_CALL_REGISTER_PAIRS
The instruction unconditionally branches to an address held in a pair of source registers and the add...
Definition amd-dbgapi.h:1530
@ AMD_DBGAPI_INSTRUCTION_KIND_SEQUENTIAL
The instruction executes sequentially.
Definition amd-dbgapi.h:1478
@ AMD_DBGAPI_INSTRUCTION_KIND_INDIRECT_BRANCH_CONDITIONAL_REGISTER_PAIR
The instruction conditionally branches to an address held in a pair of registers.
Definition amd-dbgapi.h:1509
@ AMD_DBGAPI_INSTRUCTION_KIND_SPECIAL
The instruction has some form of special behavior not covered by any of the other instruction kinds.
Definition amd-dbgapi.h:1576
@ AMD_DBGAPI_INSTRUCTION_KIND_HALT
The instruction unconditionally halts the wave.
Definition amd-dbgapi.h:1554
@ AMD_DBGAPI_INSTRUCTION_KIND_TRAP
The instruction enters the trap handler.
Definition amd-dbgapi.h:1549
@ AMD_DBGAPI_INSTRUCTION_KIND_DIRECT_CALL_REGISTER_PAIR
The instruction unconditionally branches to a literal address and the address of the following instru...
Definition amd-dbgapi.h:1520
@ AMD_DBGAPI_INSTRUCTION_KIND_INDIRECT_BRANCH_REGISTER_PAIR
The instruction unconditionally branches to an address held in a pair of registers.
Definition amd-dbgapi.h:1499
@ AMD_DBGAPI_INSTRUCTION_KIND_DIRECT_BRANCH_CONDITIONAL
The instruction conditionally branches to a literal address.
Definition amd-dbgapi.h:1491
@ AMD_DBGAPI_INSTRUCTION_KIND_SLEEP
The instruction causes the wave to stop executing for some period of time, before continuing executio...
Definition amd-dbgapi.h:1567
@ AMD_DBGAPI_INSTRUCTION_KIND_TERMINATE
The instruction terminates the wave execution.
Definition amd-dbgapi.h:1535
@ AMD_DBGAPI_INSTRUCTION_KIND_UNKNOWN
The instruction classification is unknown.
Definition amd-dbgapi.h:1472
@ AMD_DBGAPI_INSTRUCTION_KIND_DIRECT_BRANCH
The instruction unconditionally branches to a literal address.
Definition amd-dbgapi.h:1484
@ AMD_DBGAPI_INSTRUCTION_PROPERTY_NONE
The instruction has no properties.
Definition amd-dbgapi.h:1587
uint64_t amd_dbgapi_size_t
Integral type used for sizes, including memory allocations, in the inferior.
Definition amd-dbgapi.h:653
uint64_t amd_dbgapi_os_queue_id_t
Native operating system queue ID.
Definition amd-dbgapi.h:727
uint64_t amd_dbgapi_global_address_t
Integral type used for a global virtual memory address in the inferior process.
Definition amd-dbgapi.h:648
uint64_t amd_dbgapi_os_queue_packet_id_t
Native operating system queue packet ID.
Definition amd-dbgapi.h:739
uint64_t amd_dbgapi_os_agent_id_t
Native operating system agent ID.
Definition amd-dbgapi.h:717
amd_dbgapi_os_queue_type_t
Native operating system queue type.
Definition amd-dbgapi.h:751
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:706
pid_t amd_dbgapi_os_process_id_t
Native operating system process ID.
Definition amd-dbgapi.h:678
amd_dbgapi_changed_t
Indication of if a value has changed.
Definition amd-dbgapi.h:659
@ AMD_DBGAPI_OS_QUEUE_TYPE_UNKNOWN
Unknown queue type.
Definition amd-dbgapi.h:755
@ AMD_DBGAPI_OS_QUEUE_TYPE_AMD_SDMA
Queue supports the AMD SDMA protocol.
Definition amd-dbgapi.h:767
@ AMD_DBGAPI_OS_QUEUE_TYPE_AMD_PM4
Queue supports the AMD PM4 protocol.
Definition amd-dbgapi.h:763
@ AMD_DBGAPI_OS_QUEUE_TYPE_AMD_SDMA_XGMI
Queue supports the AMD SDMA XGMI protocol.
Definition amd-dbgapi.h:771
@ AMD_DBGAPI_OS_QUEUE_TYPE_HSA_AQL
Queue supports the HSA AQL protocol.
Definition amd-dbgapi.h:759
@ AMD_DBGAPI_CHANGED_YES
The value has changed.
Definition amd-dbgapi.h:667
@ AMD_DBGAPI_CHANGED_NO
The value has not changed.
Definition amd-dbgapi.h:663
amd_dbgapi_breakpoint_info_t
Breakpoint queries that are supported by amd_dbgapi_breakpoint_get_info.
Definition amd-dbgapi.h:7220
amd_dbgapi_client_process_info_t
Client queries that are supported by the client_process_get_info callback.
Definition amd-dbgapi.h:7346
amd_dbgapi_breakpoint_action_t
The action to perform after reporting a breakpoint has been hit.
Definition amd-dbgapi.h:7275
struct amd_dbgapi_client_thread_s * amd_dbgapi_client_thread_id_t
Opaque client thread handle.
Definition amd-dbgapi.h:7295
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_54
Query information about a breakpoint.
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_54
Report that a breakpoint inserted by the amd_dbgapi_callbacks_s::insert_breakpoint callback has been ...
@ AMD_DBGAPI_BREAKPOINT_INFO_PROCESS
Return the process to which this breakpoint belongs.
Definition amd-dbgapi.h:7225
@ AMD_DBGAPI_CLIENT_PROCESS_INFO_CORE_STATE
If the current process is created from a core file, return the content of the AMDGPU state note if pr...
Definition amd-dbgapi.h:7367
@ AMD_DBGAPI_CLIENT_PROCESS_INFO_OS_PID
Return the native operating system process handle.
Definition amd-dbgapi.h:7357
@ AMD_DBGAPI_BREAKPOINT_ACTION_RESUME
Resume execution.
Definition amd-dbgapi.h:7279
@ AMD_DBGAPI_BREAKPOINT_ACTION_HALT
Leave execution halted.
Definition amd-dbgapi.h:7283
amd_dbgapi_code_object_info_t
Code object queries that are supported by amd_dbgapi_code_object_get_info.
Definition amd-dbgapi.h:2292
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_54
Query information about a code object.
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_54
Return the list of loaded code objects.
@ AMD_DBGAPI_CODE_OBJECT_INFO_PROCESS
Return the process to which this code object belongs.
Definition amd-dbgapi.h:2297
@ AMD_DBGAPI_CODE_OBJECT_INFO_URI_NAME
The URI name of the ELF shared object from which the code object was loaded.
Definition amd-dbgapi.h:2353
@ AMD_DBGAPI_CODE_OBJECT_INFO_LOAD_ADDRESS
The difference between the address in the ELF shared object and the address the code object is loaded...
Definition amd-dbgapi.h:2359
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_unfreeze(amd_dbgapi_process_id_t process_id) AMD_DBGAPI_VERSION_0_76
Unfreeze the process identified by process_id.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_freeze(amd_dbgapi_process_id_t process_id) AMD_DBGAPI_VERSION_0_76
Freeze the process identified by process_id.
amd_dbgapi_dispatch_info_t
Dispatch queries that are supported by amd_dbgapi_dispatch_get_info.
Definition amd-dbgapi.h:3107
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_54
Return the list of dispatches.
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_54
Query information about a dispatch.
amd_dbgapi_dispatch_barrier_t
Dispatch barrier.
Definition amd-dbgapi.h:3253
amd_dbgapi_dispatch_fence_scope_t
Dispatch memory fence scope.
Definition amd-dbgapi.h:3272
@ AMD_DBGAPI_DISPATCH_INFO_ACQUIRE_FENCE
Return the dispatch acquire fence.
Definition amd-dbgapi.h:3143
@ AMD_DBGAPI_DISPATCH_INFO_KERNEL_ARGUMENT_SEGMENT_ADDRESS
Return the dispatch kernel argument segment address.
Definition amd-dbgapi.h:3178
@ AMD_DBGAPI_DISPATCH_INFO_QUEUE
Return the queue to which this dispatch belongs.
Definition amd-dbgapi.h:3112
@ AMD_DBGAPI_DISPATCH_INFO_GROUP_SEGMENT_SIZE
Return the dispatch group segment size in bytes.
Definition amd-dbgapi.h:3173
@ AMD_DBGAPI_DISPATCH_INFO_AGENT
Return the agent to which this dispatch belongs.
Definition amd-dbgapi.h:3117
@ AMD_DBGAPI_DISPATCH_INFO_GRID_DIMENSIONS
Return the dispatch grid dimensionality.
Definition amd-dbgapi.h:3153
@ AMD_DBGAPI_DISPATCH_INFO_OS_QUEUE_PACKET_ID
Return the queue packet ID of the dispatch packet that initiated the dispatch.
Definition amd-dbgapi.h:3133
@ AMD_DBGAPI_DISPATCH_INFO_PROCESS
Return the process to which this dispatch belongs.
Definition amd-dbgapi.h:3122
@ AMD_DBGAPI_DISPATCH_INFO_GRID_SIZES
Return the dispatch grid size (work-items) in the X, Y, and Z dimensions.
Definition amd-dbgapi.h:3163
@ AMD_DBGAPI_DISPATCH_INFO_RELEASE_FENCE
Return the dispatch release fence.
Definition amd-dbgapi.h:3148
@ AMD_DBGAPI_DISPATCH_INFO_BARRIER
Return the dispatch barrier setting.
Definition amd-dbgapi.h:3138
@ AMD_DBGAPI_DISPATCH_INFO_ARCHITECTURE
Return the architecture of this dispatch.
Definition amd-dbgapi.h:3127
@ AMD_DBGAPI_DISPATCH_INFO_KERNEL_DESCRIPTOR_ADDRESS
Return the dispatch kernel descriptor address.
Definition amd-dbgapi.h:3183
@ AMD_DBGAPI_DISPATCH_INFO_PRIVATE_SEGMENT_SIZE
Return the dispatch private segment size in bytes.
Definition amd-dbgapi.h:3168
@ AMD_DBGAPI_DISPATCH_INFO_WORKGROUP_SIZES
Return the dispatch workgroup size (work-items) in the X, Y, and Z dimensions.
Definition amd-dbgapi.h:3158
@ AMD_DBGAPI_DISPATCH_INFO_KERNEL_COMPLETION_ADDRESS
Return the dispatch completion event address.
Definition amd-dbgapi.h:3198
@ AMD_DBGAPI_DISPATCH_INFO_KERNEL_CODE_ENTRY_ADDRESS
Return the dispatch kernel code entry address.
Definition amd-dbgapi.h:3188
@ AMD_DBGAPI_DISPATCH_BARRIER_NONE
Dispatch has no barrier.
Definition amd-dbgapi.h:3257
@ AMD_DBGAPI_DISPATCH_BARRIER_PRESENT
Dispatch has a barrier.
Definition amd-dbgapi.h:3262
@ AMD_DBGAPI_DISPATCH_FENCE_SCOPE_NONE
There is no fence.
Definition amd-dbgapi.h:3276
@ AMD_DBGAPI_DISPATCH_FENCE_SCOPE_AGENT
There is a fence with agent memory scope.
Definition amd-dbgapi.h:3280
@ AMD_DBGAPI_DISPATCH_FENCE_SCOPE_SYSTEM
There is a fence with system memory scope.
Definition amd-dbgapi.h:3284
amd_dbgapi_displaced_stepping_info_t
Displaced stepping queries that are supported by amd_dbgapi_displaced_stepping_id_t.
Definition amd-dbgapi.h:4369
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_54
Query information about a displaced stepping buffer.
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_76
Complete a displaced stepping buffer for a wave.
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_76
Associate an active displaced stepping buffer with a wave.
@ AMD_DBGAPI_DISPLACED_STEPPING_INFO_PROCESS
Return the process to which this displaced stepping buffer belongs.
Definition amd-dbgapi.h:4374
amd_dbgapi_event_info_t
Event queries that are supported by amd_dbgapi_event_get_info.
Definition amd-dbgapi.h:6994
amd_dbgapi_runtime_state_t
Inferior's runtime state.
Definition amd-dbgapi.h:6969
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_event_processed(amd_dbgapi_event_id_t event_id) AMD_DBGAPI_VERSION_0_54
Report that an event has been processed.
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_54
Query information about an event.
amd_dbgapi_event_kind_t
The event kinds.
Definition amd-dbgapi.h:6816
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_54
Obtain the next pending event.
@ AMD_DBGAPI_EVENT_INFO_CLIENT_THREAD
Return the client thread of a AMD_DBGAPI_EVENT_KIND_BREAKPOINT_RESUME event.
Definition amd-dbgapi.h:7020
@ AMD_DBGAPI_EVENT_INFO_KIND
Return the event kind.
Definition amd-dbgapi.h:7004
@ AMD_DBGAPI_EVENT_INFO_RUNTIME_STATE
Return if the runtime loaded in the inferior is supported by the library for a AMD_DBGAPI_EVENT_KIND_...
Definition amd-dbgapi.h:7027
@ AMD_DBGAPI_EVENT_INFO_BREAKPOINT
Return the breakpoint of a AMD_DBGAPI_EVENT_KIND_BREAKPOINT_RESUME event.
Definition amd-dbgapi.h:7015
@ AMD_DBGAPI_EVENT_INFO_WAVE
Return the wave of a AMD_DBGAPI_EVENT_KIND_WAVE_STOP or AMD_DBGAPI_EVENT_KIND_WAVE_COMMAND_TERMINATED...
Definition amd-dbgapi.h:7010
@ AMD_DBGAPI_EVENT_INFO_PROCESS
Return the process to which this event belongs.
Definition amd-dbgapi.h:6999
@ AMD_DBGAPI_EVENT_INFO_QUEUE
Return the queue of a AMD_DBGAPI_EVENT_KIND_QUEUE_ERROR event.
Definition amd-dbgapi.h:7032
@ AMD_DBGAPI_RUNTIME_STATE_UNLOADED
The inferior's runtime has been unloaded.
Definition amd-dbgapi.h:6978
@ AMD_DBGAPI_RUNTIME_STATE_LOADED_SUCCESS
The inferior's runtime has been loaded and debugging is supported by the library.
Definition amd-dbgapi.h:6974
@ AMD_DBGAPI_RUNTIME_STATE_LOADED_ERROR_RESTRICTION
The inferior's runtime has been loaded but there is a restriction error that prevents debugging the p...
Definition amd-dbgapi.h:6984
@ AMD_DBGAPI_EVENT_KIND_CODE_OBJECT_LIST_UPDATED
The list of code objects has changed.
Definition amd-dbgapi.h:6861
@ AMD_DBGAPI_EVENT_KIND_WAVE_COMMAND_TERMINATED
A command for a wave was not able to complete because the wave has terminated.
Definition amd-dbgapi.h:6839
@ AMD_DBGAPI_EVENT_KIND_QUEUE_ERROR
The inferior's runtime has put a queue into the queue error state due to exceptions being reported fo...
Definition amd-dbgapi.h:6923
@ AMD_DBGAPI_EVENT_KIND_WAVE_STOP
A wave has stopped.
Definition amd-dbgapi.h:6824
@ AMD_DBGAPI_EVENT_KIND_BREAKPOINT_RESUME
Request to resume a host breakpoint.
Definition amd-dbgapi.h:6874
@ AMD_DBGAPI_EVENT_KIND_RUNTIME
The runtime support in the inferior is enabled or disabled.
Definition amd-dbgapi.h:6889
@ AMD_DBGAPI_EVENT_KIND_NONE
No event.
Definition amd-dbgapi.h:6820
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_finalize(void) AMD_DBGAPI_VERSION_0_54
Finalize the library.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_initialize(amd_dbgapi_callbacks_t *callbacks) AMD_DBGAPI_VERSION_0_76
Initialize the library.
amd_dbgapi_log_level_t
The logging levels supported.
Definition amd-dbgapi.h:7128
void AMD_DBGAPI amd_dbgapi_set_log_level(amd_dbgapi_log_level_t level) AMD_DBGAPI_VERSION_0_54
Set the logging level.
@ AMD_DBGAPI_LOG_LEVEL_NONE
Print no messages.
Definition amd-dbgapi.h:7132
@ AMD_DBGAPI_LOG_LEVEL_VERBOSE
Print fatal error, warning, info, API tracing, and verbose messages.
Definition amd-dbgapi.h:7153
@ AMD_DBGAPI_LOG_LEVEL_INFO
Print fatal error, warning, and info messages.
Definition amd-dbgapi.h:7145
@ AMD_DBGAPI_LOG_LEVEL_TRACE
Print fatal error, warning, info, and API tracing messages.
Definition amd-dbgapi.h:7149
@ AMD_DBGAPI_LOG_LEVEL_WARNING
Print fatal error and warning messages.
Definition amd-dbgapi.h:7141
@ AMD_DBGAPI_LOG_LEVEL_FATAL_ERROR
Print fatal error messages.
Definition amd-dbgapi.h:7137
amd_dbgapi_address_class_info_t
Source language address class queries that are supported by amd_dbgapi_address_class_get_info.
Definition amd-dbgapi.h:5716
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_54
Report the list of source language address classes supported by the architecture.
uint32_t amd_dbgapi_lane_id_t
A wave lane handle.
Definition amd-dbgapi.h:5677
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_set_alu_exceptions_precision(amd_dbgapi_process_id_t process_id, amd_dbgapi_alu_exceptions_precision_t alu_exceptions_precision) AMD_DBGAPI_VERSION_0_77
Control precision of ALU exceptions reporting.
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_62
Query information about a source language address class of an architecture.
amd_dbgapi_alu_exceptions_precision_t
ALU exceptions reporting precision.
Definition amd-dbgapi.h:6712
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:6106
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_address_dependency(amd_dbgapi_address_space_id_t address_space_id, amd_dbgapi_segment_address_t segment_address, amd_dbgapi_segment_address_dependency_t *segment_address_dependency) AMD_DBGAPI_VERSION_0_64
Determine the dependency of a segment address value in a particular address space.
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_62
Query information about an address space.
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_54
Report the list of address spaces supported by the architecture.
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_54
Determine if a segment address in an address space is a member of a source language address class.
amd_dbgapi_segment_address_dependency_t
The dependency when reading or writing a specific segment address of an address space using the amd_d...
Definition amd-dbgapi.h:6237
amd_dbgapi_address_space_access_t
Indication of how the address space is accessed.
Definition amd-dbgapi.h:5906
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_54
Return the address space from an AMD GPU DWARF address space number for an architecture.
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_54
Return the architecture source language address class from a DWARF address class number for an archit...
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_54
Control precision of memory access reporting.
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:6313
amd_dbgapi_address_space_info_t
Address space queries that are supported by amd_dbgapi_address_space_get_info.
Definition amd-dbgapi.h:5932
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_54
Read memory.
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_size_t *destination_contiguous_bytes) AMD_DBGAPI_VERSION_0_62
Convert a source segment address in the source address space into a destination segment address in th...
amd_dbgapi_memory_precision_t
Memory access precision.
Definition amd-dbgapi.h:6638
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_76
Write memory.
@ AMD_DBGAPI_ADDRESS_CLASS_INFO_NAME
Return the source language address class name.
Definition amd-dbgapi.h:5723
@ AMD_DBGAPI_ADDRESS_CLASS_INFO_ADDRESS_SPACE
Return the architecture specific address space that is used to implement a pointer or reference to th...
Definition amd-dbgapi.h:5732
@ AMD_DBGAPI_ADDRESS_CLASS_INFO_DWARF
Return the AMD GPU DWARF address class number for the address class' architecture.
Definition amd-dbgapi.h:5737
@ AMD_DBGAPI_ALU_EXCEPTIONS_PRECISION_NONE
ALU exceptions delivery might be reported at any time after the instructions causing them have execut...
Definition amd-dbgapi.h:6717
@ AMD_DBGAPI_ALU_EXCEPTIONS_PRECISION_PRECISE
When an ALU exception is delivered to the waves, the wave's PC is at the instruction following the on...
Definition amd-dbgapi.h:6723
@ AMD_DBGAPI_SEGMENT_ADDRESS_DEPENDENCE_PROCESS
Reading or writing the segment address depends on the process.
Definition amd-dbgapi.h:6261
@ AMD_DBGAPI_SEGMENT_ADDRESS_DEPENDENCE_WAVE
Reading or writing the segment address depends on the wavefront.
Definition amd-dbgapi.h:6249
@ AMD_DBGAPI_SEGMENT_ADDRESS_DEPENDENCE_WORKGROUP
Reading or writing the segment address depends on the workgroup.
Definition amd-dbgapi.h:6253
@ AMD_DBGAPI_SEGMENT_ADDRESS_DEPENDENCE_NONE
No dependence is available.
Definition amd-dbgapi.h:6241
@ AMD_DBGAPI_SEGMENT_ADDRESS_DEPENDENCE_LANE
Reading or writing the segment address depends on the lane.
Definition amd-dbgapi.h:6245
@ AMD_DBGAPI_SEGMENT_ADDRESS_DEPENDENCE_AGENT
Reading or writing the segment address depends on the agent.
Definition amd-dbgapi.h:6257
@ AMD_DBGAPI_ADDRESS_SPACE_ACCESS_DISPATCH_CONSTANT
The address space is only read the waves of a kernel dispatch.
Definition amd-dbgapi.h:5921
@ AMD_DBGAPI_ADDRESS_SPACE_ACCESS_PROGRAM_CONSTANT
The address space is read only.
Definition amd-dbgapi.h:5916
@ AMD_DBGAPI_ADDRESS_SPACE_ACCESS_ALL
The address space supports all accesses.
Definition amd-dbgapi.h:5911
@ AMD_DBGAPI_ADDRESS_CLASS_STATE_NOT_MEMBER
The segment address in the address space is not a member of the source language address class.
Definition amd-dbgapi.h:6318
@ AMD_DBGAPI_ADDRESS_CLASS_STATE_MEMBER
The segment address in the address space is a member of the source language address class.
Definition amd-dbgapi.h:6323
@ AMD_DBGAPI_ADDRESS_SPACE_INFO_ACCESS
Return the address space access.
Definition amd-dbgapi.h:5954
@ AMD_DBGAPI_ADDRESS_SPACE_INFO_DWARF
Return the AMD GPU DWARF address space number for the address space's architecture.
Definition amd-dbgapi.h:5959
@ AMD_DBGAPI_ADDRESS_SPACE_INFO_ADDRESS_SIZE
Return the byte size of an address in the address space.
Definition amd-dbgapi.h:5944
@ AMD_DBGAPI_ADDRESS_SPACE_INFO_NULL_ADDRESS
Return the NULL segment address value in the address space.
Definition amd-dbgapi.h:5949
@ AMD_DBGAPI_ADDRESS_SPACE_INFO_NAME
Return the address space name.
Definition amd-dbgapi.h:5939
@ AMD_DBGAPI_MEMORY_PRECISION_NONE
Memory instructions execute normally and a wave does not wait for the memory access to complete.
Definition amd-dbgapi.h:6643
@ AMD_DBGAPI_MEMORY_PRECISION_PRECISE
A wave waits for memory instructions to complete before executing further instructions.
Definition amd-dbgapi.h:6648
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_77
Query information about a process.
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_76
Set the progress required for a process.
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_76
Set the wave creation mode for a process.
amd_dbgapi_endianness_t
Byte endianness encoding.
Definition amd-dbgapi.h:1719
amd_dbgapi_wave_creation_t
The kinds of wave creation supported by the hardware.
Definition amd-dbgapi.h:2106
struct amd_dbgapi_client_process_s * amd_dbgapi_client_process_id_t
Opaque client process handle.
Definition amd-dbgapi.h:1692
amd_dbgapi_progress_t
The kinds of progress supported by the library.
Definition amd-dbgapi.h:2029
amd_dbgapi_process_info_t
Process queries that are supported by amd_dbgapi_process_get_info.
Definition amd-dbgapi.h:1755
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_56
Attach to a process in order to provide debug control of the AMD GPUs it uses.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_detach(amd_dbgapi_process_id_t process_id) AMD_DBGAPI_VERSION_0_54
Detach from a process and no longer have debug control of the AMD GPU devices it uses.
@ AMD_DBGAPI_ENDIAN_LITTLE
Encoding is done using little endian.
Definition amd-dbgapi.h:1724
@ AMD_DBGAPI_ENDIAN_BIG
Encoding is done using big endian.
Definition amd-dbgapi.h:1721
@ AMD_DBGAPI_WAVE_CREATION_NORMAL
Normal wave creation allows new waves to be created.
Definition amd-dbgapi.h:2110
@ AMD_DBGAPI_WAVE_CREATION_STOP
Stop wave creation prevents new waves from being created.
Definition amd-dbgapi.h:2114
@ AMD_DBGAPI_PROGRESS_NO_FORWARD
No forward progress is needed.
Definition amd-dbgapi.h:2059
@ AMD_DBGAPI_PROGRESS_NORMAL
Normal progress is needed.
Definition amd-dbgapi.h:2035
@ AMD_DBGAPI_PROCESS_INFO_WATCHPOINT_COUNT
Return the number of data watchpoints supported by the process.
Definition amd-dbgapi.h:1766
@ AMD_DBGAPI_PROCESS_INFO_CORE_STATE
Return a blob containing the content to put in the state note when generating a core dump.
Definition amd-dbgapi.h:1809
@ AMD_DBGAPI_PROCESS_INFO_PRECISE_MEMORY_SUPPORTED
Return if the architectures of all the agents of a process support controlling memory precision.
Definition amd-dbgapi.h:1778
@ AMD_DBGAPI_PROCESS_INFO_NOTIFIER
The notifier for the process that indicates if pending events are available.
Definition amd-dbgapi.h:1760
@ AMD_DBGAPI_PROCESS_INFO_WATCHPOINT_SHARE
Return how watchpoints are shared between processes.
Definition amd-dbgapi.h:1772
@ AMD_DBGAPI_PROCESS_INFO_OS_ID
Native operating system process ID.
Definition amd-dbgapi.h:1799
@ AMD_DBGAPI_PROCESS_INFO_PRECISE_ALU_EXCEPTIONS_SUPPORTED
Return if the architectures of all the agents of a process support controlling ALU exceptions reporti...
Definition amd-dbgapi.h:1785
amd_dbgapi_queue_state_t
Queue state.
Definition amd-dbgapi.h:2823
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_54
Return the list of queues.
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_68
Query information about a queue.
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_54
Return the packets for a queue.
amd_dbgapi_exceptions_t
A bit mask of the exceptions that can cause a queue to enter the queue error state.
Definition amd-dbgapi.h:2849
amd_dbgapi_queue_info_t
Queue queries that are supported by amd_dbgapi_queue_get_info.
Definition amd-dbgapi.h:2727
@ AMD_DBGAPI_QUEUE_STATE_VALID
Queue is in a valid state.
Definition amd-dbgapi.h:2827
@ AMD_DBGAPI_QUEUE_STATE_ERROR
Queue is in the queue error state.
Definition amd-dbgapi.h:2841
@ AMD_DBGAPI_EXCEPTION_WAVE_ILLEGAL_INSTRUCTION
A wave on the queue executed an illegal instruction.
Definition amd-dbgapi.h:2887
@ AMD_DBGAPI_EXCEPTION_PACKET_UNSUPPORTED
A packet on the queue has an unsupported code.
Definition amd-dbgapi.h:2921
@ AMD_DBGAPI_EXCEPTION_PACKET_DISPATCH_GROUP_SEGMENT_SIZE_INVALID
A dispatch packet on the queue has an invalid group segment size.
Definition amd-dbgapi.h:2913
@ AMD_DBGAPI_EXCEPTION_WAVE_TRAP
A wave on the queue executed an instruction that caused an exception.
Definition amd-dbgapi.h:2867
@ AMD_DBGAPI_EXCEPTION_WAVE_ABORT
A wave on the queue executed a trap instruction used to abort a dispatch.
Definition amd-dbgapi.h:2857
@ AMD_DBGAPI_EXCEPTION_QUEUE_PREEMPTION_ERROR
There was an error preempting the queue.
Definition amd-dbgapi.h:2942
@ AMD_DBGAPI_EXCEPTION_PACKET_DISPATCH_WORKGROUP_SIZE_INVALID
A dispatch packet on the queue has an invalid workgroup size.
Definition amd-dbgapi.h:2925
@ AMD_DBGAPI_EXCEPTION_WAVE_MATH_ERROR
A wave on the queue executed an instruction that had a floating point or integer enabled exception co...
Definition amd-dbgapi.h:2883
@ AMD_DBGAPI_EXCEPTION_PACKET_DISPATCH_REGISTER_COUNT_TOO_LARGE
A dispatch packet on the queue requires too many registers.
Definition amd-dbgapi.h:2929
@ AMD_DBGAPI_EXCEPTION_PACKET_DISPATCH_CODE_INVALID
A dispatch packet on the queue has a NULL code address.
Definition amd-dbgapi.h:2917
@ AMD_DBGAPI_EXCEPTION_WAVE_MEMORY_VIOLATION
A wave on the queue had a memory violation.
Definition amd-dbgapi.h:2893
@ AMD_DBGAPI_EXCEPTION_PACKET_DISPATCH_DIM_INVALID
A dispatch packet on the queue has an invalid dimension.
Definition amd-dbgapi.h:2909
@ AMD_DBGAPI_EXCEPTION_WAVE_ADDRESS_ERROR
A wave on the queue had an exception due to accessing an invalid memory address.
Definition amd-dbgapi.h:2900
@ AMD_DBGAPI_EXCEPTION_NONE
If none of the bits are set, then the queue is not in the error state.
Definition amd-dbgapi.h:2853
@ AMD_DBGAPI_EXCEPTION_PACKET_VENDOR_UNSUPPORTED
A packet on the queue has an invalid vendor code.
Definition amd-dbgapi.h:2933
@ AMD_DBGAPI_QUEUE_INFO_ARCHITECTURE
Return the architecture of this queue.
Definition amd-dbgapi.h:2742
@ AMD_DBGAPI_QUEUE_INFO_PROCESS
Return the process to which this queue belongs.
Definition amd-dbgapi.h:2737
@ AMD_DBGAPI_QUEUE_INFO_TYPE
Return the queue type.
Definition amd-dbgapi.h:2747
@ AMD_DBGAPI_QUEUE_INFO_ADDRESS
Return the base address of the memory holding the queue packets.
Definition amd-dbgapi.h:2764
@ AMD_DBGAPI_QUEUE_INFO_STATE
Return the queue state.
Definition amd-dbgapi.h:2752
@ AMD_DBGAPI_QUEUE_INFO_AGENT
Return the agent to which this queue belongs.
Definition amd-dbgapi.h:2732
@ AMD_DBGAPI_QUEUE_INFO_SIZE
Return the size in bytes of the memory holding the queue packets.
Definition amd-dbgapi.h:2769
@ AMD_DBGAPI_QUEUE_INFO_ERROR_REASON
Return the set of exceptions that caused the queue to enter the queue error state.
Definition amd-dbgapi.h:2759
@ AMD_DBGAPI_QUEUE_INFO_OS_ID
Native operating system queue ID.
Definition amd-dbgapi.h:2774
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_54
Report the list of registers supported by the architecture.
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_54
Determine if a register is a member of a register class.
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_54
Query if a register exists for a wave.
amd_dbgapi_register_properties_t
A bit mask on register properties.
Definition amd-dbgapi.h:5017
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_62
Read a register.
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_76
Write a register.
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_54
Report the list of register classes supported by the architecture.
amd_dbgapi_register_info_t
Register queries that are supported by amd_dbgapi_register_get_info.
Definition amd-dbgapi.h:5051
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_54
Query information about a register class of an architecture.
amd_dbgapi_register_class_info_t
Register class queries that are supported by amd_dbgapi_architecture_register_class_get_info.
Definition amd-dbgapi.h:4888
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_54
Report the list of registers supported by a wave.
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_70
Query information about a register.
amd_dbgapi_register_exists_t
Indication of if a wave has a register.
Definition amd-dbgapi.h:5197
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_62
Prefetch register values.
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_54
Return a register handle from an AMD GPU DWARF register number for an architecture.
amd_dbgapi_register_class_state_t
Indication of whether a register is a member of a register class.
Definition amd-dbgapi.h:5384
@ AMD_DBGAPI_REGISTER_PROPERTY_INVALIDATE_VOLATILE
Changing the value of the register may change a register of the same wavefront with the AMD_DBGAPI_RE...
Definition amd-dbgapi.h:5041
@ AMD_DBGAPI_REGISTER_PROPERTY_NONE
There are no properties.
Definition amd-dbgapi.h:5021
@ AMD_DBGAPI_REGISTER_PROPERTY_READONLY_BITS
At least one bit of the register value is readonly.
Definition amd-dbgapi.h:5027
@ AMD_DBGAPI_REGISTER_PROPERTY_VOLATILE
The register value may change as a consequence of changing a register of the same wavefront with the ...
Definition amd-dbgapi.h:5034
@ AMD_DBGAPI_REGISTER_INFO_ARCHITECTURE
Return the architecture to which this register belongs.
Definition amd-dbgapi.h:5056
@ AMD_DBGAPI_REGISTER_INFO_NAME
Return the register name.
Definition amd-dbgapi.h:5063
@ AMD_DBGAPI_REGISTER_INFO_SIZE
Return the size of the register in bytes.
Definition amd-dbgapi.h:5068
@ AMD_DBGAPI_REGISTER_INFO_PROPERTIES
Return the register's properties.
Definition amd-dbgapi.h:5143
@ AMD_DBGAPI_REGISTER_INFO_DWARF
Return the AMD GPU DWARF register number for the register's architecture.
Definition amd-dbgapi.h:5138
@ AMD_DBGAPI_REGISTER_INFO_TYPE
Return the register type as a C style type string.
Definition amd-dbgapi.h:5129
@ AMD_DBGAPI_REGISTER_CLASS_INFO_ARCHITECTURE
Return the architecture to which this register class belongs.
Definition amd-dbgapi.h:4893
@ AMD_DBGAPI_REGISTER_CLASS_INFO_NAME
Return the register class name.
Definition amd-dbgapi.h:4900
@ AMD_DBGAPI_REGISTER_ABSENT
The wave does not have the register.
Definition amd-dbgapi.h:5201
@ AMD_DBGAPI_REGISTER_PRESENT
The wave has the register.
Definition amd-dbgapi.h:5205
@ AMD_DBGAPI_REGISTER_CLASS_STATE_NOT_MEMBER
The register is not a member of the register class.
Definition amd-dbgapi.h:5388
@ AMD_DBGAPI_REGISTER_CLASS_STATE_MEMBER
The register is a member of the register class.
Definition amd-dbgapi.h:5392
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_get_status_string(amd_dbgapi_status_t status, const char **status_string) AMD_DBGAPI_VERSION_0_54
Query a textual description of a status code.
amd_dbgapi_status_t
AMD debugger API status codes.
Definition amd-dbgapi.h:788
@ AMD_DBGAPI_STATUS_ERROR_INVALID_REGISTER_CLASS_ID
The register class handle is invalid.
Definition amd-dbgapi.h:959
@ AMD_DBGAPI_STATUS_ERROR_INVALID_LANE_ID
The lane handle is invalid.
Definition amd-dbgapi.h:967
@ AMD_DBGAPI_STATUS_ERROR_INVALID_BREAKPOINT_ID
The breakpoint handle is invalid.
Definition amd-dbgapi.h:991
@ AMD_DBGAPI_STATUS_ERROR_INVALID_CODE_OBJECT_ID
The code object handle is invalid.
Definition amd-dbgapi.h:884
@ AMD_DBGAPI_STATUS_ERROR_PROCESS_ALREADY_FROZEN
The process is already frozen.
Definition amd-dbgapi.h:1024
@ AMD_DBGAPI_STATUS_ERROR_INVALID_WORKGROUP_ID
The workgroup handle is invalid.
Definition amd-dbgapi.h:1012
@ AMD_DBGAPI_STATUS_ERROR_NO_WATCHPOINT_AVAILABLE
No more watchpoints available.
Definition amd-dbgapi.h:955
@ AMD_DBGAPI_STATUS_ERROR_PROCESS_FROZEN
This operation is not allowed when the process is frozen.
Definition amd-dbgapi.h:1020
@ AMD_DBGAPI_STATUS_ERROR_INVALID_WAVE_ID
The wave handle is invalid.
Definition amd-dbgapi.h:913
@ AMD_DBGAPI_STATUS_ERROR_MEMORY_ACCESS
An error occurred while trying to access memory in the inferior.
Definition amd-dbgapi.h:979
@ AMD_DBGAPI_STATUS_ERROR_ILLEGAL_INSTRUCTION
The bytes being disassembled are not a legal instruction.
Definition amd-dbgapi.h:880
@ AMD_DBGAPI_STATUS_ERROR_PROCESS_NOT_FROZEN
This operation is not allowed when the process is not frozen.
Definition amd-dbgapi.h:1028
@ AMD_DBGAPI_STATUS_SUCCESS
The function has executed successfully.
Definition amd-dbgapi.h:792
@ AMD_DBGAPI_STATUS_ERROR_NOT_SUPPORTED
The operation is not supported.
Definition amd-dbgapi.h:832
@ AMD_DBGAPI_STATUS_ERROR_DISPLACED_STEPPING_ACTIVE
The wave has an active displaced stepping buffer.
Definition amd-dbgapi.h:942
@ AMD_DBGAPI_STATUS_ERROR_ALREADY_INITIALIZED
The library is already initialized.
Definition amd-dbgapi.h:844
@ AMD_DBGAPI_STATUS_ERROR_DISPLACED_STEPPING_BUFFER_NOT_AVAILABLE
No more displaced stepping buffers are available that are suitable for the requested wave.
Definition amd-dbgapi.h:938
@ AMD_DBGAPI_STATUS_ERROR_WAVE_OUTSTANDING_STOP
The wave has an outstanding stop request.
Definition amd-dbgapi.h:925
@ AMD_DBGAPI_STATUS_ERROR_INVALID_AGENT_ID
The agent handle is invalid.
Definition amd-dbgapi.h:901
@ AMD_DBGAPI_STATUS_ERROR_NOT_INITIALIZED
The library is not initialized.
Definition amd-dbgapi.h:848
@ AMD_DBGAPI_STATUS_ERROR_SYMBOL_NOT_FOUND
The symbol was not found.
Definition amd-dbgapi.h:1003
@ AMD_DBGAPI_STATUS_ERROR_INVALID_ARGUMENT_COMPATIBILITY
An invalid combination of arguments was given to the function.
Definition amd-dbgapi.h:840
@ AMD_DBGAPI_STATUS_ERROR_INVALID_WATCHPOINT_ID
The watchpoint handle is invalid.
Definition amd-dbgapi.h:951
@ AMD_DBGAPI_STATUS_ERROR_RESUME_DISPLACED_STEPPING
The wave cannot be resumed in the manner requested due to displaced stepping restrictions.
Definition amd-dbgapi.h:947
@ AMD_DBGAPI_STATUS_ERROR_INCOMPATIBLE_PROCESS_STATE
The current process state is not compatible with the requested operation.
Definition amd-dbgapi.h:1016
@ AMD_DBGAPI_STATUS_ERROR_PROCESS_EXITED
The native operating system process associated with a client process has exited.
Definition amd-dbgapi.h:897
@ AMD_DBGAPI_STATUS_ERROR_INVALID_CLIENT_PROCESS_ID
The client process handle is invalid.
Definition amd-dbgapi.h:999
@ AMD_DBGAPI_STATUS_ERROR_INVALID_ARCHITECTURE_ID
The architecture handle is invalid.
Definition amd-dbgapi.h:876
@ AMD_DBGAPI_STATUS_ERROR_INVALID_ARGUMENT
An invalid argument was given to the function.
Definition amd-dbgapi.h:836
@ AMD_DBGAPI_STATUS_ERROR_INVALID_ADDRESS_CLASS_ID
The address class handle is invalid.
Definition amd-dbgapi.h:971
@ AMD_DBGAPI_STATUS_ERROR_INVALID_EVENT_ID
The event handle is invalid.
Definition amd-dbgapi.h:987
@ AMD_DBGAPI_STATUS_ERROR_WAVE_NOT_STOPPED
The wave is not stopped.
Definition amd-dbgapi.h:917
@ AMD_DBGAPI_STATUS_ERROR_WAVE_STOPPED
The wave is stopped.
Definition amd-dbgapi.h:921
@ AMD_DBGAPI_STATUS_ERROR_INVALID_ADDRESS_SPACE_ID
The address space handle is invalid.
Definition amd-dbgapi.h:975
@ AMD_DBGAPI_STATUS_ERROR_INVALID_PROCESS_ID
The process handle is invalid.
Definition amd-dbgapi.h:892
@ AMD_DBGAPI_STATUS_ERROR_WAVE_NOT_RESUMABLE
The wave cannot be resumed.
Definition amd-dbgapi.h:929
@ AMD_DBGAPI_STATUS_ERROR_NOT_IMPLEMENTED
The operation is not currently implemented.
Definition amd-dbgapi.h:824
@ AMD_DBGAPI_STATUS_ERROR_RESTRICTION
There is a restriction error that prevents the operation to complete.
Definition amd-dbgapi.h:868
@ AMD_DBGAPI_STATUS_ERROR_INVALID_ADDRESS_SPACE_CONVERSION
The segment address cannot be converted to the requested address space.
Definition amd-dbgapi.h:983
@ AMD_DBGAPI_STATUS_ERROR_INVALID_ELF_AMDGPU_MACHINE
The ELF AMD GPU machine value is invalid or unsupported.
Definition amd-dbgapi.h:888
@ AMD_DBGAPI_STATUS_FATAL
A fatal error has occurred.
Definition amd-dbgapi.h:818
@ AMD_DBGAPI_STATUS_ERROR_INVALID_DISPLACED_STEPPING_ID
The displaced stepping handle is invalid.
Definition amd-dbgapi.h:933
@ AMD_DBGAPI_STATUS_ERROR_CLIENT_CALLBACK
A callback to the client reported an error.
Definition amd-dbgapi.h:995
@ AMD_DBGAPI_STATUS_ERROR_NOT_AVAILABLE
The requested information is not available.
Definition amd-dbgapi.h:828
@ AMD_DBGAPI_STATUS_ERROR_ALREADY_ATTACHED
The process is already attached to the given inferior process.
Definition amd-dbgapi.h:872
@ AMD_DBGAPI_STATUS_ERROR_INVALID_QUEUE_ID
The queue handle is invalid.
Definition amd-dbgapi.h:905
@ AMD_DBGAPI_STATUS_ERROR_INVALID_REGISTER_ID
The register handle is invalid.
Definition amd-dbgapi.h:963
@ AMD_DBGAPI_STATUS_ERROR_INVALID_DISPATCH_ID
The dispatch handle is invalid.
Definition amd-dbgapi.h:909
@ AMD_DBGAPI_STATUS_ERROR_REGISTER_NOT_AVAILABLE
The register handle is valid, but specifies a register that is not allocated in the associated wave.
Definition amd-dbgapi.h:1008
@ AMD_DBGAPI_STATUS_ERROR
A generic error has occurred.
Definition amd-dbgapi.h:796
#define AMD_DBGAPI_VERSION_0_58
The function was introduced in version 0.58 of the interface and has the symbol version string of "AM...
Definition amd-dbgapi.h:574
#define AMD_DBGAPI_VERSION_0_56
The function was introduced in version 0.56 of the interface and has the symbol version string of "AM...
Definition amd-dbgapi.h:568
#define AMD_DBGAPI_VERSION_0_67
The function was introduced in version 0.67 of the interface and has the symbol version string of "AM...
Definition amd-dbgapi.h:592
#define AMD_DBGAPI_VERSION_0_62
The function was introduced in version 0.62 of the interface and has the symbol version string of "AM...
Definition amd-dbgapi.h:580
#define AMD_DBGAPI_VERSION_0_54
The function was introduced in version 0.54 of the interface and has the symbol version string of "AM...
Definition amd-dbgapi.h:562
#define AMD_DBGAPI_VERSION_0_76
The function was introduced in version 0.76 of the interface and has the symbol version string of "AM...
Definition amd-dbgapi.h:610
#define AMD_DBGAPI_VERSION_0_64
The function was introduced in version 0.64 of the interface and has the symbol version string of "AM...
Definition amd-dbgapi.h:586
#define AMD_DBGAPI_VERSION_0_77
The function was introduced in version 0.77 of the interface and has the symbol version string of "AM...
Definition amd-dbgapi.h:616
#define AMD_DBGAPI_VERSION_0_70
The function was introduced in version 0.70 of the interface and has the symbol version string of "AM...
Definition amd-dbgapi.h:604
#define AMD_DBGAPI_VERSION_0_68
The function was introduced in version 0.68 of the interface and has the symbol version string of "AM...
Definition amd-dbgapi.h:598
void AMD_DBGAPI amd_dbgapi_get_version(uint32_t *major, uint32_t *minor, uint32_t *patch) AMD_DBGAPI_VERSION_0_54
Query the version of the installed library.
const char AMD_DBGAPI * amd_dbgapi_get_build_name(void) AMD_DBGAPI_VERSION_0_54
Query the installed library build name.
amd_dbgapi_watchpoint_info_t
Watchpoint queries that are supported by amd_dbgapi_watchpoint_get_info.
Definition amd-dbgapi.h:4620
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_remove_watchpoint(amd_dbgapi_watchpoint_id_t watchpoint_id) AMD_DBGAPI_VERSION_0_76
Remove a hardware data watchpoint previously set by amd_dbgapi_set_watchpoint.
amd_dbgapi_watchpoint_kind_t
Watchpoint memory access kinds.
Definition amd-dbgapi.h:4714
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_VERSION_0_76
Set a hardware data watchpoint.
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_54
Query information about a watchpoint.
amd_dbgapi_watchpoint_share_kind_t
The way watchpoints are shared between processes.
Definition amd-dbgapi.h:4688
@ AMD_DBGAPI_WATCHPOINT_INFO_PROCESS
Return the process to which this watchpoint belongs.
Definition amd-dbgapi.h:4625
@ AMD_DBGAPI_WATCHPOINT_INFO_SIZE
The byte size of the created watchpoint.
Definition amd-dbgapi.h:4635
@ AMD_DBGAPI_WATCHPOINT_INFO_ADDRESS
The base address of the created watchpoint.
Definition amd-dbgapi.h:4630
@ AMD_DBGAPI_WATCHPOINT_KIND_STORE_AND_RMW
Write access by store instructions or read-modify-write access by atomic instructions.
Definition amd-dbgapi.h:4723
@ AMD_DBGAPI_WATCHPOINT_KIND_ALL
Read, write, or read-modify-write access by load, store, or atomic instructions.
Definition amd-dbgapi.h:4732
@ AMD_DBGAPI_WATCHPOINT_KIND_LOAD
Read access by load instructions.
Definition amd-dbgapi.h:4718
@ AMD_DBGAPI_WATCHPOINT_KIND_RMW
Read-modify-write access by atomic instructions.
Definition amd-dbgapi.h:4727
@ AMD_DBGAPI_WATCHPOINT_SHARE_KIND_UNSHARED
The watchpoints are not shared across processes.
Definition amd-dbgapi.h:4698
@ AMD_DBGAPI_WATCHPOINT_SHARE_KIND_SHARED
The watchpoints of a process are shared between all processes.
Definition amd-dbgapi.h:4704
@ AMD_DBGAPI_WATCHPOINT_SHARE_KIND_UNSUPPORTED
Watchpoints are not supported.
Definition amd-dbgapi.h:4692
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_exceptions_t exceptions) AMD_DBGAPI_VERSION_0_76
Resume execution of a stopped wave.
amd_dbgapi_wave_state_t
The execution state of a wave.
Definition amd-dbgapi.h:3716
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_wave_stop(amd_dbgapi_wave_id_t wave_id) AMD_DBGAPI_VERSION_0_76
Request a wave to stop executing.
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_54
Return the list of existing waves.
amd_dbgapi_resume_mode_t
The mode in which to resuming the execution of a wave.
Definition amd-dbgapi.h:4080
amd_dbgapi_wave_stop_reasons_t
A bit mask of the reasons that a wave stopped.
Definition amd-dbgapi.h:3748
amd_dbgapi_wave_info_t
Wave queries that are supported by amd_dbgapi_wave_get_info.
Definition amd-dbgapi.h:3552
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_64
Query information about a wave.
@ AMD_DBGAPI_WAVE_STATE_STOP
The wave is stopped.
Definition amd-dbgapi.h:3738
@ AMD_DBGAPI_WAVE_STATE_SINGLE_STEP
The wave is running in single-step mode.
Definition amd-dbgapi.h:3725
@ AMD_DBGAPI_WAVE_STATE_RUN
The wave is running.
Definition amd-dbgapi.h:3720
@ AMD_DBGAPI_RESUME_MODE_SINGLE_STEP
Resume execution in in single step mode.
Definition amd-dbgapi.h:4088
@ AMD_DBGAPI_RESUME_MODE_NORMAL
Resume normal execution.
Definition amd-dbgapi.h:4084
@ AMD_DBGAPI_WAVE_STOP_REASON_FP_DIVIDE_BY_0
The wave stopped due to triggering an enabled floating point divide by zero exception.
Definition amd-dbgapi.h:3791
@ AMD_DBGAPI_WAVE_STOP_REASON_WATCHPOINT
The wave stopped due to triggering a data watchpoint.
Definition amd-dbgapi.h:3771
@ AMD_DBGAPI_WAVE_STOP_REASON_MEMORY_VIOLATION
The wave stopped due to a memory violation.
Definition amd-dbgapi.h:3888
@ AMD_DBGAPI_WAVE_STOP_REASON_SINGLE_STEP
The wave stopped due to completing an instruction single-step.
Definition amd-dbgapi.h:3775
@ AMD_DBGAPI_WAVE_STOP_REASON_ILLEGAL_INSTRUCTION
The wave stopped due to executing an illegal instruction.
Definition amd-dbgapi.h:3917
@ AMD_DBGAPI_WAVE_STOP_REASON_DEBUG_TRAP
The wave stopped due to executing a debug trap instruction.
Definition amd-dbgapi.h:3846
@ AMD_DBGAPI_WAVE_STOP_REASON_FP_INPUT_DENORMAL
The wave stopped due to triggering an enabled floating point input denormal exception.
Definition amd-dbgapi.h:3783
@ AMD_DBGAPI_WAVE_STOP_REASON_ECC_ERROR
The wave stopped due to detecting an unrecoverable ECC error.
Definition amd-dbgapi.h:3930
@ AMD_DBGAPI_WAVE_STOP_REASON_FATAL_HALT
The wave stopped after causing a hardware fatal halt.
Definition amd-dbgapi.h:3937
@ AMD_DBGAPI_WAVE_STOP_REASON_ASSERT_TRAP
The wave stopped due to executing an assert trap instruction.
Definition amd-dbgapi.h:3862
@ AMD_DBGAPI_WAVE_STOP_REASON_NONE
If none of the bits are set, then amd_dbgapi_wave_stop stopped the wave.
Definition amd-dbgapi.h:3753
@ AMD_DBGAPI_WAVE_STOP_REASON_BREAKPOINT
The wave stopped due to executing a breakpoint instruction.
Definition amd-dbgapi.h:3759
@ AMD_DBGAPI_WAVE_STOP_REASON_FP_INVALID_OPERATION
The wave stopped due to triggering an enabled floating point invalid operation exception.
Definition amd-dbgapi.h:3823
@ AMD_DBGAPI_WAVE_STOP_REASON_ADDRESS_ERROR
The wave stopped due to an aperture violation.
Definition amd-dbgapi.h:3903
@ AMD_DBGAPI_WAVE_STOP_REASON_TRAP
The wave stopped due to executing a trap instruction other than the AMD_DBGAPI_WAVE_STOP_REASON_DEBUG...
Definition amd-dbgapi.h:3872
@ AMD_DBGAPI_WAVE_STOP_REASON_INT_DIVIDE_BY_0
The wave stopped due to triggering an enabled integer divide by zero exception.
Definition amd-dbgapi.h:3831
@ AMD_DBGAPI_WAVE_STOP_REASON_FP_UNDERFLOW
The wave stopped due to triggering an enabled floating point underflow exception.
Definition amd-dbgapi.h:3807
@ AMD_DBGAPI_WAVE_STOP_REASON_FP_INEXACT
The wave stopped due to triggering an enabled floating point inexact exception.
Definition amd-dbgapi.h:3815
@ AMD_DBGAPI_WAVE_STOP_REASON_FP_OVERFLOW
The wave stopped due to triggering an enabled floating point overflow exception.
Definition amd-dbgapi.h:3799
@ AMD_DBGAPI_WAVE_INFO_ARCHITECTURE
Return the architecture of this wave.
Definition amd-dbgapi.h:3617
@ AMD_DBGAPI_WAVE_INFO_DISPATCH
Return the dispatch to which this wave belongs.
Definition amd-dbgapi.h:3597
@ AMD_DBGAPI_WAVE_INFO_QUEUE
Return the queue to which this wave belongs.
Definition amd-dbgapi.h:3602
@ AMD_DBGAPI_WAVE_INFO_EXEC_MASK
Return the current execution mask of the wave.
Definition amd-dbgapi.h:3631
@ AMD_DBGAPI_WAVE_INFO_WORKGROUP
Return the workgroup to which this wave belongs.
Definition amd-dbgapi.h:3587
@ AMD_DBGAPI_WAVE_INFO_WAVE_NUMBER_IN_WORKGROUP
The wave's number in the workgroup.
Definition amd-dbgapi.h:3654
@ AMD_DBGAPI_WAVE_INFO_STATE
Return the wave's state.
Definition amd-dbgapi.h:3557
@ AMD_DBGAPI_WAVE_INFO_PROCESS
Return the process to which this wave belongs.
Definition amd-dbgapi.h:3612
@ AMD_DBGAPI_WAVE_INFO_AGENT
Return the agent to which this wave belongs.
Definition amd-dbgapi.h:3607
@ AMD_DBGAPI_WAVE_INFO_WORKGROUP_COORD
The wave workgroup coordinate in the dispatch grid dimensions.
Definition amd-dbgapi.h:3642
@ AMD_DBGAPI_WAVE_INFO_WATCHPOINTS
Return the watchpoint(s) the wave triggered.
Definition amd-dbgapi.h:3577
@ AMD_DBGAPI_WAVE_INFO_LANE_COUNT
The number of lanes supported by the wave.
Definition amd-dbgapi.h:3659
@ AMD_DBGAPI_WAVE_INFO_PC
Return the current program counter value of the wave.
Definition amd-dbgapi.h:3623
@ AMD_DBGAPI_WAVE_INFO_STOP_REASON
Return the reason the wave stopped as a bit set.
Definition amd-dbgapi.h:3564
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_workgroup_list(amd_dbgapi_process_id_t process_id, size_t *workgroup_count, amd_dbgapi_workgroup_id_t **workgroups, amd_dbgapi_changed_t *changed) AMD_DBGAPI_VERSION_0_64
Return the list of existing workgroups.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_workgroup_get_info(amd_dbgapi_workgroup_id_t workgroup_id, amd_dbgapi_workgroup_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_64
Query information about a workgroup.
amd_dbgapi_workgroup_info_t
Workgroup queries that are supported by amd_dbgapi_workgroup_get_info.
Definition amd-dbgapi.h:3374
@ AMD_DBGAPI_WORKGROUP_INFO_QUEUE
Return the queue to which this workgroup belongs.
Definition amd-dbgapi.h:3389
@ AMD_DBGAPI_WORKGROUP_INFO_ARCHITECTURE
Return the architecture of this workgroup.
Definition amd-dbgapi.h:3404
@ AMD_DBGAPI_WORKGROUP_INFO_WORKGROUP_COORD
The workgroup workgroup coordinate in the dispatch grid dimensions.
Definition amd-dbgapi.h:3415
@ AMD_DBGAPI_WORKGROUP_INFO_DISPATCH
Return the dispatch to which this workgroup belongs.
Definition amd-dbgapi.h:3384
@ AMD_DBGAPI_WORKGROUP_INFO_PROCESS
Return the process to which this workgroup belongs.
Definition amd-dbgapi.h:3399
@ AMD_DBGAPI_WORKGROUP_INFO_AGENT
Return the agent to which this workgroup belongs.
Definition amd-dbgapi.h:3394
Opaque source language address class handle.
Definition amd-dbgapi.h:5698
uint64_t handle
Definition amd-dbgapi.h:5699
Opaque address space handle.
Definition amd-dbgapi.h:5883
uint64_t handle
Definition amd-dbgapi.h:5884
Opaque agent handle.
Definition amd-dbgapi.h:2476
uint64_t handle
Definition amd-dbgapi.h:2477
Opaque architecture handle.
Definition amd-dbgapi.h:1206
uint64_t handle
Definition amd-dbgapi.h:1207
Opaque breakpoint handle.
Definition amd-dbgapi.h:7203
uint64_t handle
Definition amd-dbgapi.h:7204
Callbacks that the client of the library must provide.
Definition amd-dbgapi.h:7377
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:7519
amd_dbgapi_status_t(* insert_breakpoint)(amd_dbgapi_client_process_id_t client_process_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:7484
void(* deallocate_memory)(void *data)
Deallocate memory that was allocated by amd_dbgapi_callbacks_s::allocate_memory.
Definition amd-dbgapi.h:7408
amd_dbgapi_status_t(* client_process_get_info)(amd_dbgapi_client_process_id_t client_process_id, amd_dbgapi_client_process_info_t query, size_t value_size, void *value)
Query information about the client process.
Definition amd-dbgapi.h:7444
amd_dbgapi_status_t(* xfer_global_memory)(amd_dbgapi_client_process_id_t client_process_id, amd_dbgapi_global_address_t global_address, amd_dbgapi_size_t *value_size, void *read_buffer, const void *write_buffer)
Uncached global memory transfer.
Definition amd-dbgapi.h:7559
void(* log_message)(amd_dbgapi_log_level_t level, const char *message)
Report a log message.
Definition amd-dbgapi.h:7573
Opaque code object handle.
Definition amd-dbgapi.h:2275
uint64_t handle
Definition amd-dbgapi.h:2276
AMDGPU corefile state data for a process.
Definition amd-dbgapi.h:1731
size_t size
Size, in bytes, of the buffer pointed by amd_dbgapi_core_state_data_t::data.
Definition amd-dbgapi.h:1737
amd_dbgapi_endianness_t endianness
Endianness encoding of the core state.
Definition amd-dbgapi.h:1733
const void * data
Pointer to the buffer containing the core state data.
Definition amd-dbgapi.h:1745
Opaque dispatch handle.
Definition amd-dbgapi.h:3090
uint64_t handle
Definition amd-dbgapi.h:3091
Opaque displaced stepping handle.
Definition amd-dbgapi.h:4351
uint64_t handle
Definition amd-dbgapi.h:4352
Opaque event handle.
Definition amd-dbgapi.h:6802
uint64_t handle
Definition amd-dbgapi.h:6803
Opaque process handle.
Definition amd-dbgapi.h:1705
uint64_t handle
Definition amd-dbgapi.h:1706
Opaque queue handle.
Definition amd-dbgapi.h:2710
uint64_t handle
Definition amd-dbgapi.h:2711
Opaque register class handle.
Definition amd-dbgapi.h:4870
uint64_t handle
Definition amd-dbgapi.h:4871
Opaque register handle.
Definition amd-dbgapi.h:5000
uint64_t handle
Definition amd-dbgapi.h:5001
Opaque hardware data watchpoint handle.
Definition amd-dbgapi.h:4603
uint64_t handle
Definition amd-dbgapi.h:4604
A set of watchpoints.
Definition amd-dbgapi.h:4742
amd_dbgapi_watchpoint_id_t * watchpoint_ids
Definition amd-dbgapi.h:4744
size_t count
Definition amd-dbgapi.h:4743
Opaque wave handle.
Definition amd-dbgapi.h:3535
uint64_t handle
Definition amd-dbgapi.h:3536
Opaque workgroup handle.
Definition amd-dbgapi.h:3357
uint64_t handle
Definition amd-dbgapi.h:3358