AMD_DBGAPI  0.65.1
amd-dbgapi.h
Go to the documentation of this file.
1 /* Copyright (c) 2019-2022 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 
432 #ifndef AMD_DBGAPI_H
433 #define AMD_DBGAPI_H 1
434 
435 /* Placeholder for calling convention and import/export macros */
436 #if !defined(AMD_DBGAPI_CALL)
437 #define AMD_DBGAPI_CALL
438 #endif /* !defined (AMD_DBGAPI_CALL) */
439 
440 #if !defined(AMD_DBGAPI_EXPORT_DECORATOR)
441 #if defined(__GNUC__)
442 #define AMD_DBGAPI_EXPORT_DECORATOR __attribute__ ((visibility ("default")))
443 #elif defined(_MSC_VER)
444 #define AMD_DBGAPI_EXPORT_DECORATOR __declspec(dllexport)
445 #endif /* defined (_MSC_VER) */
446 #endif /* !defined (AMD_DBGAPI_EXPORT_DECORATOR) */
447 
448 #if !defined(AMD_DBGAPI_IMPORT_DECORATOR)
449 #if defined(__GNUC__)
450 #define AMD_DBGAPI_IMPORT_DECORATOR
451 #elif defined(_MSC_VER)
452 #define AMD_DBGAPI_IMPORT_DECORATOR __declspec(dllimport)
453 #endif /* defined (_MSC_VER) */
454 #endif /* !defined (AMD_DBGAPI_IMPORT_DECORATOR) */
455 
456 #define AMD_DBGAPI_EXPORT AMD_DBGAPI_EXPORT_DECORATOR AMD_DBGAPI_CALL
457 #define AMD_DBGAPI_IMPORT AMD_DBGAPI_IMPORT_DECORATOR AMD_DBGAPI_CALL
458 
459 #if !defined(AMD_DBGAPI)
460 #if defined(AMD_DBGAPI_EXPORTS)
461 #define AMD_DBGAPI AMD_DBGAPI_EXPORT
462 #else /* !defined (AMD_DBGAPI_EXPORTS) */
463 #define AMD_DBGAPI AMD_DBGAPI_IMPORT
464 #endif /* !defined (AMD_DBGAPI_EXPORTS) */
465 #endif /* !defined (AMD_DBGAPI) */
466 
467 #if __cplusplus >= 201103L
468 /* c++11 allows extended initializer lists. */
469 #define AMD_DBGAPI_HANDLE_LITERAL(type, value) (type{ value })
470 #elif __STDC_VERSION__ >= 199901L
471 /* c99 allows compound literals. */
472 #define AMD_DBGAPI_HANDLE_LITERAL(type, value) ((type){ value })
473 #else /* !__STDC_VERSION__ >= 199901L */
474 #define AMD_DBGAPI_HANDLE_LITERAL(type, value) {value}
475 #endif /* !__STDC_VERSION__ >= 199901L */
476 
477 #if defined(__cplusplus)
478 extern "C" {
479 #endif /* defined (__cplusplus) */
480 
481 #if defined(__linux__)
482 #include <sys/types.h>
483 #endif /* __linux__ */
484 
485 #include <stddef.h>
486 #include <stdint.h>
487 
507 #define AMD_DBGAPI_VERSION_0_54
508 
513 #define AMD_DBGAPI_VERSION_0_56
514 
519 #define AMD_DBGAPI_VERSION_0_58
520 
525 #define AMD_DBGAPI_VERSION_0_62
526 
531 #define AMD_DBGAPI_VERSION_0_64
532 
540 
564 
568 typedef uint64_t amd_dbgapi_size_t;
569 
573 typedef enum
574 {
584 
592 #if defined(__linux__)
594 #endif /* __linux__ */
595 
620 #if defined(__linux__)
622 #endif /* __linux__ */
623 
631 #if defined(__linux__)
632 typedef uint64_t amd_dbgapi_os_agent_id_t;
633 #endif /* __linux__ */
634 
641 #if defined(__linux__)
642 typedef uint64_t amd_dbgapi_os_queue_id_t;
643 #endif /* __linux__ */
644 
653 #if defined(__linux__)
655 #endif /* __linux__ */
656 
664 #if defined(__linux__)
665 typedef enum
666 {
726 #endif /* __linux__ */
727 
740 typedef enum
741 {
963 
981  amd_dbgapi_status_t status,
982  const char **status_string) AMD_DBGAPI_VERSION_0_54;
983 
1007 #define AMD_DBGAPI_VERSION_MAJOR 0
1008 
1013 #define AMD_DBGAPI_VERSION_MINOR 65
1014 
1029  uint32_t *major, uint32_t *minor, uint32_t *patch) AMD_DBGAPI_VERSION_0_54;
1030 
1039 const char AMD_DBGAPI *
1040 amd_dbgapi_get_build_name (void) AMD_DBGAPI_VERSION_0_54;
1041 
1088  amd_dbgapi_callbacks_t *callbacks) AMD_DBGAPI_VERSION_0_54;
1089 
1115  AMD_DBGAPI_VERSION_0_54;
1116 
1138 typedef struct
1139 {
1140  uint64_t handle;
1142 
1146 #define AMD_DBGAPI_ARCHITECTURE_NONE \
1147  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_architecture_id_t, 0)
1148 
1156 typedef enum
1157 {
1209 
1249  amd_dbgapi_architecture_id_t architecture_id,
1250  amd_dbgapi_architecture_info_t query, size_t value_size,
1251  void *value) AMD_DBGAPI_VERSION_0_54;
1252 
1282  uint32_t elf_amdgpu_machine,
1284 
1291 typedef struct amd_dbgapi_symbolizer_id_s *amd_dbgapi_symbolizer_id_t;
1292 
1387  amd_dbgapi_architecture_id_t architecture_id,
1388  amd_dbgapi_global_address_t address, amd_dbgapi_size_t *size,
1389  const void *memory, char **instruction_text,
1390  amd_dbgapi_symbolizer_id_t symbolizer_id,
1391  amd_dbgapi_status_t (*symbolizer) (
1392  amd_dbgapi_symbolizer_id_t symbolizer_id,
1393  amd_dbgapi_global_address_t address,
1394  char **symbol_text)) AMD_DBGAPI_VERSION_0_54;
1395 
1399 typedef enum
1400 {
1511 
1515 typedef enum
1516 {
1522 
1598  amd_dbgapi_architecture_id_t architecture_id,
1599  amd_dbgapi_global_address_t address, amd_dbgapi_size_t *size,
1600  const void *memory, amd_dbgapi_instruction_kind_t *instruction_kind,
1601  amd_dbgapi_instruction_properties_t *instruction_properties,
1602  void **instruction_information) AMD_DBGAPI_VERSION_0_58;
1603 
1625 typedef struct amd_dbgapi_client_process_s *amd_dbgapi_client_process_id_t;
1626 
1637 typedef struct
1638 {
1639  uint64_t handle;
1641 
1645 #define AMD_DBGAPI_PROCESS_NONE \
1646  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_process_id_t, 0)
1647 
1654 typedef enum
1655 {
1690 
1735  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_56;
1736 
1827  amd_dbgapi_client_process_id_t client_process_id,
1829 
1876 
1891 typedef enum
1892 {
1924 
1950  amd_dbgapi_process_id_t process_id,
1952 
1964 typedef enum
1965 {
1975 
2001  amd_dbgapi_process_id_t process_id,
2003 
2030 typedef struct
2031 {
2032  uint64_t handle;
2034 
2038 #define AMD_DBGAPI_CODE_OBJECT_NONE \
2039  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_code_object_id_t, 0)
2040 
2047 typedef enum
2048 {
2117 
2157  amd_dbgapi_code_object_id_t code_object_id,
2158  amd_dbgapi_code_object_info_t query, size_t value_size,
2159  void *value) AMD_DBGAPI_VERSION_0_54;
2160 
2211  amd_dbgapi_process_id_t process_id, size_t *code_object_count,
2212  amd_dbgapi_code_object_id_t **code_objects,
2214 
2231 typedef struct
2232 {
2233  uint64_t handle;
2235 
2239 #define AMD_DBGAPI_AGENT_NONE \
2240  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_agent_id_t, 0)
2241 
2248 typedef enum
2249 {
2306 
2310 typedef enum
2311 {
2338 
2383  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_56;
2384 
2437  amd_dbgapi_process_id_t process_id, size_t *agent_count,
2438  amd_dbgapi_agent_id_t **agents,
2440 
2459 typedef struct
2460 {
2461  uint64_t handle;
2463 
2467 #define AMD_DBGAPI_QUEUE_NONE \
2468  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_queue_id_t, 0)
2469 
2476 typedef enum
2477 {
2526 
2567  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_58;
2568 
2572 typedef enum
2573 {
2593 
2598 typedef enum
2599 {
2687 
2741  amd_dbgapi_process_id_t process_id, size_t *queue_count,
2742  amd_dbgapi_queue_id_t **queues,
2744 
2809  amd_dbgapi_queue_id_t queue_id,
2810  amd_dbgapi_os_queue_packet_id_t *read_packet_id,
2811  amd_dbgapi_os_queue_packet_id_t *write_packet_id,
2812  size_t *packets_byte_size, void **packets_bytes) AMD_DBGAPI_VERSION_0_54;
2813 
2832 typedef struct
2833 {
2834  uint64_t handle;
2836 
2840 #define AMD_DBGAPI_DISPATCH_NONE \
2841  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_dispatch_id_t, 0)
2842 
2849 typedef enum
2850 {
2943 
2987  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_54;
2988 
2995 typedef enum
2996 {
3007 
3014 typedef enum
3015 {
3029 
3079  amd_dbgapi_process_id_t process_id, size_t *dispatch_count,
3080  amd_dbgapi_dispatch_id_t **dispatches,
3082 
3099 typedef struct
3100 {
3101  uint64_t handle;
3103 
3107 #define AMD_DBGAPI_WORKGROUP_NONE \
3108  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_workgroup_id_t, 0)
3109 
3116 typedef enum
3117 {
3160 
3205  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_64;
3206 
3257  amd_dbgapi_process_id_t process_id, size_t *workgroup_count,
3258  amd_dbgapi_workgroup_id_t **workgroups,
3260 
3277 typedef struct
3278 {
3279  uint64_t handle;
3281 
3285 #define AMD_DBGAPI_WAVE_NONE \
3286  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_wave_id_t, 0)
3287 
3294 typedef enum
3295 {
3404 
3453  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_64;
3454 
3458 typedef enum
3459 {
3483 
3490 typedef enum
3491 {
3677 
3726  amd_dbgapi_process_id_t process_id, size_t *wave_count,
3727  amd_dbgapi_wave_id_t **waves,
3729 
3809 
3813 typedef enum
3814 {
3824 
3977  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_resume_mode_t resume_mode,
3979 
4081 typedef struct
4082 {
4083  uint64_t handle;
4085 
4089 #define AMD_DBGAPI_DISPLACED_STEPPING_NONE \
4090  (amd_dbgapi_displaced_stepping_id_t{ 0 })
4091 
4099 typedef enum
4100 {
4107 
4148  amd_dbgapi_displaced_stepping_id_t displaced_stepping_id,
4149  amd_dbgapi_displaced_stepping_info_t query, size_t value_size,
4150  void *value) AMD_DBGAPI_VERSION_0_54;
4151 
4234  amd_dbgapi_wave_id_t wave_id, const void *saved_instruction_bytes,
4235  amd_dbgapi_displaced_stepping_id_t *displaced_stepping)
4237 
4289  amd_dbgapi_wave_id_t wave_id,
4290  amd_dbgapi_displaced_stepping_id_t displaced_stepping)
4292 
4326 typedef struct
4327 {
4328  uint64_t handle;
4330 
4334 #define AMD_DBGAPI_WATCHPOINT_NONE \
4335  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_watchpoint_id_t, 0)
4336 
4343 typedef enum
4344 {
4361 
4401  amd_dbgapi_watchpoint_id_t watchpoint_id,
4402  amd_dbgapi_watchpoint_info_t query, size_t value_size,
4403  void *value) AMD_DBGAPI_VERSION_0_54;
4404 
4411 typedef enum
4412 {
4430 
4437 typedef enum
4438 {
4458 
4465 typedef struct
4466 {
4467  size_t count;
4470 
4539  amd_dbgapi_process_id_t process_id, amd_dbgapi_global_address_t address,
4540  amd_dbgapi_size_t size, amd_dbgapi_watchpoint_kind_t kind,
4542 
4568  amd_dbgapi_process_id_t process_id,
4570 
4592 typedef struct
4593 {
4594  uint64_t handle;
4596 
4600 #define AMD_DBGAPI_REGISTER_CLASS_NONE \
4601  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_register_class_id_t, 0)
4602 
4610 typedef enum
4611 {
4625 
4666  amd_dbgapi_register_class_id_t register_class_id,
4667  amd_dbgapi_register_class_info_t query, size_t value_size,
4668  void *value) AMD_DBGAPI_VERSION_0_54;
4669 
4711  amd_dbgapi_architecture_id_t architecture_id, size_t *register_class_count,
4713 
4722 typedef struct
4723 {
4724  uint64_t handle;
4726 
4730 #define AMD_DBGAPI_REGISTER_NONE \
4731  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_register_id_t, 0)
4732 
4739 typedef enum
4740 {
4766 
4773 typedef enum
4774 {
4864 
4906  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_58;
4907 
4911 typedef enum
4912 {
4922 
4957  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
4959 
5005  amd_dbgapi_architecture_id_t architecture_id, size_t *register_count,
5007 
5052  amd_dbgapi_wave_id_t wave_id, size_t *register_count,
5054 
5092  amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_register,
5094 
5098 typedef enum
5099 {
5109 
5148  amd_dbgapi_register_class_id_t register_class_id,
5149  amd_dbgapi_register_id_t register_id,
5150  amd_dbgapi_register_class_state_t *register_class_state)
5152 
5210  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
5211  amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size,
5212  void *value) AMD_DBGAPI_VERSION_0_62;
5213 
5276  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
5277  amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size,
5278  const void *value) AMD_DBGAPI_VERSION_0_62;
5279 
5334  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
5335  amd_dbgapi_size_t register_count) AMD_DBGAPI_VERSION_0_62;
5336 
5344 typedef struct
5345 {
5346  amd_dbgapi_global_address_t target_address;
5347  amd_dbgapi_register_id_t saved_return_address_register[2];
5349 
5389 typedef uint32_t amd_dbgapi_lane_id_t;
5390 
5394 #define AMD_DBGAPI_LANE_NONE ((amd_dbgapi_lane_id_t) (-1))
5395 
5409 typedef struct
5410 {
5411  uint64_t handle;
5413 
5417 #define AMD_DBGAPI_ADDRESS_CLASS_NONE \
5418  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_class_id_t, 0)
5419 
5427 typedef enum
5428 {
5451 
5492  amd_dbgapi_address_class_id_t address_class_id,
5493  amd_dbgapi_address_class_info_t query, size_t value_size,
5494  void *value) AMD_DBGAPI_VERSION_0_62;
5495 
5538  amd_dbgapi_architecture_id_t architecture_id, size_t *address_class_count,
5540 
5580  amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_address_class,
5582 
5594 typedef struct
5595 {
5596  uint64_t handle;
5598 
5602 #define AMD_DBGAPI_ADDRESS_SPACE_NONE \
5603  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_space_id_t, 0)
5604 
5611 #define AMD_DBGAPI_ADDRESS_SPACE_GLOBAL \
5612  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_space_id_t, 1)
5613 
5617 typedef enum
5618 {
5635 
5643 typedef enum
5644 {
5673 
5713  amd_dbgapi_address_space_id_t address_space_id,
5714  amd_dbgapi_address_space_info_t query, size_t value_size,
5715  void *value) AMD_DBGAPI_VERSION_0_62;
5716 
5756  amd_dbgapi_architecture_id_t architecture_id, size_t *address_space_count,
5758 
5799  amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_address_space,
5801 
5819 
5935  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_lane_id_t lane_id,
5936  amd_dbgapi_address_space_id_t source_address_space_id,
5937  amd_dbgapi_segment_address_t source_segment_address,
5938  amd_dbgapi_address_space_id_t destination_address_space_id,
5939  amd_dbgapi_segment_address_t *destination_segment_address,
5940  amd_dbgapi_size_t *destination_contiguous_bytes)
5942 
5948 typedef enum
5949 {
5975 
6015  amd_dbgapi_address_space_id_t address_space_id,
6016  amd_dbgapi_segment_address_t segment_address,
6017  amd_dbgapi_segment_address_dependency_t *segment_address_dependency)
6019 
6024 typedef enum
6025 {
6037 
6110  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_lane_id_t lane_id,
6111  amd_dbgapi_address_space_id_t address_space_id,
6112  amd_dbgapi_segment_address_t segment_address,
6113  amd_dbgapi_address_class_id_t address_class_id,
6114  amd_dbgapi_address_class_state_t *address_class_state)
6116 
6216  amd_dbgapi_process_id_t process_id, amd_dbgapi_wave_id_t wave_id,
6217  amd_dbgapi_lane_id_t lane_id,
6218  amd_dbgapi_address_space_id_t address_space_id,
6219  amd_dbgapi_segment_address_t segment_address,
6220  amd_dbgapi_size_t *value_size, void *value) AMD_DBGAPI_VERSION_0_54;
6221 
6321  amd_dbgapi_process_id_t process_id, amd_dbgapi_wave_id_t wave_id,
6322  amd_dbgapi_lane_id_t lane_id,
6323  amd_dbgapi_address_space_id_t address_space_id,
6324  amd_dbgapi_segment_address_t segment_address,
6325  amd_dbgapi_size_t *value_size, const void *value) AMD_DBGAPI_VERSION_0_54;
6326 
6345 typedef enum
6346 {
6358 
6398  amd_dbgapi_process_id_t process_id,
6400 
6432 typedef struct
6433 {
6434  uint64_t handle;
6436 
6440 #define AMD_DBGAPI_EVENT_NONE \
6441  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_event_id_t, 0)
6442 
6446 typedef enum
6447 {
6556 
6593  amd_dbgapi_process_id_t process_id, amd_dbgapi_event_id_t *event_id,
6595 
6599 typedef enum
6600 {
6617 
6624 typedef enum
6625 {
6665 
6707  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_54;
6708 
6736 
6758 typedef enum
6759 {
6786 
6807 
6833 typedef struct
6834 {
6835  uint64_t handle;
6837 
6841 #define AMD_DBGAPI_BREAKPOINT_NONE \
6842  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_breakpoint_id_t, 0)
6843 
6850 typedef enum
6851 {
6858 
6898  amd_dbgapi_breakpoint_id_t breakpoint_id,
6899  amd_dbgapi_breakpoint_info_t query, size_t value_size,
6900  void *value) AMD_DBGAPI_VERSION_0_54;
6901 
6905 typedef enum
6906 {
6916 
6926 typedef struct amd_dbgapi_client_thread_s *amd_dbgapi_client_thread_id_t;
6927 
6966  amd_dbgapi_breakpoint_id_t breakpoint_id,
6967  amd_dbgapi_client_thread_id_t client_thread_id,
6969 
6977 {
6978 
6990  void *(*allocate_memory) (size_t byte_size);
6991 
7008  void (*deallocate_memory) (void *data);
7009 
7038  amd_dbgapi_client_process_id_t client_process_id,
7039  amd_dbgapi_os_process_id_t *os_pid);
7040 
7077  amd_dbgapi_client_process_id_t client_process_id,
7078  amd_dbgapi_global_address_t address,
7079  amd_dbgapi_breakpoint_id_t breakpoint_id);
7080 
7112  amd_dbgapi_client_process_id_t client_process_id,
7113  amd_dbgapi_breakpoint_id_t breakpoint_id);
7114 
7123  void (*log_message) (amd_dbgapi_log_level_t level, const char *message);
7124 };
7125 
7128 #if defined(__cplusplus)
7129 } /* extern "C" */
7130 #endif /* defined (__cplusplus) */
7131 
7132 #endif /* amd-dbgapi.h */
Queue supports the AMD PM4 protocol.
Definition: amd-dbgapi.h:716
const char AMD_DBGAPI * amd_dbgapi_get_build_name(void) AMD_DBGAPI_VERSION_0_54
Query the installed library build name.
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.
Opaque agent handle.
Definition: amd-dbgapi.h:2231
Return the event kind.
Definition: amd-dbgapi.h:6635
The wave stopped due to executing an assert trap instruction.
Definition: amd-dbgapi.h:3605
uint64_t amd_dbgapi_global_address_t
Integral type used for a global virtual memory address in the inferior process.
Definition: amd-dbgapi.h:563
void(* deallocate_memory)(void *data)
Deallocate memory that was allocated by amd_dbgapi_callbacks_s::allocate_memory.
Definition: amd-dbgapi.h:7008
The wave stopped due to detecting an unrecoverable ECC error.
Definition: amd-dbgapi.h:3668
uint64_t handle
Definition: amd-dbgapi.h:6434
uint64_t handle
Definition: amd-dbgapi.h:1140
Return the dispatch grid size (work-items) in the X, Y, and Z dimensions.
Definition: amd-dbgapi.h:2906
The address space is only read the waves of a kernel dispatch.
Definition: amd-dbgapi.h:5633
A set of watchpoints.
Definition: amd-dbgapi.h:4465
The wave stopped due to a memory violation.
Definition: amd-dbgapi.h:3631
The wave stopped due to triggering an enabled floating point invalid operation exception.
Definition: amd-dbgapi.h:3566
There are no properties.
Definition: amd-dbgapi.h:4744
A wave waits for memory instructions to complete before executing further instructions.
Definition: amd-dbgapi.h:6356
The client process handle is invalid.
Definition: amd-dbgapi.h:948
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_initialize(amd_dbgapi_callbacks_t *callbacks) AMD_DBGAPI_VERSION_0_54
Initialize the library.
uint64_t amd_dbgapi_os_queue_id_t
Native operating system queue ID.
Definition: amd-dbgapi.h:642
An invalid argument was given to the function.
Definition: amd-dbgapi.h:789
uint64_t handle
Definition: amd-dbgapi.h:4328
Opaque displaced stepping handle.
Definition: amd-dbgapi.h:4081
Print fatal error messages.
Definition: amd-dbgapi.h:6768
There is a fence with system memory scope.
Definition: amd-dbgapi.h:3027
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_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_56
Query information about an agent.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_wave_stop(amd_dbgapi_wave_id_t wave_id) AMD_DBGAPI_VERSION_0_54
Request a wave to stop executing.
The segment address cannot be converted to the requested address space.
Definition: amd-dbgapi.h:932
The instruction causes the wave to stop executing for some period of time, before continuing executio...
Definition: amd-dbgapi.h:1500
amd_dbgapi_wave_creation_t
The kinds of wave creation supported by the hardware.
Definition: amd-dbgapi.h:1964
Reading or writing the segment address depends on the wavefront.
Definition: amd-dbgapi.h:5961
Queue is in a valid state.
Definition: amd-dbgapi.h:2577
Opaque queue handle.
Definition: amd-dbgapi.h:2459
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.
Watchpoints are not supported.
Definition: amd-dbgapi.h:4416
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.
Print fatal error and warning messages.
Definition: amd-dbgapi.h:6772
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.
The inferior&#39;s runtime has been unloaded.
Definition: amd-dbgapi.h:6609
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 ...
Opaque process handle.
Definition: amd-dbgapi.h:1637
Read access by load instructions.
Definition: amd-dbgapi.h:4442
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_58
Query information about a register.
The instruction classification is unknown.
Definition: amd-dbgapi.h:1405
Native operating system queue ID.
Definition: amd-dbgapi.h:2524
The register value may change as a consequence of changing a register of the same wavefront with the ...
Definition: amd-dbgapi.h:4757
The instruction terminates the wave execution.
Definition: amd-dbgapi.h:1468
The number of lanes supported by the wave.
Definition: amd-dbgapi.h:3402
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_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_58
Query information about a queue.
amd_dbgapi_breakpoint_action_t
The action to perform after reporting a breakpoint has been hit.
Definition: amd-dbgapi.h:6905
Return how watchpoints are shared between processes.
Definition: amd-dbgapi.h:1672
Return the architecture of this dispatch.
Definition: amd-dbgapi.h:2870
Return the source language address class name.
Definition: amd-dbgapi.h:5435
There is a fence with agent memory scope.
Definition: amd-dbgapi.h:3023
The address space is read only.
Definition: amd-dbgapi.h:5628
amd_dbgapi_wave_state_t
The execution state of a wave.
Definition: amd-dbgapi.h:3458
#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:513
Return the dispatch workgroup size (work-items) in the X, Y, and Z dimensions.
Definition: amd-dbgapi.h:2901
uint32_t amd_dbgapi_lane_id_t
A wave lane handle.
Definition: amd-dbgapi.h:5389
Return the AMD GPU ELF EF_AMDGPU_MACH value corresponding to the architecture.
Definition: amd-dbgapi.h:1172
There is no fence.
Definition: amd-dbgapi.h:3019
Queue supports HSA kernel dispatch with multiple producers protocol that supports cooperative dispatc...
Definition: amd-dbgapi.h:712
The wave is running in single-step mode.
Definition: amd-dbgapi.h:3468
amd_dbgapi_changed_t
Indication of if a value has changed.
Definition: amd-dbgapi.h:573
The wave is stopped.
Definition: amd-dbgapi.h:870
amd_dbgapi_register_exists_t
Indication of if a wave has a register.
Definition: amd-dbgapi.h:4911
The wave&#39;s number in the workgroup.
Definition: amd-dbgapi.h:3397
The wave cannot be resumed.
Definition: amd-dbgapi.h:878
The wave does not have the register.
Definition: amd-dbgapi.h:4916
Opaque register class handle.
Definition: amd-dbgapi.h:4592
uint64_t handle
Definition: amd-dbgapi.h:1639
The segment address in the address space is a member of the source language address class...
Definition: amd-dbgapi.h:6035
Return the architecture to which this register class belongs.
Definition: amd-dbgapi.h:4616
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_agent_info_t
Agent queries that are supported by amd_dbgapi_agent_get_info.
Definition: amd-dbgapi.h:2248
amd_dbgapi_dispatch_barrier_t
Dispatch barrier.
Definition: amd-dbgapi.h:2995
Return the size of the register in bytes.
Definition: amd-dbgapi.h:4791
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_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.
The wave has an active displaced stepping buffer.
Definition: amd-dbgapi.h:891
A dispatch packet on the queue has an invalid workgroup size.
Definition: amd-dbgapi.h:2668
Instruction information for direct call instructions.
Definition: amd-dbgapi.h:5344
amd_dbgapi_global_address_t target_address
Definition: amd-dbgapi.h:5346
No more watchpoints available.
Definition: amd-dbgapi.h:904
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_62
Set a hardware data watchpoint.
Opaque hardware data watchpoint handle.
Definition: amd-dbgapi.h:4326
amd_dbgapi_wave_stop_reasons_t
A bit mask of the reasons that a wave stopped.
Definition: amd-dbgapi.h:3490
Return the wave of a AMD_DBGAPI_EVENT_KIND_WAVE_STOP or AMD_DBGAPI_EVENT_KIND_WAVE_COMMAND_TERMINATED...
Definition: amd-dbgapi.h:6641
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.
uint64_t handle
Definition: amd-dbgapi.h:6835
Return the breakpoint of a AMD_DBGAPI_EVENT_KIND_BREAKPOINT_RESUME event.
Definition: amd-dbgapi.h:6646
Print no messages.
Definition: amd-dbgapi.h:6763
Return the architecture of this wave.
Definition: amd-dbgapi.h:3360
Changing the value of the register may change a register of the same wavefront with the AMD_DBGAPI_RE...
Definition: amd-dbgapi.h:4764
Opaque workgroup handle.
Definition: amd-dbgapi.h:3099
amd_dbgapi_log_level_t
The logging levels supported.
Definition: amd-dbgapi.h:6758
Return the process to which this code object belongs.
Definition: amd-dbgapi.h:2053
The byte size of the created watchpoint.
Definition: amd-dbgapi.h:4359
The watchpoint handle is invalid.
Definition: amd-dbgapi.h:900
Return the dispatch to which this workgroup belongs.
Definition: amd-dbgapi.h:3127
No forward progress is needed.
Definition: amd-dbgapi.h:1922
uint64_t amd_dbgapi_os_agent_id_t
Native operating system agent ID.
Definition: amd-dbgapi.h:632
PCI slot of the agent in BDF format (see [Bus:Device.Function (BDF) Notation][bfd].
Definition: amd-dbgapi.h:2281
The instruction enters the trap handler.
Definition: amd-dbgapi.h:1482
The function has executed successfully.
Definition: amd-dbgapi.h:745
The value has changed.
Definition: amd-dbgapi.h:582
Read-modify-write access by atomic instructions.
Definition: amd-dbgapi.h:4451
The wave stopped due to executing a breakpoint instruction.
Definition: amd-dbgapi.h:3502
The instruction has some form of special behavior not covered by any of the other instruction kinds...
Definition: amd-dbgapi.h:1509
The wave is not stopped.
Definition: amd-dbgapi.h:866
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...
A wave on the queue executed an illegal instruction.
Definition: amd-dbgapi.h:2637
amd_dbgapi_queue_state_t
Queue state.
Definition: amd-dbgapi.h:2572
Return the agent to which this workgroup belongs.
Definition: amd-dbgapi.h:3137
Queue supports the AMD SDMA protocol.
Definition: amd-dbgapi.h:720
The code object handle is invalid.
Definition: amd-dbgapi.h:833
The wave stopped due to triggering a data watchpoint.
Definition: amd-dbgapi.h:3514
Return the dispatch barrier setting.
Definition: amd-dbgapi.h:2881
#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:507
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.
The inferior&#39;s runtime has put a queue into the queue error state due to exceptions being reported fo...
Definition: amd-dbgapi.h:6554
amd_dbgapi_event_info_t
Event queries that are supported by amd_dbgapi_event_get_info.
Definition: amd-dbgapi.h:6624
amd_dbgapi_runtime_state_t
Inferior&#39;s runtime state.
Definition: amd-dbgapi.h:6599
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_finalize(void) AMD_DBGAPI_VERSION_0_54
Finalize the library.
Resume execution.
Definition: amd-dbgapi.h:6910
PCI vendor ID of the agent.
Definition: amd-dbgapi.h:2285
The list of code objects has changed.
Definition: amd-dbgapi.h:6492
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.
Return the wave&#39;s state.
Definition: amd-dbgapi.h:3300
Return the dispatch release fence.
Definition: amd-dbgapi.h:2891
The requested information is not available.
Definition: amd-dbgapi.h:781
Return the queue to which this wave belongs.
Definition: amd-dbgapi.h:3345
The instruction unconditionally branches to a literal address.
Definition: amd-dbgapi.h:1417
uint64_t handle
Definition: amd-dbgapi.h:3101
The breakpoint handle is invalid.
Definition: amd-dbgapi.h:940
Return the reason the wave stopped as a bit set.
Definition: amd-dbgapi.h:3307
The library is already initialized.
Definition: amd-dbgapi.h:797
amd_dbgapi_code_object_info_t
Code object queries that are supported by amd_dbgapi_code_object_get_info.
Definition: amd-dbgapi.h:2047
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.
Return the agent to which this queue belongs.
Definition: amd-dbgapi.h:2482
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:7076
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:621
The instruction unconditionally branches to an address held in a pair of registers.
Definition: amd-dbgapi.h:1432
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...
#define AMD_DBGAPI
Definition: amd-dbgapi.h:463
A command for a wave was not able to complete because the wave has terminated.
Definition: amd-dbgapi.h:6470
Return the byte size of an address in the address space.
Definition: amd-dbgapi.h:5656
Agent name.
Definition: amd-dbgapi.h:2260
The lane handle is invalid.
Definition: amd-dbgapi.h:916
void AMD_DBGAPI amd_dbgapi_set_log_level(amd_dbgapi_log_level_t level) AMD_DBGAPI_VERSION_0_54
Set the logging level.
The wave handle is invalid.
Definition: amd-dbgapi.h:862
Opaque code object handle.
Definition: amd-dbgapi.h:2030
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.
Return the agent state.
Definition: amd-dbgapi.h:2275
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:6024
Return the AMD GPU DWARF address space number for the address space&#39;s architecture.
Definition: amd-dbgapi.h:5671
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:5427
uint64_t handle
Definition: amd-dbgapi.h:4083
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.
The wave stopped due to triggering an enabled floating point divide by zero exception.
Definition: amd-dbgapi.h:3534
Return the address space access.
Definition: amd-dbgapi.h:5666
The register class handle is invalid.
Definition: amd-dbgapi.h:908
If none of the bits are set, then amd_dbgapi_wave_stop stopped the wave.
Definition: amd-dbgapi.h:3496
Return the dispatch completion event address.
Definition: amd-dbgapi.h:2941
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.
Return the architecture of this workgroup.
Definition: amd-dbgapi.h:3147
amd_dbgapi_register_class_state_t
Indication of whether a register is a member of a register class.
Definition: amd-dbgapi.h:5098
The instruction unconditionally halts the wave.
Definition: amd-dbgapi.h:1487
Return the number of data watchpoints supported by the process.
Definition: amd-dbgapi.h:1666
uint64_t handle
Definition: amd-dbgapi.h:4594
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_watchpoint_kind_t
Watchpoint memory access kinds.
Definition: amd-dbgapi.h:4437
The notifier for the process that indicates if pending events are available.
Definition: amd-dbgapi.h:1660
void(* log_message)(amd_dbgapi_log_level_t level, const char *message)
Report a log message.
Definition: amd-dbgapi.h:7123
Queue supports the HSA kernel dispatch with single producer protocol.
Definition: amd-dbgapi.h:702
The wave stopped due to triggering an enabled floating point overflow exception.
Definition: amd-dbgapi.h:3542
Return the dispatch acquire fence.
Definition: amd-dbgapi.h:2886
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.
Opaque event handle.
Definition: amd-dbgapi.h:6432
The runtime support in the inferior is enabled or disabled.
Definition: amd-dbgapi.h:6520
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.
Normal progress is needed.
Definition: amd-dbgapi.h:1898
amd_dbgapi_watchpoint_id_t * watchpoint_ids
Definition: amd-dbgapi.h:4468
Return the process to which this breakpoint belongs.
Definition: amd-dbgapi.h:6856
A wave on the queue executed a trap instruction used to abort a dispatch.
Definition: amd-dbgapi.h:2607
Return the dispatch to which this wave belongs.
Definition: amd-dbgapi.h:3340
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_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...
An invalid combination of arguments was given to the function.
Definition: amd-dbgapi.h:793
Return the queue packet ID of the dispatch packet that initiated the dispatch.
Definition: amd-dbgapi.h:2876
amd_dbgapi_event_kind_t
The event kinds.
Definition: amd-dbgapi.h:6446
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.
A dispatch packet on the queue requires too many registers.
Definition: amd-dbgapi.h:2672
Return the register class name.
Definition: amd-dbgapi.h:4623
The instruction unconditionally branches to an address held in a pair of source registers and the add...
Definition: amd-dbgapi.h:1463
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_remove_watchpoint(amd_dbgapi_process_id_t process_id, amd_dbgapi_watchpoint_id_t watchpoint_id) AMD_DBGAPI_VERSION_0_54
Remove a hardware data watchpoint previously set by amd_dbgapi_set_watchpoint.
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.
The wave has an outstanding stop request.
Definition: amd-dbgapi.h:874
The library is not initialized.
Definition: amd-dbgapi.h:801
The symbol was not found.
Definition: amd-dbgapi.h:952
Write access by store instructions or read-modify-write access by atomic instructions.
Definition: amd-dbgapi.h:4447
#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:531
Return the register handle for the PC for the architecture.
Definition: amd-dbgapi.h:1207
amd_dbgapi_address_space_access_t
Indication of how the address space is accessed.
Definition: amd-dbgapi.h:5617
Queue supports the AMD SDMA XGMI protocol.
Definition: amd-dbgapi.h:724
The bytes being disassembled are not a legal instruction.
Definition: amd-dbgapi.h:829
uint64_t handle
Definition: amd-dbgapi.h:2461
Reading or writing the segment address depends on the workgroup.
Definition: amd-dbgapi.h:5965
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:5818
The instruction has no properties.
Definition: amd-dbgapi.h:1520
A wave on the queue executed an instruction that caused an exception.
Definition: amd-dbgapi.h:2617
Return the AMD GPU DWARF register number for the register&#39;s architecture.
Definition: amd-dbgapi.h:4857
Dispatch has a barrier.
Definition: amd-dbgapi.h:3005
Return the breakpoint instruction for the architecture.
Definition: amd-dbgapi.h:1196
uint64_t amd_dbgapi_os_queue_packet_id_t
Native operating system queue packet ID.
Definition: amd-dbgapi.h:654
The value has not changed.
Definition: amd-dbgapi.h:578
The instruction conditionally branches to a literal address.
Definition: amd-dbgapi.h:1424
The URI name of the ELF shared object from which the code object was loaded.
Definition: amd-dbgapi.h:2109
Opaque address space handle.
Definition: amd-dbgapi.h:5594
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_54
Complete a displaced stepping buffer for a wave.
The wave stopped due to an aperture violation.
Definition: amd-dbgapi.h:3646
The ELF AMD GPU machine value is invalid or unsupported.
Definition: amd-dbgapi.h:837
The difference between the address in the ELF shared object and the address the code object is loaded...
Definition: amd-dbgapi.h:2115
The address space supports all accesses.
Definition: amd-dbgapi.h:5623
The register handle is invalid.
Definition: amd-dbgapi.h:912
The wave stopped due to executing a debug trap instruction.
Definition: amd-dbgapi.h:3589
The wave stopped due to triggering an enabled floating point inexact exception.
Definition: amd-dbgapi.h:3558
Memory instructions execute normally and a wave does not wait for the memory access to complete...
Definition: amd-dbgapi.h:6351
Reading or writing the segment address depends on the process.
Definition: amd-dbgapi.h:5973
Native operating system process ID.
Definition: amd-dbgapi.h:1688
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. ...
amd_dbgapi_process_info_t
Process queries that are supported by amd_dbgapi_process_get_info.
Definition: amd-dbgapi.h:1654
Return the queue of a AMD_DBGAPI_EVENT_KIND_QUEUE_ERROR event.
Definition: amd-dbgapi.h:6663
uint64_t handle
Definition: amd-dbgapi.h:2834
The register is not a member of the register class.
Definition: amd-dbgapi.h:5103
The address class handle is invalid.
Definition: amd-dbgapi.h:920
amd_dbgapi_workgroup_info_t
Workgroup queries that are supported by amd_dbgapi_workgroup_get_info.
Definition: amd-dbgapi.h:3116
A wave has stopped.
Definition: amd-dbgapi.h:6455
Return the process to which this dispatch belongs.
Definition: amd-dbgapi.h:2865
amd_dbgapi_architecture_info_t
Architecture queries that are supported by amd_dbgapi_architecture_get_info.
Definition: amd-dbgapi.h:1156
#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:525
Return the process to which this wave belongs.
Definition: amd-dbgapi.h:3355
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.
Opaque register handle.
Definition: amd-dbgapi.h:4722
Return the register&#39;s properties.
Definition: amd-dbgapi.h:4862
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_dispatch_fence_scope_t
Dispatch memory fence scope.
Definition: amd-dbgapi.h:3014
Return the architecture to which this register belongs.
Definition: amd-dbgapi.h:4779
Agent does not support debugging.
Definition: amd-dbgapi.h:2336
The watchpoints of a process are shared between all processes.
Definition: amd-dbgapi.h:4428
If none of the bits are set, then the queue is not in the error state.
Definition: amd-dbgapi.h:2603
Maximum number of waves supported by an execution unit.
Definition: amd-dbgapi.h:2299
The event handle is invalid.
Definition: amd-dbgapi.h:936
Normal wave creation allows new waves to be created.
Definition: amd-dbgapi.h:1969
Return the dispatch group segment size in bytes.
Definition: amd-dbgapi.h:2916
Return the address space name.
Definition: amd-dbgapi.h:5651
Return the size in bytes of the memory holding the queue packets.
Definition: amd-dbgapi.h:2519
pid_t amd_dbgapi_os_process_id_t
Native operating system process ID.
Definition: amd-dbgapi.h:593
Return the architecture name.
Definition: amd-dbgapi.h:1164
Return the agent to which this dispatch belongs.
Definition: amd-dbgapi.h:2860
The wave stopped due to completing an instruction single-step.
Definition: amd-dbgapi.h:3518
The displaced stepping handle is invalid.
Definition: amd-dbgapi.h:882
Resume execution in in single step mode.
Definition: amd-dbgapi.h:3822
A fatal error has occurred.
Definition: amd-dbgapi.h:771
amd_dbgapi_queue_info_t
Queue queries that are supported by amd_dbgapi_queue_get_info.
Definition: amd-dbgapi.h:2476
The inferior&#39;s runtime has been loaded and debugging is supported by the library. ...
Definition: amd-dbgapi.h:6605
The segment address in the address space is not a member of the source language address class...
Definition: amd-dbgapi.h:6030
Return the dispatch kernel code entry address.
Definition: amd-dbgapi.h:2931
amd_dbgapi_register_info_t
Register queries that are supported by amd_dbgapi_register_get_info.
Definition: amd-dbgapi.h:4773
Return the process to which this event belongs.
Definition: amd-dbgapi.h:6630
uint64_t handle
Definition: amd-dbgapi.h:2233
size_t count
Definition: amd-dbgapi.h:4467
No dependence is available.
Definition: amd-dbgapi.h:5953
The watchpoints are not shared across processes.
Definition: amd-dbgapi.h:4422
amd_dbgapi_register_class_info_t
Register class queries that are supported by amd_dbgapi_architecture_register_class_get_info.
Definition: amd-dbgapi.h:4610
Return the agent to which this wave belongs.
Definition: amd-dbgapi.h:3350
Agent supports debugging.
Definition: amd-dbgapi.h:2315
Request to resume a host breakpoint.
Definition: amd-dbgapi.h:6505
The process handle is invalid.
Definition: amd-dbgapi.h:841
The instruction conditionally branches to an address held in a pair of registers. ...
Definition: amd-dbgapi.h:1442
Return the architecture specific address space that is used to implement a pointer or reference to th...
Definition: amd-dbgapi.h:5444
amd_dbgapi_watchpoint_info_t
Watchpoint queries that are supported by amd_dbgapi_watchpoint_get_info.
Definition: amd-dbgapi.h:4343
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.
The instruction unconditionally branches to a literal address and the address of the following instru...
Definition: amd-dbgapi.h:1453
The address space handle is invalid.
Definition: amd-dbgapi.h:924
Print fatal error, warning, and info messages.
Definition: amd-dbgapi.h:6776
Opaque dispatch handle.
Definition: amd-dbgapi.h:2832
Return the base address of the memory holding the queue packets.
Definition: amd-dbgapi.h:2514
Return the client thread of a AMD_DBGAPI_EVENT_KIND_BREAKPOINT_RESUME event.
Definition: amd-dbgapi.h:6651
Queue supports the HSA kernel dispatch with multiple producers protocol.
Definition: amd-dbgapi.h:686
The instruction executes sequentially.
Definition: amd-dbgapi.h:1411
The wave has the register.
Definition: amd-dbgapi.h:4920
Return the queue to which this dispatch belongs.
Definition: amd-dbgapi.h:2855
The inferior&#39;s runtime has been loaded but there is a restriction error that prevents debugging the p...
Definition: amd-dbgapi.h:6615
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_56
Query information about a process.
Return if the runtime loaded in the inferior is supported by the library for a AMD_DBGAPI_EVENT_KIND_...
Definition: amd-dbgapi.h:6658
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:5948
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.
Callbacks that the client of the library must provide.
Definition: amd-dbgapi.h:6976
amd_dbgapi_instruction_properties_t
A bit mask of the properties of an instruction.
Definition: amd-dbgapi.h:1515
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.
A dispatch packet on the queue has an invalid dimension.
Definition: amd-dbgapi.h:2652
There is a restriction error that prevents debugging the process.
Definition: amd-dbgapi.h:817
The wave stopped due to executing a trap instruction other than the AMD_DBGAPI_WAVE_STOP_REASON_DEBUG...
Definition: amd-dbgapi.h:3615
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.
Return the breakpoint instruction size in bytes for the architecture.
Definition: amd-dbgapi.h:1188
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_54
Set the wave creation mode for a process.
Return the dispatch private segment size in bytes.
Definition: amd-dbgapi.h:2911
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.
Opaque source language address class handle.
Definition: amd-dbgapi.h:5409
A wave on the queue executed an instruction that had a floating point or integer enabled exception co...
Definition: amd-dbgapi.h:2633
No more displaced stepping buffers are available that are suitable for the requested wave...
Definition: amd-dbgapi.h:887
Unknown queue type.
Definition: amd-dbgapi.h:670
Return the process to which this queue belongs.
Definition: amd-dbgapi.h:2487
amd_dbgapi_progress_t
The kinds of progress supported by the library.
Definition: amd-dbgapi.h:1891
amd_dbgapi_breakpoint_info_t
Breakpoint queries that are supported by amd_dbgapi_breakpoint_get_info.
Definition: amd-dbgapi.h:6850
amd_dbgapi_agent_state_t
Agent state.
Definition: amd-dbgapi.h:2310
A wave on the queue had an aperture violation.
Definition: amd-dbgapi.h:2648
Return the set of exceptions that caused the queue to enter the queue error state.
Definition: amd-dbgapi.h:2509
The operation is not currently implemented.
Definition: amd-dbgapi.h:777
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_54
Associate an active displaced stepping buffer with a wave.
amd_dbgapi_register_properties_t
A bit mask on register properties.
Definition: amd-dbgapi.h:4739
amd_dbgapi_memory_precision_t
Memory access precision.
Definition: amd-dbgapi.h:6345
uint64_t handle
Definition: amd-dbgapi.h:2032
Reading or writing the segment address depends on the lane.
Definition: amd-dbgapi.h:5957
Return the process to which this watchpoint belongs.
Definition: amd-dbgapi.h:4349
Opaque wave handle.
Definition: amd-dbgapi.h:3277
Return the number of bytes to subtract from the PC after stopping due to a breakpoint instruction to ...
Definition: amd-dbgapi.h:1202
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.
uint64_t handle
Definition: amd-dbgapi.h:3279
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_58
Resume execution of a stopped wave.
Return the largest instruction size in bytes for the architecture.
Definition: amd-dbgapi.h:1177
amd_dbgapi_address_space_info_t
Address space queries that are supported by amd_dbgapi_address_space_get_info.
Definition: amd-dbgapi.h:5643
Return the minimum instruction alignment in bytes for the architecture.
Definition: amd-dbgapi.h:1183
The native operating system process associated with a client process has exited.
Definition: amd-dbgapi.h:846
The instruction performs some kind of execution barrier which may result in the wave being halted unt...
Definition: amd-dbgapi.h:1494
The wave stopped due to triggering an enabled floating point input denormal exception.
Definition: amd-dbgapi.h:3526
Stop wave creation prevents new waves from being created.
Definition: amd-dbgapi.h:1973
Native operating system agent ID.
Definition: amd-dbgapi.h:2304
Return the dispatch kernel descriptor address.
Definition: amd-dbgapi.h:2926
The wave is running.
Definition: amd-dbgapi.h:3463
No event.
Definition: amd-dbgapi.h:6451
Resume normal execution.
Definition: amd-dbgapi.h:3818
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:2598
The operation is not supported.
Definition: amd-dbgapi.h:785
uint64_t handle
Definition: amd-dbgapi.h:4724
uint64_t handle
Definition: amd-dbgapi.h:5596
The workgroup workgroup coordinate in the dispatch grid dimensions.
Definition: amd-dbgapi.h:3158
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.
The workgroup handle is invalid.
Definition: amd-dbgapi.h:961
Return the dispatch grid dimensionality.
Definition: amd-dbgapi.h:2896
uint64_t amd_dbgapi_size_t
Integral type used for sizes, including memory allocations, in the inferior.
Definition: amd-dbgapi.h:568
Return the NULL segment address value in the address space.
Definition: amd-dbgapi.h:5661
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.
Return the queue to which this workgroup belongs.
Definition: amd-dbgapi.h:3132
The register handle is valid, but specifies a register that is not allocated in the associated wave...
Definition: amd-dbgapi.h:957
Return the dispatch kernel argument segment address.
Definition: amd-dbgapi.h:2921
Return the architecture of this queue.
Definition: amd-dbgapi.h:2492
Return the workgroup to which this wave belongs.
Definition: amd-dbgapi.h:3330
The register is a member of the register class.
Definition: amd-dbgapi.h:5107
Return the architecture of this agent.
Definition: amd-dbgapi.h:2270
There was an error preempting the queue.
Definition: amd-dbgapi.h:2685
Return the process to which this workgroup belongs.
Definition: amd-dbgapi.h:3142
Return the process to which this displaced stepping buffer belongs.
Definition: amd-dbgapi.h:4105
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.
Print fatal error, warning, info, and API tracing messages.
Definition: amd-dbgapi.h:6780
A wave on the queue had a memory violation.
Definition: amd-dbgapi.h:2643
Total number of Execution Units (EUs) available in the agent.
Definition: amd-dbgapi.h:2294
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.
A callback to the client reported an error.
Definition: amd-dbgapi.h:944
amd_dbgapi_os_queue_type_t
Native operating system queue type.
Definition: amd-dbgapi.h:665
amd_dbgapi_resume_mode_t
The mode in which to resuming the execution of a wave.
Definition: amd-dbgapi.h:3813
A dispatch packet on the queue has a NULL code address.
Definition: amd-dbgapi.h:2660
amd_dbgapi_status_t
AMD debugger API status codes.
Definition: amd-dbgapi.h:740
Return the current program counter value of the wave.
Definition: amd-dbgapi.h:3366
The agent handle is invalid.
Definition: amd-dbgapi.h:850
The base address of the created watchpoint.
Definition: amd-dbgapi.h:4354
Return the AMD GPU DWARF address class number for the address class&#39; architecture.
Definition: amd-dbgapi.h:5449
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_54
Set the progress required for a process.
The architecture handle is invalid.
Definition: amd-dbgapi.h:825
Leave execution halted.
Definition: amd-dbgapi.h:6914
At least one bit of the register value is readonly.
Definition: amd-dbgapi.h:4750
Opaque architecture handle.
Definition: amd-dbgapi.h:1138
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.
The wave stopped due to triggering an enabled floating point underflow exception. ...
Definition: amd-dbgapi.h:3550
Return the queue type.
Definition: amd-dbgapi.h:2497
amd_dbgapi_wave_info_t
Wave queries that are supported by amd_dbgapi_wave_get_info.
Definition: amd-dbgapi.h:3294
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.
uint64_t handle
Definition: amd-dbgapi.h:5411
Return the queue state.
Definition: amd-dbgapi.h:2502
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...
The wave is stopped.
Definition: amd-dbgapi.h:3481
Return the process to which this agent belongs.
Definition: amd-dbgapi.h:2254
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_62
Write a register.
Reading or writing the segment address depends on the agent.
Definition: amd-dbgapi.h:5969
A packet on the queue has an invalid vendor code.
Definition: amd-dbgapi.h:2676
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.
Queue is in the queue error state.
Definition: amd-dbgapi.h:2591
struct amd_dbgapi_symbolizer_id_s * amd_dbgapi_symbolizer_id_t
Opaque client symbolizer handle.
Definition: amd-dbgapi.h:1291
An error occurred while trying to access memory in the inferior.
Definition: amd-dbgapi.h:928
A generic error has occurred.
Definition: amd-dbgapi.h:749
A dispatch packet on the queue has an invalid group segment size.
Definition: amd-dbgapi.h:2656
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_54
Write memory.
The process is already attached to the given inferior process.
Definition: amd-dbgapi.h:821
struct amd_dbgapi_client_process_s * amd_dbgapi_client_process_id_t
Opaque client process handle.
Definition: amd-dbgapi.h:1625
amd_dbgapi_displaced_stepping_info_t
Displaced stepping queries that are supported by amd_dbgapi_displaced_stepping_id_t.
Definition: amd-dbgapi.h:4099
Dispatch has no barrier.
Definition: amd-dbgapi.h:3000
The wave stopped due to executing an illegal instruction.
Definition: amd-dbgapi.h:3655
amd_dbgapi_watchpoint_share_kind_t
The way watchpoints are shared between processes.
Definition: amd-dbgapi.h:4411
The dispatch handle is invalid.
Definition: amd-dbgapi.h:858
amd_dbgapi_instruction_kind_t
The kinds of instruction classifications.
Definition: amd-dbgapi.h:1399
Read, write, or read-modify-write access by load, store, or atomic instructions.
Definition: amd-dbgapi.h:4456
Return the watchpoint(s) the wave triggered.
Definition: amd-dbgapi.h:3320
A packet on the queue has an unsupported code.
Definition: amd-dbgapi.h:2664
struct amd_dbgapi_client_thread_s * amd_dbgapi_client_thread_id_t
Opaque client thread handle.
Definition: amd-dbgapi.h:6926
Return the register name.
Definition: amd-dbgapi.h:4786
The wave workgroup coordinate in the dispatch grid dimensions.
Definition: amd-dbgapi.h:3385
Return if the architectures of all the agents of a process support controlling memory precision...
Definition: amd-dbgapi.h:1678
Print fatal error, warning, info, API tracing, and verbose messages.
Definition: amd-dbgapi.h:6784
The queue handle is invalid.
Definition: amd-dbgapi.h:854
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:7111
The wave stopped due to triggering an enabled integer divide by zero exception.
Definition: amd-dbgapi.h:3574
PCI device ID of the agent.
Definition: amd-dbgapi.h:2289
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.
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.
Return the register type as a C style type string.
Definition: amd-dbgapi.h:4852
amd_dbgapi_status_t(* get_os_pid)(amd_dbgapi_client_process_id_t client_process_id, amd_dbgapi_os_process_id_t *os_pid)
Return the native operating system process handle for the process identified by the client process ha...
Definition: amd-dbgapi.h:7037
amd_dbgapi_dispatch_info_t
Dispatch queries that are supported by amd_dbgapi_dispatch_get_info.
Definition: amd-dbgapi.h:2849
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.
#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:519
The wave stopped after causing a hardware fatal halt.
Definition: amd-dbgapi.h:3675
The wave cannot be resumed in the manner requested due to displaced stepping restrictions.
Definition: amd-dbgapi.h:896
Opaque breakpoint handle.
Definition: amd-dbgapi.h:6833
Return the current execution mask of the wave.
Definition: amd-dbgapi.h:3374