AMD_DBGAPI 0.77.4
Loading...
Searching...
No Matches
amd-dbgapi.h
Go to the documentation of this file.
1/* Copyright (c) 2019-2024 Advanced Micro Devices, Inc.
2
3 Permission is hereby granted, free of charge, to any person obtaining a copy
4 of this software and associated documentation files (the "Software"), to deal
5 in the Software without restriction, including without limitation the rights
6 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 copies of the Software, and to permit persons to whom the Software is
8 furnished to do so, subject to the following conditions:
9
10 The above copyright notice and this permission notice shall be included in
11 all copies or substantial portions of the Software.
12
13 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 THE SOFTWARE. */
20
481#ifndef AMD_DBGAPI_H
482#define AMD_DBGAPI_H 1
483
484/* Placeholder for calling convention and import/export macros */
485#if !defined(AMD_DBGAPI_CALL)
486#define AMD_DBGAPI_CALL
487#endif /* !defined (AMD_DBGAPI_CALL) */
488
489#if !defined(AMD_DBGAPI_EXPORT_DECORATOR)
490#if defined(__GNUC__)
491#define AMD_DBGAPI_EXPORT_DECORATOR __attribute__ ((visibility ("default")))
492#elif defined(_MSC_VER)
493#define AMD_DBGAPI_EXPORT_DECORATOR __declspec(dllexport)
494#endif /* defined (_MSC_VER) */
495#endif /* !defined (AMD_DBGAPI_EXPORT_DECORATOR) */
496
497#if !defined(AMD_DBGAPI_IMPORT_DECORATOR)
498#if defined(__GNUC__)
499#define AMD_DBGAPI_IMPORT_DECORATOR
500#elif defined(_MSC_VER)
501#define AMD_DBGAPI_IMPORT_DECORATOR __declspec(dllimport)
502#endif /* defined (_MSC_VER) */
503#endif /* !defined (AMD_DBGAPI_IMPORT_DECORATOR) */
504
505#define AMD_DBGAPI_EXPORT AMD_DBGAPI_EXPORT_DECORATOR AMD_DBGAPI_CALL
506#define AMD_DBGAPI_IMPORT AMD_DBGAPI_IMPORT_DECORATOR AMD_DBGAPI_CALL
507
508#if !defined(AMD_DBGAPI)
509#if defined(AMD_DBGAPI_EXPORTS)
510#define AMD_DBGAPI AMD_DBGAPI_EXPORT
511#else /* !defined (AMD_DBGAPI_EXPORTS) */
512#define AMD_DBGAPI AMD_DBGAPI_IMPORT
513#endif /* !defined (AMD_DBGAPI_EXPORTS) */
514#endif /* !defined (AMD_DBGAPI) */
515
516#if __cplusplus >= 201103L
517/* c++11 allows extended initializer lists. */
518#define AMD_DBGAPI_HANDLE_LITERAL(type, value) (type{ value })
519#elif __STDC_VERSION__ >= 199901L
520/* c99 allows compound literals. */
521#define AMD_DBGAPI_HANDLE_LITERAL(type, value) ((type){ value })
522#else /* !__STDC_VERSION__ >= 199901L */
523#define AMD_DBGAPI_HANDLE_LITERAL(type, value) {value}
524#endif /* !__STDC_VERSION__ >= 199901L */
525
526#if defined(__cplusplus) && __cplusplus >= 201402L
527#define DEPRECATED [[deprecated]]
528#else
529#define DEPRECATED
530#endif
531
532#if defined(__cplusplus)
533extern "C" {
534#endif /* defined (__cplusplus) */
535
536#if defined(__linux__)
537#include <sys/types.h>
538#endif /* __linux__ */
539
540#include <stddef.h>
541#include <stdint.h>
542
562#define AMD_DBGAPI_VERSION_0_54
563
568#define AMD_DBGAPI_VERSION_0_56
569
574#define AMD_DBGAPI_VERSION_0_58
575
580#define AMD_DBGAPI_VERSION_0_62
581
586#define AMD_DBGAPI_VERSION_0_64
587
592#define AMD_DBGAPI_VERSION_0_67
593
598#define AMD_DBGAPI_VERSION_0_68
599
604#define AMD_DBGAPI_VERSION_0_70
605
610#define AMD_DBGAPI_VERSION_0_76
611
616#define AMD_DBGAPI_VERSION_0_77
617
625
649
653typedef uint64_t amd_dbgapi_size_t;
654
669
677#if defined(__linux__)
679#endif /* __linux__ */
680
705#if defined(__linux__)
707#endif /* __linux__ */
708
716#if defined(__linux__)
718#endif /* __linux__ */
719
726#if defined(__linux__)
728#endif /* __linux__ */
729
738#if defined(__linux__)
740#endif /* __linux__ */
741
749#if defined(__linux__)
773#endif /* __linux__ */
774
787typedef enum
788{
1030
1048 amd_dbgapi_status_t status,
1049 const char **status_string) AMD_DBGAPI_VERSION_0_54;
1050
1074#define AMD_DBGAPI_VERSION_MAJOR 0
1075
1080#define AMD_DBGAPI_VERSION_MINOR 77
1081
1096 uint32_t *major, uint32_t *minor, uint32_t *patch) AMD_DBGAPI_VERSION_0_54;
1097
1106const char AMD_DBGAPI *
1108
1156
1183
1205typedef struct
1206{
1207 uint64_t handle;
1209
1213#define AMD_DBGAPI_ARCHITECTURE_NONE \
1214 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_architecture_id_t, 0)
1215
1276
1316 amd_dbgapi_architecture_id_t architecture_id,
1317 amd_dbgapi_architecture_info_t query, size_t value_size,
1318 void *value) AMD_DBGAPI_VERSION_0_54;
1319
1349 uint32_t elf_amdgpu_machine,
1351
1358typedef struct amd_dbgapi_symbolizer_id_s *amd_dbgapi_symbolizer_id_t;
1359
1454 amd_dbgapi_architecture_id_t architecture_id,
1456 const void *memory, char **instruction_text,
1457 amd_dbgapi_symbolizer_id_t symbolizer_id,
1458 amd_dbgapi_status_t (*symbolizer) (
1459 amd_dbgapi_symbolizer_id_t symbolizer_id,
1461 char **symbol_text)) AMD_DBGAPI_VERSION_0_54;
1462
1578
1589
1665 amd_dbgapi_architecture_id_t architecture_id,
1667 const void *memory, amd_dbgapi_instruction_kind_t *instruction_kind,
1668 amd_dbgapi_instruction_properties_t *instruction_properties,
1669 void **instruction_information) AMD_DBGAPI_VERSION_0_58;
1670
1692typedef struct amd_dbgapi_client_process_s *amd_dbgapi_client_process_id_t;
1693
1704typedef struct
1705{
1706 uint64_t handle;
1708
1712#define AMD_DBGAPI_PROCESS_NONE \
1713 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_process_id_t, 0)
1714
1726
1747
1811
1863 size_t value_size, void *value) AMD_DBGAPI_VERSION_0_77;
1864
1962 amd_dbgapi_client_process_id_t client_process_id,
1964
2013
2061
2091 amd_dbgapi_process_id_t process_id,
2093
2116
2146 amd_dbgapi_process_id_t process_id,
2148
2219
2246
2274typedef struct
2275{
2276 uint64_t handle;
2278
2282#define AMD_DBGAPI_CODE_OBJECT_NONE \
2283 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_code_object_id_t, 0)
2284
2361
2401 amd_dbgapi_code_object_id_t code_object_id,
2402 amd_dbgapi_code_object_info_t query, size_t value_size,
2403 void *value) AMD_DBGAPI_VERSION_0_54;
2404
2455 amd_dbgapi_process_id_t process_id, size_t *code_object_count,
2456 amd_dbgapi_code_object_id_t **code_objects,
2458
2475typedef struct
2476{
2477 uint64_t handle;
2479
2483#define AMD_DBGAPI_AGENT_NONE \
2484 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_agent_id_t, 0)
2485
2554
2588
2633 size_t value_size, void *value) AMD_DBGAPI_VERSION_0_67;
2634
2687 amd_dbgapi_process_id_t process_id, size_t *agent_count,
2688 amd_dbgapi_agent_id_t **agents,
2690
2709typedef struct
2710{
2711 uint64_t handle;
2713
2717#define AMD_DBGAPI_QUEUE_NONE \
2718 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_queue_id_t, 0)
2719
2776
2817 size_t value_size, void *value) AMD_DBGAPI_VERSION_0_68;
2818
2843
2944
2998 amd_dbgapi_process_id_t process_id, size_t *queue_count,
2999 amd_dbgapi_queue_id_t **queues,
3001
3066 amd_dbgapi_queue_id_t queue_id,
3067 amd_dbgapi_os_queue_packet_id_t *read_packet_id,
3068 amd_dbgapi_os_queue_packet_id_t *write_packet_id,
3069 size_t *packets_byte_size, void **packets_bytes) AMD_DBGAPI_VERSION_0_54;
3070
3089typedef struct
3090{
3091 uint64_t handle;
3093
3097#define AMD_DBGAPI_DISPATCH_NONE \
3098 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_dispatch_id_t, 0)
3099
3200
3244 size_t value_size, void *value) AMD_DBGAPI_VERSION_0_54;
3245
3264
3286
3336 amd_dbgapi_process_id_t process_id, size_t *dispatch_count,
3337 amd_dbgapi_dispatch_id_t **dispatches,
3339
3356typedef struct
3357{
3358 uint64_t handle;
3360
3364#define AMD_DBGAPI_WORKGROUP_NONE \
3365 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_workgroup_id_t, 0)
3366
3417
3462 size_t value_size, void *value) AMD_DBGAPI_VERSION_0_64;
3463
3514 amd_dbgapi_process_id_t process_id, size_t *workgroup_count,
3515 amd_dbgapi_workgroup_id_t **workgroups,
3517
3534typedef struct
3535{
3536 uint64_t handle;
3538
3542#define AMD_DBGAPI_WAVE_NONE \
3543 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_wave_id_t, 0)
3544
3661
3710 size_t value_size, void *value) AMD_DBGAPI_VERSION_0_64;
3711
3740
3939
3988 amd_dbgapi_process_id_t process_id, size_t *wave_count,
3989 amd_dbgapi_wave_id_t **waves,
3991
4075
4090
4248
4350typedef struct
4351{
4352 uint64_t handle;
4354
4358#define AMD_DBGAPI_DISPLACED_STEPPING_NONE \
4359 (amd_dbgapi_displaced_stepping_id_t{ 0 })
4360
4376
4417 amd_dbgapi_displaced_stepping_id_t displaced_stepping_id,
4418 amd_dbgapi_displaced_stepping_info_t query, size_t value_size,
4419 void *value) AMD_DBGAPI_VERSION_0_54;
4420
4507 amd_dbgapi_wave_id_t wave_id, const void *saved_instruction_bytes,
4508 amd_dbgapi_displaced_stepping_id_t *displaced_stepping)
4510
4565 amd_dbgapi_wave_id_t wave_id,
4566 amd_dbgapi_displaced_stepping_id_t displaced_stepping)
4568
4602typedef struct
4603{
4604 uint64_t handle;
4606
4610#define AMD_DBGAPI_WATCHPOINT_NONE \
4611 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_watchpoint_id_t, 0)
4612
4637
4677 amd_dbgapi_watchpoint_id_t watchpoint_id,
4678 amd_dbgapi_watchpoint_info_t query, size_t value_size,
4679 void *value) AMD_DBGAPI_VERSION_0_54;
4680
4706
4734
4746
4822
4847
4869typedef struct
4870{
4871 uint64_t handle;
4873
4877#define AMD_DBGAPI_REGISTER_CLASS_NONE \
4878 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_register_class_id_t, 0)
4879
4902
4943 amd_dbgapi_register_class_id_t register_class_id,
4944 amd_dbgapi_register_class_info_t query, size_t value_size,
4945 void *value) AMD_DBGAPI_VERSION_0_54;
4946
4988 amd_dbgapi_architecture_id_t architecture_id, size_t *register_class_count,
4990
4999typedef struct
5000{
5001 uint64_t handle;
5003
5007#define AMD_DBGAPI_REGISTER_NONE \
5008 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_register_id_t, 0)
5009
5043
5145
5191 size_t value_size, void *value) AMD_DBGAPI_VERSION_0_70;
5192
5207
5244
5290 amd_dbgapi_architecture_id_t architecture_id, size_t *register_count,
5292
5337 amd_dbgapi_wave_id_t wave_id, size_t *register_count,
5339
5377 amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_register,
5379
5394
5433 amd_dbgapi_register_class_id_t register_class_id,
5434 amd_dbgapi_register_id_t register_id,
5435 amd_dbgapi_register_class_state_t *register_class_state)
5437
5496 amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size,
5497 void *value) AMD_DBGAPI_VERSION_0_62;
5498
5565 amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size,
5566 const void *value) AMD_DBGAPI_VERSION_0_76;
5567
5624
5637
5677typedef uint32_t amd_dbgapi_lane_id_t;
5678
5682#define AMD_DBGAPI_LANE_NONE ((amd_dbgapi_lane_id_t) (-1))
5683
5697typedef struct
5698{
5699 uint64_t handle;
5701
5705#define AMD_DBGAPI_ADDRESS_CLASS_NONE \
5706 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_class_id_t, 0)
5707
5739
5780 amd_dbgapi_address_class_id_t address_class_id,
5781 amd_dbgapi_address_class_info_t query, size_t value_size,
5782 void *value) AMD_DBGAPI_VERSION_0_62;
5783
5826 amd_dbgapi_architecture_id_t architecture_id, size_t *address_class_count,
5828
5868 amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_address_class,
5870
5882typedef struct
5883{
5884 uint64_t handle;
5886
5890#define AMD_DBGAPI_ADDRESS_SPACE_NONE \
5891 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_space_id_t, 0)
5892
5899#define AMD_DBGAPI_ADDRESS_SPACE_GLOBAL \
5900 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_space_id_t, 1)
5901
5923
5961
6001 amd_dbgapi_address_space_id_t address_space_id,
6002 amd_dbgapi_address_space_info_t query, size_t value_size,
6003 void *value) AMD_DBGAPI_VERSION_0_62;
6004
6044 amd_dbgapi_architecture_id_t architecture_id, size_t *address_space_count,
6046
6087 amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_address_space,
6089
6107
6224 amd_dbgapi_address_space_id_t source_address_space_id,
6225 amd_dbgapi_segment_address_t source_segment_address,
6226 amd_dbgapi_address_space_id_t destination_address_space_id,
6227 amd_dbgapi_segment_address_t *destination_segment_address,
6228 amd_dbgapi_size_t *destination_contiguous_bytes)
6230
6263
6303 amd_dbgapi_address_space_id_t address_space_id,
6304 amd_dbgapi_segment_address_t segment_address,
6305 amd_dbgapi_segment_address_dependency_t *segment_address_dependency)
6307
6325
6399 amd_dbgapi_address_space_id_t address_space_id,
6400 amd_dbgapi_segment_address_t segment_address,
6401 amd_dbgapi_address_class_id_t address_class_id,
6402 amd_dbgapi_address_class_state_t *address_class_state)
6404
6505 amd_dbgapi_lane_id_t lane_id,
6506 amd_dbgapi_address_space_id_t address_space_id,
6507 amd_dbgapi_segment_address_t segment_address,
6508 amd_dbgapi_size_t *value_size, void *value) AMD_DBGAPI_VERSION_0_54;
6509
6614 amd_dbgapi_lane_id_t lane_id,
6615 amd_dbgapi_address_space_id_t address_space_id,
6616 amd_dbgapi_segment_address_t segment_address,
6617 amd_dbgapi_size_t *value_size, const void *value) AMD_DBGAPI_VERSION_0_76;
6618
6650
6690 amd_dbgapi_process_id_t process_id,
6692
6725
6766 amd_dbgapi_process_id_t process_id,
6767 amd_dbgapi_alu_exceptions_precision_t alu_exceptions_precision)
6769
6801typedef struct
6802{
6803 uint64_t handle;
6805
6809#define AMD_DBGAPI_EVENT_NONE \
6810 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_event_id_t, 0)
6811
6925
6962 amd_dbgapi_process_id_t process_id, amd_dbgapi_event_id_t *event_id,
6964
6986
7034
7076 size_t value_size, void *value) AMD_DBGAPI_VERSION_0_54;
7077
7105
7155
7176
7202typedef struct
7203{
7204 uint64_t handle;
7206
7210#define AMD_DBGAPI_BREAKPOINT_NONE \
7211 AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_breakpoint_id_t, 0)
7212
7227
7267 amd_dbgapi_breakpoint_id_t breakpoint_id,
7268 amd_dbgapi_breakpoint_info_t query, size_t value_size,
7269 void *value) AMD_DBGAPI_VERSION_0_54;
7270
7285
7295typedef struct amd_dbgapi_client_thread_s *amd_dbgapi_client_thread_id_t;
7296
7335 amd_dbgapi_breakpoint_id_t breakpoint_id,
7336 amd_dbgapi_client_thread_id_t client_thread_id,
7338
7369
7377{
7378
7390 void *(*allocate_memory) (size_t byte_size);
7391
7408 void (*deallocate_memory) (void *data);
7409
7445 amd_dbgapi_client_process_id_t client_process_id,
7447 size_t value_size, void *value);
7448
7485 amd_dbgapi_client_process_id_t client_process_id,
7487 amd_dbgapi_breakpoint_id_t breakpoint_id);
7488
7520 amd_dbgapi_client_process_id_t client_process_id,
7521 amd_dbgapi_breakpoint_id_t breakpoint_id);
7522
7560 amd_dbgapi_client_process_id_t client_process_id,
7561 amd_dbgapi_global_address_t global_address,
7562 amd_dbgapi_size_t *value_size, void *read_buffer,
7563 const void *write_buffer);
7564
7573 void (*log_message) (amd_dbgapi_log_level_t level, const char *message);
7574};
7575
7578#if defined(__cplusplus)
7579} /* extern "C" */
7580#endif /* defined (__cplusplus) */
7581
7582#endif /* amd-dbgapi.h */
#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
Instruction information for direct call instructions.
Definition amd-dbgapi.h:5633
amd_dbgapi_global_address_t target_address
Definition amd-dbgapi.h:5634
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