AMD_DBGAPI  0.68.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
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 
433 #ifndef AMD_DBGAPI_H
434 #define AMD_DBGAPI_H 1
435 
436 /* Placeholder for calling convention and import/export macros */
437 #if !defined(AMD_DBGAPI_CALL)
438 #define AMD_DBGAPI_CALL
439 #endif /* !defined (AMD_DBGAPI_CALL) */
440 
441 #if !defined(AMD_DBGAPI_EXPORT_DECORATOR)
442 #if defined(__GNUC__)
443 #define AMD_DBGAPI_EXPORT_DECORATOR __attribute__ ((visibility ("default")))
444 #elif defined(_MSC_VER)
445 #define AMD_DBGAPI_EXPORT_DECORATOR __declspec(dllexport)
446 #endif /* defined (_MSC_VER) */
447 #endif /* !defined (AMD_DBGAPI_EXPORT_DECORATOR) */
448 
449 #if !defined(AMD_DBGAPI_IMPORT_DECORATOR)
450 #if defined(__GNUC__)
451 #define AMD_DBGAPI_IMPORT_DECORATOR
452 #elif defined(_MSC_VER)
453 #define AMD_DBGAPI_IMPORT_DECORATOR __declspec(dllimport)
454 #endif /* defined (_MSC_VER) */
455 #endif /* !defined (AMD_DBGAPI_IMPORT_DECORATOR) */
456 
457 #define AMD_DBGAPI_EXPORT AMD_DBGAPI_EXPORT_DECORATOR AMD_DBGAPI_CALL
458 #define AMD_DBGAPI_IMPORT AMD_DBGAPI_IMPORT_DECORATOR AMD_DBGAPI_CALL
459 
460 #if !defined(AMD_DBGAPI)
461 #if defined(AMD_DBGAPI_EXPORTS)
462 #define AMD_DBGAPI AMD_DBGAPI_EXPORT
463 #else /* !defined (AMD_DBGAPI_EXPORTS) */
464 #define AMD_DBGAPI AMD_DBGAPI_IMPORT
465 #endif /* !defined (AMD_DBGAPI_EXPORTS) */
466 #endif /* !defined (AMD_DBGAPI) */
467 
468 #if __cplusplus >= 201103L
469 /* c++11 allows extended initializer lists. */
470 #define AMD_DBGAPI_HANDLE_LITERAL(type, value) (type{ value })
471 #elif __STDC_VERSION__ >= 199901L
472 /* c99 allows compound literals. */
473 #define AMD_DBGAPI_HANDLE_LITERAL(type, value) ((type){ value })
474 #else /* !__STDC_VERSION__ >= 199901L */
475 #define AMD_DBGAPI_HANDLE_LITERAL(type, value) {value}
476 #endif /* !__STDC_VERSION__ >= 199901L */
477 
478 #if defined(__cplusplus)
479 extern "C" {
480 #endif /* defined (__cplusplus) */
481 
482 #if defined(__linux__)
483 #include <sys/types.h>
484 #endif /* __linux__ */
485 
486 #include <stddef.h>
487 #include <stdint.h>
488 
508 #define AMD_DBGAPI_VERSION_0_54
509 
514 #define AMD_DBGAPI_VERSION_0_56
515 
520 #define AMD_DBGAPI_VERSION_0_58
521 
526 #define AMD_DBGAPI_VERSION_0_62
527 
532 #define AMD_DBGAPI_VERSION_0_64
533 
538 #define AMD_DBGAPI_VERSION_0_67
539 
544 #define AMD_DBGAPI_VERSION_0_68
545 
553 
577 
581 typedef uint64_t amd_dbgapi_size_t;
582 
586 typedef enum
587 {
597 
605 #if defined(__linux__)
607 #endif /* __linux__ */
608 
633 #if defined(__linux__)
635 #endif /* __linux__ */
636 
644 #if defined(__linux__)
645 typedef uint64_t amd_dbgapi_os_agent_id_t;
646 #endif /* __linux__ */
647 
654 #if defined(__linux__)
655 typedef uint64_t amd_dbgapi_os_queue_id_t;
656 #endif /* __linux__ */
657 
666 #if defined(__linux__)
668 #endif /* __linux__ */
669 
677 #if defined(__linux__)
678 typedef enum
679 {
701 #endif /* __linux__ */
702 
715 typedef enum
716 {
938 
956  amd_dbgapi_status_t status,
957  const char **status_string) AMD_DBGAPI_VERSION_0_54;
958 
982 #define AMD_DBGAPI_VERSION_MAJOR 0
983 
988 #define AMD_DBGAPI_VERSION_MINOR 68
989 
1004  uint32_t *major, uint32_t *minor, uint32_t *patch) AMD_DBGAPI_VERSION_0_54;
1005 
1014 const char AMD_DBGAPI *
1015 amd_dbgapi_get_build_name (void) AMD_DBGAPI_VERSION_0_54;
1016 
1063  amd_dbgapi_callbacks_t *callbacks) AMD_DBGAPI_VERSION_0_54;
1064 
1090  AMD_DBGAPI_VERSION_0_54;
1091 
1113 typedef struct
1114 {
1115  uint64_t handle;
1117 
1121 #define AMD_DBGAPI_ARCHITECTURE_NONE \
1122  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_architecture_id_t, 0)
1123 
1131 typedef enum
1132 {
1184 
1224  amd_dbgapi_architecture_id_t architecture_id,
1225  amd_dbgapi_architecture_info_t query, size_t value_size,
1226  void *value) AMD_DBGAPI_VERSION_0_54;
1227 
1257  uint32_t elf_amdgpu_machine,
1259 
1266 typedef struct amd_dbgapi_symbolizer_id_s *amd_dbgapi_symbolizer_id_t;
1267 
1362  amd_dbgapi_architecture_id_t architecture_id,
1363  amd_dbgapi_global_address_t address, amd_dbgapi_size_t *size,
1364  const void *memory, char **instruction_text,
1365  amd_dbgapi_symbolizer_id_t symbolizer_id,
1366  amd_dbgapi_status_t (*symbolizer) (
1367  amd_dbgapi_symbolizer_id_t symbolizer_id,
1368  amd_dbgapi_global_address_t address,
1369  char **symbol_text)) AMD_DBGAPI_VERSION_0_54;
1370 
1374 typedef enum
1375 {
1486 
1490 typedef enum
1491 {
1497 
1573  amd_dbgapi_architecture_id_t architecture_id,
1574  amd_dbgapi_global_address_t address, amd_dbgapi_size_t *size,
1575  const void *memory, amd_dbgapi_instruction_kind_t *instruction_kind,
1576  amd_dbgapi_instruction_properties_t *instruction_properties,
1577  void **instruction_information) AMD_DBGAPI_VERSION_0_58;
1578 
1600 typedef struct amd_dbgapi_client_process_s *amd_dbgapi_client_process_id_t;
1601 
1612 typedef struct
1613 {
1614  uint64_t handle;
1616 
1620 #define AMD_DBGAPI_PROCESS_NONE \
1621  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_process_id_t, 0)
1622 
1629 typedef enum
1630 {
1665 
1710  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_56;
1711 
1802  amd_dbgapi_client_process_id_t client_process_id,
1804 
1851 
1866 typedef enum
1867 {
1899 
1925  amd_dbgapi_process_id_t process_id,
1927 
1939 typedef enum
1940 {
1950 
1976  amd_dbgapi_process_id_t process_id,
1978 
2005 typedef struct
2006 {
2007  uint64_t handle;
2009 
2013 #define AMD_DBGAPI_CODE_OBJECT_NONE \
2014  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_code_object_id_t, 0)
2015 
2022 typedef enum
2023 {
2092 
2132  amd_dbgapi_code_object_id_t code_object_id,
2133  amd_dbgapi_code_object_info_t query, size_t value_size,
2134  void *value) AMD_DBGAPI_VERSION_0_54;
2135 
2186  amd_dbgapi_process_id_t process_id, size_t *code_object_count,
2187  amd_dbgapi_code_object_id_t **code_objects,
2189 
2206 typedef struct
2207 {
2208  uint64_t handle;
2210 
2214 #define AMD_DBGAPI_AGENT_NONE \
2215  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_agent_id_t, 0)
2216 
2223 typedef enum
2224 {
2285 
2289 typedef enum
2290 {
2317 
2362  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_67;
2363 
2416  amd_dbgapi_process_id_t process_id, size_t *agent_count,
2417  amd_dbgapi_agent_id_t **agents,
2419 
2438 typedef struct
2439 {
2440  uint64_t handle;
2442 
2446 #define AMD_DBGAPI_QUEUE_NONE \
2447  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_queue_id_t, 0)
2448 
2455 typedef enum
2456 {
2505 
2546  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_68;
2547 
2551 typedef enum
2552 {
2572 
2577 typedef enum
2578 {
2666 
2720  amd_dbgapi_process_id_t process_id, size_t *queue_count,
2721  amd_dbgapi_queue_id_t **queues,
2723 
2788  amd_dbgapi_queue_id_t queue_id,
2789  amd_dbgapi_os_queue_packet_id_t *read_packet_id,
2790  amd_dbgapi_os_queue_packet_id_t *write_packet_id,
2791  size_t *packets_byte_size, void **packets_bytes) AMD_DBGAPI_VERSION_0_54;
2792 
2811 typedef struct
2812 {
2813  uint64_t handle;
2815 
2819 #define AMD_DBGAPI_DISPATCH_NONE \
2820  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_dispatch_id_t, 0)
2821 
2828 typedef enum
2829 {
2922 
2966  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_54;
2967 
2974 typedef enum
2975 {
2986 
2993 typedef enum
2994 {
3008 
3058  amd_dbgapi_process_id_t process_id, size_t *dispatch_count,
3059  amd_dbgapi_dispatch_id_t **dispatches,
3061 
3078 typedef struct
3079 {
3080  uint64_t handle;
3082 
3086 #define AMD_DBGAPI_WORKGROUP_NONE \
3087  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_workgroup_id_t, 0)
3088 
3095 typedef enum
3096 {
3139 
3184  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_64;
3185 
3236  amd_dbgapi_process_id_t process_id, size_t *workgroup_count,
3237  amd_dbgapi_workgroup_id_t **workgroups,
3239 
3256 typedef struct
3257 {
3258  uint64_t handle;
3260 
3264 #define AMD_DBGAPI_WAVE_NONE \
3265  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_wave_id_t, 0)
3266 
3273 typedef enum
3274 {
3383 
3432  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_64;
3433 
3437 typedef enum
3438 {
3462 
3469 typedef enum
3470 {
3656 
3705  amd_dbgapi_process_id_t process_id, size_t *wave_count,
3706  amd_dbgapi_wave_id_t **waves,
3708 
3788 
3792 typedef enum
3793 {
3803 
3956  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_resume_mode_t resume_mode,
3958 
4060 typedef struct
4061 {
4062  uint64_t handle;
4064 
4068 #define AMD_DBGAPI_DISPLACED_STEPPING_NONE \
4069  (amd_dbgapi_displaced_stepping_id_t{ 0 })
4070 
4078 typedef enum
4079 {
4086 
4127  amd_dbgapi_displaced_stepping_id_t displaced_stepping_id,
4128  amd_dbgapi_displaced_stepping_info_t query, size_t value_size,
4129  void *value) AMD_DBGAPI_VERSION_0_54;
4130 
4213  amd_dbgapi_wave_id_t wave_id, const void *saved_instruction_bytes,
4214  amd_dbgapi_displaced_stepping_id_t *displaced_stepping)
4216 
4268  amd_dbgapi_wave_id_t wave_id,
4269  amd_dbgapi_displaced_stepping_id_t displaced_stepping)
4271 
4305 typedef struct
4306 {
4307  uint64_t handle;
4309 
4313 #define AMD_DBGAPI_WATCHPOINT_NONE \
4314  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_watchpoint_id_t, 0)
4315 
4322 typedef enum
4323 {
4340 
4380  amd_dbgapi_watchpoint_id_t watchpoint_id,
4381  amd_dbgapi_watchpoint_info_t query, size_t value_size,
4382  void *value) AMD_DBGAPI_VERSION_0_54;
4383 
4390 typedef enum
4391 {
4409 
4416 typedef enum
4417 {
4437 
4444 typedef struct
4445 {
4446  size_t count;
4449 
4518  amd_dbgapi_process_id_t process_id, amd_dbgapi_global_address_t address,
4519  amd_dbgapi_size_t size, amd_dbgapi_watchpoint_kind_t kind,
4521 
4543 
4565 typedef struct
4566 {
4567  uint64_t handle;
4569 
4573 #define AMD_DBGAPI_REGISTER_CLASS_NONE \
4574  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_register_class_id_t, 0)
4575 
4583 typedef enum
4584 {
4598 
4639  amd_dbgapi_register_class_id_t register_class_id,
4640  amd_dbgapi_register_class_info_t query, size_t value_size,
4641  void *value) AMD_DBGAPI_VERSION_0_54;
4642 
4684  amd_dbgapi_architecture_id_t architecture_id, size_t *register_class_count,
4686 
4695 typedef struct
4696 {
4697  uint64_t handle;
4699 
4703 #define AMD_DBGAPI_REGISTER_NONE \
4704  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_register_id_t, 0)
4705 
4712 typedef enum
4713 {
4739 
4746 typedef enum
4747 {
4837 
4879  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_58;
4880 
4884 typedef enum
4885 {
4895 
4930  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
4932 
4978  amd_dbgapi_architecture_id_t architecture_id, size_t *register_count,
4980 
5025  amd_dbgapi_wave_id_t wave_id, size_t *register_count,
5027 
5065  amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_register,
5067 
5071 typedef enum
5072 {
5082 
5121  amd_dbgapi_register_class_id_t register_class_id,
5122  amd_dbgapi_register_id_t register_id,
5123  amd_dbgapi_register_class_state_t *register_class_state)
5125 
5183  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
5184  amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size,
5185  void *value) AMD_DBGAPI_VERSION_0_62;
5186 
5249  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
5250  amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size,
5251  const void *value) AMD_DBGAPI_VERSION_0_62;
5252 
5307  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
5308  amd_dbgapi_size_t register_count) AMD_DBGAPI_VERSION_0_62;
5309 
5317 typedef struct
5318 {
5319  amd_dbgapi_global_address_t target_address;
5320  amd_dbgapi_register_id_t saved_return_address_register[2];
5322 
5362 typedef uint32_t amd_dbgapi_lane_id_t;
5363 
5367 #define AMD_DBGAPI_LANE_NONE ((amd_dbgapi_lane_id_t) (-1))
5368 
5382 typedef struct
5383 {
5384  uint64_t handle;
5386 
5390 #define AMD_DBGAPI_ADDRESS_CLASS_NONE \
5391  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_class_id_t, 0)
5392 
5400 typedef enum
5401 {
5424 
5465  amd_dbgapi_address_class_id_t address_class_id,
5466  amd_dbgapi_address_class_info_t query, size_t value_size,
5467  void *value) AMD_DBGAPI_VERSION_0_62;
5468 
5511  amd_dbgapi_architecture_id_t architecture_id, size_t *address_class_count,
5513 
5553  amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_address_class,
5555 
5567 typedef struct
5568 {
5569  uint64_t handle;
5571 
5575 #define AMD_DBGAPI_ADDRESS_SPACE_NONE \
5576  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_space_id_t, 0)
5577 
5584 #define AMD_DBGAPI_ADDRESS_SPACE_GLOBAL \
5585  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_space_id_t, 1)
5586 
5590 typedef enum
5591 {
5608 
5616 typedef enum
5617 {
5646 
5686  amd_dbgapi_address_space_id_t address_space_id,
5687  amd_dbgapi_address_space_info_t query, size_t value_size,
5688  void *value) AMD_DBGAPI_VERSION_0_62;
5689 
5729  amd_dbgapi_architecture_id_t architecture_id, size_t *address_space_count,
5731 
5772  amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_address_space,
5774 
5792 
5908  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_lane_id_t lane_id,
5909  amd_dbgapi_address_space_id_t source_address_space_id,
5910  amd_dbgapi_segment_address_t source_segment_address,
5911  amd_dbgapi_address_space_id_t destination_address_space_id,
5912  amd_dbgapi_segment_address_t *destination_segment_address,
5913  amd_dbgapi_size_t *destination_contiguous_bytes)
5915 
5921 typedef enum
5922 {
5948 
5988  amd_dbgapi_address_space_id_t address_space_id,
5989  amd_dbgapi_segment_address_t segment_address,
5990  amd_dbgapi_segment_address_dependency_t *segment_address_dependency)
5992 
5997 typedef enum
5998 {
6010 
6083  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_lane_id_t lane_id,
6084  amd_dbgapi_address_space_id_t address_space_id,
6085  amd_dbgapi_segment_address_t segment_address,
6086  amd_dbgapi_address_class_id_t address_class_id,
6087  amd_dbgapi_address_class_state_t *address_class_state)
6089 
6189  amd_dbgapi_process_id_t process_id, amd_dbgapi_wave_id_t wave_id,
6190  amd_dbgapi_lane_id_t lane_id,
6191  amd_dbgapi_address_space_id_t address_space_id,
6192  amd_dbgapi_segment_address_t segment_address,
6193  amd_dbgapi_size_t *value_size, void *value) AMD_DBGAPI_VERSION_0_54;
6194 
6294  amd_dbgapi_process_id_t process_id, amd_dbgapi_wave_id_t wave_id,
6295  amd_dbgapi_lane_id_t lane_id,
6296  amd_dbgapi_address_space_id_t address_space_id,
6297  amd_dbgapi_segment_address_t segment_address,
6298  amd_dbgapi_size_t *value_size, const void *value) AMD_DBGAPI_VERSION_0_54;
6299 
6318 typedef enum
6319 {
6331 
6371  amd_dbgapi_process_id_t process_id,
6373 
6405 typedef struct
6406 {
6407  uint64_t handle;
6409 
6413 #define AMD_DBGAPI_EVENT_NONE \
6414  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_event_id_t, 0)
6415 
6419 typedef enum
6420 {
6529 
6566  amd_dbgapi_process_id_t process_id, amd_dbgapi_event_id_t *event_id,
6568 
6572 typedef enum
6573 {
6590 
6597 typedef enum
6598 {
6638 
6680  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_54;
6681 
6709 
6731 typedef enum
6732 {
6759 
6780 
6806 typedef struct
6807 {
6808  uint64_t handle;
6810 
6814 #define AMD_DBGAPI_BREAKPOINT_NONE \
6815  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_breakpoint_id_t, 0)
6816 
6823 typedef enum
6824 {
6831 
6871  amd_dbgapi_breakpoint_id_t breakpoint_id,
6872  amd_dbgapi_breakpoint_info_t query, size_t value_size,
6873  void *value) AMD_DBGAPI_VERSION_0_54;
6874 
6878 typedef enum
6879 {
6889 
6899 typedef struct amd_dbgapi_client_thread_s *amd_dbgapi_client_thread_id_t;
6900 
6939  amd_dbgapi_breakpoint_id_t breakpoint_id,
6940  amd_dbgapi_client_thread_id_t client_thread_id,
6942 
6950 {
6951 
6963  void *(*allocate_memory) (size_t byte_size);
6964 
6981  void (*deallocate_memory) (void *data);
6982 
7011  amd_dbgapi_client_process_id_t client_process_id,
7012  amd_dbgapi_os_process_id_t *os_pid);
7013 
7050  amd_dbgapi_client_process_id_t client_process_id,
7051  amd_dbgapi_global_address_t address,
7052  amd_dbgapi_breakpoint_id_t breakpoint_id);
7053 
7085  amd_dbgapi_client_process_id_t client_process_id,
7086  amd_dbgapi_breakpoint_id_t breakpoint_id);
7087 
7096  void (*log_message) (amd_dbgapi_log_level_t level, const char *message);
7097 };
7098 
7101 #if defined(__cplusplus)
7102 } /* extern "C" */
7103 #endif /* defined (__cplusplus) */
7104 
7105 #endif /* amd-dbgapi.h */
Queue supports the AMD PM4 protocol.
Definition: amd-dbgapi.h:691
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:2206
Return the event kind.
Definition: amd-dbgapi.h:6608
The wave stopped due to executing an assert trap instruction.
Definition: amd-dbgapi.h:3584
uint64_t amd_dbgapi_global_address_t
Integral type used for a global virtual memory address in the inferior process.
Definition: amd-dbgapi.h:576
The wave stopped due to detecting an unrecoverable ECC error.
Definition: amd-dbgapi.h:3647
uint64_t handle
Definition: amd-dbgapi.h:6407
uint64_t handle
Definition: amd-dbgapi.h:1115
Return the dispatch grid size (work-items) in the X, Y, and Z dimensions.
Definition: amd-dbgapi.h:2885
The address space is only read the waves of a kernel dispatch.
Definition: amd-dbgapi.h:5606
A set of watchpoints.
Definition: amd-dbgapi.h:4444
The wave stopped due to a memory violation.
Definition: amd-dbgapi.h:3610
The wave stopped due to triggering an enabled floating point invalid operation exception.
Definition: amd-dbgapi.h:3545
There are no properties.
Definition: amd-dbgapi.h:4717
A wave waits for memory instructions to complete before executing further instructions.
Definition: amd-dbgapi.h:6329
The client process handle is invalid.
Definition: amd-dbgapi.h:923
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:655
An invalid argument was given to the function.
Definition: amd-dbgapi.h:764
uint64_t handle
Definition: amd-dbgapi.h:4307
Opaque displaced stepping handle.
Definition: amd-dbgapi.h:4060
Print fatal error messages.
Definition: amd-dbgapi.h:6741
There is a fence with system memory scope.
Definition: amd-dbgapi.h:3006
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_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:907
The instruction causes the wave to stop executing for some period of time, before continuing executio...
Definition: amd-dbgapi.h:1475
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:7084
amd_dbgapi_wave_creation_t
The kinds of wave creation supported by the hardware.
Definition: amd-dbgapi.h:1939
Reading or writing the segment address depends on the wavefront.
Definition: amd-dbgapi.h:5934
Queue is in a valid state.
Definition: amd-dbgapi.h:2556
Opaque queue handle.
Definition: amd-dbgapi.h:2438
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:4395
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:6745
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:6582
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:1612
Read access by load instructions.
Definition: amd-dbgapi.h:4421
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:1380
Native operating system queue ID.
Definition: amd-dbgapi.h:2503
The register value may change as a consequence of changing a register of the same wavefront with the ...
Definition: amd-dbgapi.h:4730
The instruction terminates the wave execution.
Definition: amd-dbgapi.h:1443
The number of lanes supported by the wave.
Definition: amd-dbgapi.h:3381
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_breakpoint_action_t
The action to perform after reporting a breakpoint has been hit.
Definition: amd-dbgapi.h:6878
Return how watchpoints are shared between processes.
Definition: amd-dbgapi.h:1647
Return the architecture of this dispatch.
Definition: amd-dbgapi.h:2849
Return the source language address class name.
Definition: amd-dbgapi.h:5408
There is a fence with agent memory scope.
Definition: amd-dbgapi.h:3002
The address space is read only.
Definition: amd-dbgapi.h:5601
amd_dbgapi_wave_state_t
The execution state of a wave.
Definition: amd-dbgapi.h:3437
#define AMD_DBGAPI_VERSION_0_56
The function was introduced in version 0.56 of the interface and has the symbol version string of &quot;AM...
Definition: amd-dbgapi.h:514
Return the dispatch workgroup size (work-items) in the X, Y, and Z dimensions.
Definition: amd-dbgapi.h:2880
uint32_t amd_dbgapi_lane_id_t
A wave lane handle.
Definition: amd-dbgapi.h:5362
Return the AMD GPU ELF EF_AMDGPU_MACH value corresponding to the architecture.
Definition: amd-dbgapi.h:1147
There is no fence.
Definition: amd-dbgapi.h:2998
The wave is running in single-step mode.
Definition: amd-dbgapi.h:3447
amd_dbgapi_changed_t
Indication of if a value has changed.
Definition: amd-dbgapi.h:586
The wave is stopped.
Definition: amd-dbgapi.h:845
amd_dbgapi_register_exists_t
Indication of if a wave has a register.
Definition: amd-dbgapi.h:4884
The wave&#39;s number in the workgroup.
Definition: amd-dbgapi.h:3376
The wave cannot be resumed.
Definition: amd-dbgapi.h:853
The wave does not have the register.
Definition: amd-dbgapi.h:4889
Opaque register class handle.
Definition: amd-dbgapi.h:4565
uint64_t handle
Definition: amd-dbgapi.h:1614
The segment address in the address space is a member of the source language address class...
Definition: amd-dbgapi.h:6008
Return the architecture to which this register class belongs.
Definition: amd-dbgapi.h:4589
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:2223
amd_dbgapi_dispatch_barrier_t
Dispatch barrier.
Definition: amd-dbgapi.h:2974
Return the size of the register in bytes.
Definition: amd-dbgapi.h:4764
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:866
A dispatch packet on the queue has an invalid workgroup size.
Definition: amd-dbgapi.h:2647
Instruction information for direct call instructions.
Definition: amd-dbgapi.h:5317
amd_dbgapi_global_address_t target_address
Definition: amd-dbgapi.h:5319
No more watchpoints available.
Definition: amd-dbgapi.h:879
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:4305
amd_dbgapi_wave_stop_reasons_t
A bit mask of the reasons that a wave stopped.
Definition: amd-dbgapi.h:3469
Return the wave of a AMD_DBGAPI_EVENT_KIND_WAVE_STOP or AMD_DBGAPI_EVENT_KIND_WAVE_COMMAND_TERMINATED...
Definition: amd-dbgapi.h:6614
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:6808
Return the breakpoint of a AMD_DBGAPI_EVENT_KIND_BREAKPOINT_RESUME event.
Definition: amd-dbgapi.h:6619
Print no messages.
Definition: amd-dbgapi.h:6736
Return the architecture of this wave.
Definition: amd-dbgapi.h:3339
Changing the value of the register may change a register of the same wavefront with the AMD_DBGAPI_RE...
Definition: amd-dbgapi.h:4737
Opaque workgroup handle.
Definition: amd-dbgapi.h:3078
amd_dbgapi_log_level_t
The logging levels supported.
Definition: amd-dbgapi.h:6731
Return the process to which this code object belongs.
Definition: amd-dbgapi.h:2028
The byte size of the created watchpoint.
Definition: amd-dbgapi.h:4338
The watchpoint handle is invalid.
Definition: amd-dbgapi.h:875
Return the dispatch to which this workgroup belongs.
Definition: amd-dbgapi.h:3106
No forward progress is needed.
Definition: amd-dbgapi.h:1897
uint64_t amd_dbgapi_os_agent_id_t
Native operating system agent ID.
Definition: amd-dbgapi.h:645
PCI slot of the agent in BDF format (see [Bus:Device.Function (BDF) Notation][bfd].
Definition: amd-dbgapi.h:2260
The instruction enters the trap handler.
Definition: amd-dbgapi.h:1457
The function has executed successfully.
Definition: amd-dbgapi.h:720
The value has changed.
Definition: amd-dbgapi.h:595
Read-modify-write access by atomic instructions.
Definition: amd-dbgapi.h:4430
The wave stopped due to executing a breakpoint instruction.
Definition: amd-dbgapi.h:3481
The instruction has some form of special behavior not covered by any of the other instruction kinds...
Definition: amd-dbgapi.h:1484
The wave is not stopped.
Definition: amd-dbgapi.h:841
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:2616
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:7049
amd_dbgapi_queue_state_t
Queue state.
Definition: amd-dbgapi.h:2551
Return the agent to which this workgroup belongs.
Definition: amd-dbgapi.h:3116
Queue supports the AMD SDMA protocol.
Definition: amd-dbgapi.h:695
The code object handle is invalid.
Definition: amd-dbgapi.h:808
The wave stopped due to triggering a data watchpoint.
Definition: amd-dbgapi.h:3493
Return the dispatch barrier setting.
Definition: amd-dbgapi.h:2860
#define AMD_DBGAPI_VERSION_0_54
The function was introduced in version 0.54 of the interface and has the symbol version string of &quot;AM...
Definition: amd-dbgapi.h:508
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:6527
amd_dbgapi_event_info_t
Event queries that are supported by amd_dbgapi_event_get_info.
Definition: amd-dbgapi.h:6597
amd_dbgapi_runtime_state_t
Inferior&#39;s runtime state.
Definition: amd-dbgapi.h:6572
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_finalize(void) AMD_DBGAPI_VERSION_0_54
Finalize the library.
Resume execution.
Definition: amd-dbgapi.h:6883
PCI vendor ID of the agent.
Definition: amd-dbgapi.h:2264
The list of code objects has changed.
Definition: amd-dbgapi.h:6465
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:3279
Return the dispatch release fence.
Definition: amd-dbgapi.h:2870
The requested information is not available.
Definition: amd-dbgapi.h:756
Return the queue to which this wave belongs.
Definition: amd-dbgapi.h:3324
The instruction unconditionally branches to a literal address.
Definition: amd-dbgapi.h:1392
uint64_t handle
Definition: amd-dbgapi.h:3080
The breakpoint handle is invalid.
Definition: amd-dbgapi.h:915
Return the reason the wave stopped as a bit set.
Definition: amd-dbgapi.h:3286
The library is already initialized.
Definition: amd-dbgapi.h:772
amd_dbgapi_code_object_info_t
Code object queries that are supported by amd_dbgapi_code_object_get_info.
Definition: amd-dbgapi.h:2022
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:2461
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:634
The instruction unconditionally branches to an address held in a pair of registers.
Definition: amd-dbgapi.h:1407
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:464
A command for a wave was not able to complete because the wave has terminated.
Definition: amd-dbgapi.h:6443
Return the byte size of an address in the address space.
Definition: amd-dbgapi.h:5629
Agent name.
Definition: amd-dbgapi.h:2235
The lane handle is invalid.
Definition: amd-dbgapi.h:891
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:837
Opaque code object handle.
Definition: amd-dbgapi.h:2005
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:2250
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:5997
Return the AMD GPU DWARF address space number for the address space&#39;s architecture.
Definition: amd-dbgapi.h:5644
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:5400
uint64_t handle
Definition: amd-dbgapi.h:4062
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:3513
void(* log_message)(amd_dbgapi_log_level_t level, const char *message)
Report a log message.
Definition: amd-dbgapi.h:7096
Return the address space access.
Definition: amd-dbgapi.h:5639
PCI domain the agent is in.
Definition: amd-dbgapi.h:2254
The register class handle is invalid.
Definition: amd-dbgapi.h:883
If none of the bits are set, then amd_dbgapi_wave_stop stopped the wave.
Definition: amd-dbgapi.h:3475
Return the dispatch completion event address.
Definition: amd-dbgapi.h:2920
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:3126
amd_dbgapi_register_class_state_t
Indication of whether a register is a member of a register class.
Definition: amd-dbgapi.h:5071
The instruction unconditionally halts the wave.
Definition: amd-dbgapi.h:1462
Return the number of data watchpoints supported by the process.
Definition: amd-dbgapi.h:1641
uint64_t handle
Definition: amd-dbgapi.h:4567
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:4416
The notifier for the process that indicates if pending events are available.
Definition: amd-dbgapi.h:1635
The wave stopped due to triggering an enabled floating point overflow exception.
Definition: amd-dbgapi.h:3521
Return the dispatch acquire fence.
Definition: amd-dbgapi.h:2865
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:6405
The runtime support in the inferior is enabled or disabled.
Definition: amd-dbgapi.h:6493
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:1873
amd_dbgapi_watchpoint_id_t * watchpoint_ids
Definition: amd-dbgapi.h:4447
Return the process to which this breakpoint belongs.
Definition: amd-dbgapi.h:6829
A wave on the queue executed a trap instruction used to abort a dispatch.
Definition: amd-dbgapi.h:2586
Return the dispatch to which this wave belongs.
Definition: amd-dbgapi.h:3319
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:768
Return the queue packet ID of the dispatch packet that initiated the dispatch.
Definition: amd-dbgapi.h:2855
amd_dbgapi_event_kind_t
The event kinds.
Definition: amd-dbgapi.h:6419
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:2651
Return the register class name.
Definition: amd-dbgapi.h:4596
The instruction unconditionally branches to an address held in a pair of source registers and the add...
Definition: amd-dbgapi.h:1438
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:849
The library is not initialized.
Definition: amd-dbgapi.h:776
The symbol was not found.
Definition: amd-dbgapi.h:927
Write access by store instructions or read-modify-write access by atomic instructions.
Definition: amd-dbgapi.h:4426
#define AMD_DBGAPI_VERSION_0_64
The function was introduced in version 0.64 of the interface and has the symbol version string of &quot;AM...
Definition: amd-dbgapi.h:532
Return the register handle for the PC for the architecture.
Definition: amd-dbgapi.h:1182
amd_dbgapi_address_space_access_t
Indication of how the address space is accessed.
Definition: amd-dbgapi.h:5590
Queue supports the AMD SDMA XGMI protocol.
Definition: amd-dbgapi.h:699
The bytes being disassembled are not a legal instruction.
Definition: amd-dbgapi.h:804
uint64_t handle
Definition: amd-dbgapi.h:2440
Reading or writing the segment address depends on the workgroup.
Definition: amd-dbgapi.h:5938
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:5791
The instruction has no properties.
Definition: amd-dbgapi.h:1495
#define AMD_DBGAPI_VERSION_0_67
The function was introduced in version 0.67 of the interface and has the symbol version string of &quot;AM...
Definition: amd-dbgapi.h:538
A wave on the queue executed an instruction that caused an exception.
Definition: amd-dbgapi.h:2596
Return the AMD GPU DWARF register number for the register&#39;s architecture.
Definition: amd-dbgapi.h:4830
Dispatch has a barrier.
Definition: amd-dbgapi.h:2984
Return the breakpoint instruction for the architecture.
Definition: amd-dbgapi.h:1171
uint64_t amd_dbgapi_os_queue_packet_id_t
Native operating system queue packet ID.
Definition: amd-dbgapi.h:667
The value has not changed.
Definition: amd-dbgapi.h:591
The instruction conditionally branches to a literal address.
Definition: amd-dbgapi.h:1399
The URI name of the ELF shared object from which the code object was loaded.
Definition: amd-dbgapi.h:2084
Opaque address space handle.
Definition: amd-dbgapi.h:5567
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:3625
The ELF AMD GPU machine value is invalid or unsupported.
Definition: amd-dbgapi.h:812
The difference between the address in the ELF shared object and the address the code object is loaded...
Definition: amd-dbgapi.h:2090
The address space supports all accesses.
Definition: amd-dbgapi.h:5596
The register handle is invalid.
Definition: amd-dbgapi.h:887
The wave stopped due to executing a debug trap instruction.
Definition: amd-dbgapi.h:3568
The wave stopped due to triggering an enabled floating point inexact exception.
Definition: amd-dbgapi.h:3537
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_remove_watchpoint(amd_dbgapi_watchpoint_id_t watchpoint_id) AMD_DBGAPI_VERSION_0_67
Remove a hardware data watchpoint previously set by amd_dbgapi_set_watchpoint.
Memory instructions execute normally and a wave does not wait for the memory access to complete...
Definition: amd-dbgapi.h:6324
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.
Reading or writing the segment address depends on the process.
Definition: amd-dbgapi.h:5946
Native operating system process ID.
Definition: amd-dbgapi.h:1663
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:1629
Return the queue of a AMD_DBGAPI_EVENT_KIND_QUEUE_ERROR event.
Definition: amd-dbgapi.h:6636
uint64_t handle
Definition: amd-dbgapi.h:2813
The register is not a member of the register class.
Definition: amd-dbgapi.h:5076
The address class handle is invalid.
Definition: amd-dbgapi.h:895
amd_dbgapi_workgroup_info_t
Workgroup queries that are supported by amd_dbgapi_workgroup_get_info.
Definition: amd-dbgapi.h:3095
A wave has stopped.
Definition: amd-dbgapi.h:6428
Return the process to which this dispatch belongs.
Definition: amd-dbgapi.h:2844
amd_dbgapi_architecture_info_t
Architecture queries that are supported by amd_dbgapi_architecture_get_info.
Definition: amd-dbgapi.h:1131
#define AMD_DBGAPI_VERSION_0_62
The function was introduced in version 0.62 of the interface and has the symbol version string of &quot;AM...
Definition: amd-dbgapi.h:526
Return the process to which this wave belongs.
Definition: amd-dbgapi.h:3334
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:4695
Return the register&#39;s properties.
Definition: amd-dbgapi.h:4835
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:2993
Return the architecture to which this register belongs.
Definition: amd-dbgapi.h:4752
Agent does not support debugging.
Definition: amd-dbgapi.h:2315
The watchpoints of a process are shared between all processes.
Definition: amd-dbgapi.h:4407
If none of the bits are set, then the queue is not in the error state.
Definition: amd-dbgapi.h:2582
Maximum number of waves supported by an execution unit.
Definition: amd-dbgapi.h:2278
The event handle is invalid.
Definition: amd-dbgapi.h:911
Normal wave creation allows new waves to be created.
Definition: amd-dbgapi.h:1944
Return the dispatch group segment size in bytes.
Definition: amd-dbgapi.h:2895
Return the address space name.
Definition: amd-dbgapi.h:5624
Return the size in bytes of the memory holding the queue packets.
Definition: amd-dbgapi.h:2498
pid_t amd_dbgapi_os_process_id_t
Native operating system process ID.
Definition: amd-dbgapi.h:606
Return the architecture name.
Definition: amd-dbgapi.h:1139
Return the agent to which this dispatch belongs.
Definition: amd-dbgapi.h:2839
The wave stopped due to completing an instruction single-step.
Definition: amd-dbgapi.h:3497
The displaced stepping handle is invalid.
Definition: amd-dbgapi.h:857
Resume execution in in single step mode.
Definition: amd-dbgapi.h:3801
A fatal error has occurred.
Definition: amd-dbgapi.h:746
amd_dbgapi_queue_info_t
Queue queries that are supported by amd_dbgapi_queue_get_info.
Definition: amd-dbgapi.h:2455
The inferior&#39;s runtime has been loaded and debugging is supported by the library. ...
Definition: amd-dbgapi.h:6578
The segment address in the address space is not a member of the source language address class...
Definition: amd-dbgapi.h:6003
Return the dispatch kernel code entry address.
Definition: amd-dbgapi.h:2910
amd_dbgapi_register_info_t
Register queries that are supported by amd_dbgapi_register_get_info.
Definition: amd-dbgapi.h:4746
Return the process to which this event belongs.
Definition: amd-dbgapi.h:6603
uint64_t handle
Definition: amd-dbgapi.h:2208
size_t count
Definition: amd-dbgapi.h:4446
No dependence is available.
Definition: amd-dbgapi.h:5926
The watchpoints are not shared across processes.
Definition: amd-dbgapi.h:4401
amd_dbgapi_register_class_info_t
Register class queries that are supported by amd_dbgapi_architecture_register_class_get_info.
Definition: amd-dbgapi.h:4583
Return the agent to which this wave belongs.
Definition: amd-dbgapi.h:3329
Agent supports debugging.
Definition: amd-dbgapi.h:2294
Request to resume a host breakpoint.
Definition: amd-dbgapi.h:6478
The process handle is invalid.
Definition: amd-dbgapi.h:816
The instruction conditionally branches to an address held in a pair of registers. ...
Definition: amd-dbgapi.h:1417
Return the architecture specific address space that is used to implement a pointer or reference to th...
Definition: amd-dbgapi.h:5417
amd_dbgapi_watchpoint_info_t
Watchpoint queries that are supported by amd_dbgapi_watchpoint_get_info.
Definition: amd-dbgapi.h:4322
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:1428
The address space handle is invalid.
Definition: amd-dbgapi.h:899
Print fatal error, warning, and info messages.
Definition: amd-dbgapi.h:6749
Opaque dispatch handle.
Definition: amd-dbgapi.h:2811
Return the base address of the memory holding the queue packets.
Definition: amd-dbgapi.h:2493
Return the client thread of a AMD_DBGAPI_EVENT_KIND_BREAKPOINT_RESUME event.
Definition: amd-dbgapi.h:6624
The instruction executes sequentially.
Definition: amd-dbgapi.h:1386
The wave has the register.
Definition: amd-dbgapi.h:4893
Return the queue to which this dispatch belongs.
Definition: amd-dbgapi.h:2834
The inferior&#39;s runtime has been loaded but there is a restriction error that prevents debugging the p...
Definition: amd-dbgapi.h:6588
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:6631
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:5921
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:6949
amd_dbgapi_instruction_properties_t
A bit mask of the properties of an instruction.
Definition: amd-dbgapi.h:1490
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:2631
There is a restriction error that prevents debugging the process.
Definition: amd-dbgapi.h:792
The wave stopped due to executing a trap instruction other than the AMD_DBGAPI_WAVE_STOP_REASON_DEBUG...
Definition: amd-dbgapi.h:3594
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:1163
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:2890
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:5382
A wave on the queue executed an instruction that had a floating point or integer enabled exception co...
Definition: amd-dbgapi.h:2612
No more displaced stepping buffers are available that are suitable for the requested wave...
Definition: amd-dbgapi.h:862
Unknown queue type.
Definition: amd-dbgapi.h:683
Return the process to which this queue belongs.
Definition: amd-dbgapi.h:2466
amd_dbgapi_progress_t
The kinds of progress supported by the library.
Definition: amd-dbgapi.h:1866
amd_dbgapi_breakpoint_info_t
Breakpoint queries that are supported by amd_dbgapi_breakpoint_get_info.
Definition: amd-dbgapi.h:6823
amd_dbgapi_agent_state_t
Agent state.
Definition: amd-dbgapi.h:2289
A wave on the queue had an aperture violation.
Definition: amd-dbgapi.h:2627
Return the set of exceptions that caused the queue to enter the queue error state.
Definition: amd-dbgapi.h:2488
The operation is not currently implemented.
Definition: amd-dbgapi.h:752
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:4712
amd_dbgapi_memory_precision_t
Memory access precision.
Definition: amd-dbgapi.h:6318
uint64_t handle
Definition: amd-dbgapi.h:2007
Reading or writing the segment address depends on the lane.
Definition: amd-dbgapi.h:5930
Return the process to which this watchpoint belongs.
Definition: amd-dbgapi.h:4328
Opaque wave handle.
Definition: amd-dbgapi.h:3256
Return the number of bytes to subtract from the PC after stopping due to a breakpoint instruction to ...
Definition: amd-dbgapi.h:1177
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:3258
#define AMD_DBGAPI_VERSION_0_68
The function was introduced in version 0.68 of the interface and has the symbol version string of &quot;AM...
Definition: amd-dbgapi.h:544
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:1152
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_address_space_info_t
Address space queries that are supported by amd_dbgapi_address_space_get_info.
Definition: amd-dbgapi.h:5616
void(* deallocate_memory)(void *data)
Deallocate memory that was allocated by amd_dbgapi_callbacks_s::allocate_memory.
Definition: amd-dbgapi.h:6981
Return the minimum instruction alignment in bytes for the architecture.
Definition: amd-dbgapi.h:1158
The native operating system process associated with a client process has exited.
Definition: amd-dbgapi.h:821
The instruction performs some kind of execution barrier which may result in the wave being halted unt...
Definition: amd-dbgapi.h:1469
The wave stopped due to triggering an enabled floating point input denormal exception.
Definition: amd-dbgapi.h:3505
Stop wave creation prevents new waves from being created.
Definition: amd-dbgapi.h:1948
Native operating system agent ID.
Definition: amd-dbgapi.h:2283
Return the dispatch kernel descriptor address.
Definition: amd-dbgapi.h:2905
The wave is running.
Definition: amd-dbgapi.h:3442
No event.
Definition: amd-dbgapi.h:6424
Resume normal execution.
Definition: amd-dbgapi.h:3797
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:2577
The operation is not supported.
Definition: amd-dbgapi.h:760
uint64_t handle
Definition: amd-dbgapi.h:4697
uint64_t handle
Definition: amd-dbgapi.h:5569
The workgroup workgroup coordinate in the dispatch grid dimensions.
Definition: amd-dbgapi.h:3137
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:936
Return the dispatch grid dimensionality.
Definition: amd-dbgapi.h:2875
uint64_t amd_dbgapi_size_t
Integral type used for sizes, including memory allocations, in the inferior.
Definition: amd-dbgapi.h:581
Return the NULL segment address value in the address space.
Definition: amd-dbgapi.h:5634
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:3111
The register handle is valid, but specifies a register that is not allocated in the associated wave...
Definition: amd-dbgapi.h:932
Return the dispatch kernel argument segment address.
Definition: amd-dbgapi.h:2900
Return the architecture of this queue.
Definition: amd-dbgapi.h:2471
Return the workgroup to which this wave belongs.
Definition: amd-dbgapi.h:3309
The register is a member of the register class.
Definition: amd-dbgapi.h:5080
Return the architecture of this agent.
Definition: amd-dbgapi.h:2245
There was an error preempting the queue.
Definition: amd-dbgapi.h:2664
Return the process to which this workgroup belongs.
Definition: amd-dbgapi.h:3121
Queue supports the HSA AQL protocol.
Definition: amd-dbgapi.h:687
Return the process to which this displaced stepping buffer belongs.
Definition: amd-dbgapi.h:4084
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:6753
A wave on the queue had a memory violation.
Definition: amd-dbgapi.h:2622
Total number of Execution Units (EUs) available in the agent.
Definition: amd-dbgapi.h:2273
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_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:919
amd_dbgapi_os_queue_type_t
Native operating system queue type.
Definition: amd-dbgapi.h:678
amd_dbgapi_resume_mode_t
The mode in which to resuming the execution of a wave.
Definition: amd-dbgapi.h:3792
A dispatch packet on the queue has a NULL code address.
Definition: amd-dbgapi.h:2639
amd_dbgapi_status_t
AMD debugger API status codes.
Definition: amd-dbgapi.h:715
Return the current program counter value of the wave.
Definition: amd-dbgapi.h:3345
The agent handle is invalid.
Definition: amd-dbgapi.h:825
The base address of the created watchpoint.
Definition: amd-dbgapi.h:4333
Return the AMD GPU DWARF address class number for the address class&#39; architecture.
Definition: amd-dbgapi.h:5422
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:800
Leave execution halted.
Definition: amd-dbgapi.h:6887
At least one bit of the register value is readonly.
Definition: amd-dbgapi.h:4723
Opaque architecture handle.
Definition: amd-dbgapi.h:1113
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:3529
Return the queue type.
Definition: amd-dbgapi.h:2476
amd_dbgapi_wave_info_t
Wave queries that are supported by amd_dbgapi_wave_get_info.
Definition: amd-dbgapi.h:3273
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:5384
Return the queue state.
Definition: amd-dbgapi.h:2481
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:3460
Return the process to which this agent belongs.
Definition: amd-dbgapi.h:2229
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:5942
A packet on the queue has an invalid vendor code.
Definition: amd-dbgapi.h:2655
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:2570
struct amd_dbgapi_symbolizer_id_s * amd_dbgapi_symbolizer_id_t
Opaque client symbolizer handle.
Definition: amd-dbgapi.h:1266
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:7010
An error occurred while trying to access memory in the inferior.
Definition: amd-dbgapi.h:903
A generic error has occurred.
Definition: amd-dbgapi.h:724
A dispatch packet on the queue has an invalid group segment size.
Definition: amd-dbgapi.h:2635
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:796
struct amd_dbgapi_client_process_s * amd_dbgapi_client_process_id_t
Opaque client process handle.
Definition: amd-dbgapi.h:1600
amd_dbgapi_displaced_stepping_info_t
Displaced stepping queries that are supported by amd_dbgapi_displaced_stepping_id_t.
Definition: amd-dbgapi.h:4078
Dispatch has no barrier.
Definition: amd-dbgapi.h:2979
The wave stopped due to executing an illegal instruction.
Definition: amd-dbgapi.h:3634
amd_dbgapi_watchpoint_share_kind_t
The way watchpoints are shared between processes.
Definition: amd-dbgapi.h:4390
The dispatch handle is invalid.
Definition: amd-dbgapi.h:833
amd_dbgapi_instruction_kind_t
The kinds of instruction classifications.
Definition: amd-dbgapi.h:1374
Read, write, or read-modify-write access by load, store, or atomic instructions.
Definition: amd-dbgapi.h:4435
Return the watchpoint(s) the wave triggered.
Definition: amd-dbgapi.h:3299
A packet on the queue has an unsupported code.
Definition: amd-dbgapi.h:2643
struct amd_dbgapi_client_thread_s * amd_dbgapi_client_thread_id_t
Opaque client thread handle.
Definition: amd-dbgapi.h:6899
Return the register name.
Definition: amd-dbgapi.h:4759
The wave workgroup coordinate in the dispatch grid dimensions.
Definition: amd-dbgapi.h:3364
Return if the architectures of all the agents of a process support controlling memory precision...
Definition: amd-dbgapi.h:1653
Print fatal error, warning, info, API tracing, and verbose messages.
Definition: amd-dbgapi.h:6757
The queue handle is invalid.
Definition: amd-dbgapi.h:829
The wave stopped due to triggering an enabled integer divide by zero exception.
Definition: amd-dbgapi.h:3553
PCI device ID of the agent.
Definition: amd-dbgapi.h:2268
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:4825
amd_dbgapi_dispatch_info_t
Dispatch queries that are supported by amd_dbgapi_dispatch_get_info.
Definition: amd-dbgapi.h:2828
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 &quot;AM...
Definition: amd-dbgapi.h:520
The wave stopped after causing a hardware fatal halt.
Definition: amd-dbgapi.h:3654
The wave cannot be resumed in the manner requested due to displaced stepping restrictions.
Definition: amd-dbgapi.h:871
Opaque breakpoint handle.
Definition: amd-dbgapi.h:6806
Return the current execution mask of the wave.
Definition: amd-dbgapi.h:3353