AMD_DBGAPI  0.76.0
amd-dbgapi.h
Go to the documentation of this file.
1 /* Copyright (c) 2019-2024 Advanced Micro Devices, Inc.
2 
3  Permission is hereby granted, free of charge, to any person obtaining a copy
4  of this software and associated documentation files (the "Software"), to deal
5  in the Software without restriction, including without limitation the rights
6  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7  copies of the Software, and to permit persons to whom the Software is
8  furnished to do so, subject to the following conditions:
9 
10  The above copyright notice and this permission notice shall be included in
11  all copies or substantial portions of the Software.
12 
13  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19  THE SOFTWARE. */
20 
465 #ifndef AMD_DBGAPI_H
466 #define AMD_DBGAPI_H 1
467 
468 /* Placeholder for calling convention and import/export macros */
469 #if !defined(AMD_DBGAPI_CALL)
470 #define AMD_DBGAPI_CALL
471 #endif /* !defined (AMD_DBGAPI_CALL) */
472 
473 #if !defined(AMD_DBGAPI_EXPORT_DECORATOR)
474 #if defined(__GNUC__)
475 #define AMD_DBGAPI_EXPORT_DECORATOR __attribute__ ((visibility ("default")))
476 #elif defined(_MSC_VER)
477 #define AMD_DBGAPI_EXPORT_DECORATOR __declspec(dllexport)
478 #endif /* defined (_MSC_VER) */
479 #endif /* !defined (AMD_DBGAPI_EXPORT_DECORATOR) */
480 
481 #if !defined(AMD_DBGAPI_IMPORT_DECORATOR)
482 #if defined(__GNUC__)
483 #define AMD_DBGAPI_IMPORT_DECORATOR
484 #elif defined(_MSC_VER)
485 #define AMD_DBGAPI_IMPORT_DECORATOR __declspec(dllimport)
486 #endif /* defined (_MSC_VER) */
487 #endif /* !defined (AMD_DBGAPI_IMPORT_DECORATOR) */
488 
489 #define AMD_DBGAPI_EXPORT AMD_DBGAPI_EXPORT_DECORATOR AMD_DBGAPI_CALL
490 #define AMD_DBGAPI_IMPORT AMD_DBGAPI_IMPORT_DECORATOR AMD_DBGAPI_CALL
491 
492 #if !defined(AMD_DBGAPI)
493 #if defined(AMD_DBGAPI_EXPORTS)
494 #define AMD_DBGAPI AMD_DBGAPI_EXPORT
495 #else /* !defined (AMD_DBGAPI_EXPORTS) */
496 #define AMD_DBGAPI AMD_DBGAPI_IMPORT
497 #endif /* !defined (AMD_DBGAPI_EXPORTS) */
498 #endif /* !defined (AMD_DBGAPI) */
499 
500 #if __cplusplus >= 201103L
501 /* c++11 allows extended initializer lists. */
502 #define AMD_DBGAPI_HANDLE_LITERAL(type, value) (type{ value })
503 #elif __STDC_VERSION__ >= 199901L
504 /* c99 allows compound literals. */
505 #define AMD_DBGAPI_HANDLE_LITERAL(type, value) ((type){ value })
506 #else /* !__STDC_VERSION__ >= 199901L */
507 #define AMD_DBGAPI_HANDLE_LITERAL(type, value) {value}
508 #endif /* !__STDC_VERSION__ >= 199901L */
509 
510 #if defined(__cplusplus) && __cplusplus >= 201402L
511 #define DEPRECATED [[deprecated]]
512 #else
513 #define DEPRECATED
514 #endif
515 
516 #if defined(__cplusplus)
517 extern "C" {
518 #endif /* defined (__cplusplus) */
519 
520 #if defined(__linux__)
521 #include <sys/types.h>
522 #endif /* __linux__ */
523 
524 #include <stddef.h>
525 #include <stdint.h>
526 
546 #define AMD_DBGAPI_VERSION_0_54
547 
552 #define AMD_DBGAPI_VERSION_0_56
553 
558 #define AMD_DBGAPI_VERSION_0_58
559 
564 #define AMD_DBGAPI_VERSION_0_62
565 
570 #define AMD_DBGAPI_VERSION_0_64
571 
576 #define AMD_DBGAPI_VERSION_0_67
577 
582 #define AMD_DBGAPI_VERSION_0_68
583 
588 #define AMD_DBGAPI_VERSION_0_70
589 
594 #define AMD_DBGAPI_VERSION_0_76
595 
603 
627 
631 typedef uint64_t amd_dbgapi_size_t;
632 
636 typedef enum
637 {
647 
655 #if defined(__linux__)
657 #endif /* __linux__ */
658 
683 #if defined(__linux__)
685 #endif /* __linux__ */
686 
694 #if defined(__linux__)
695 typedef uint64_t amd_dbgapi_os_agent_id_t;
696 #endif /* __linux__ */
697 
704 #if defined(__linux__)
705 typedef uint64_t amd_dbgapi_os_queue_id_t;
706 #endif /* __linux__ */
707 
716 #if defined(__linux__)
718 #endif /* __linux__ */
719 
727 #if defined(__linux__)
728 typedef enum
729 {
751 #endif /* __linux__ */
752 
765 typedef enum
766 {
1008 
1026  amd_dbgapi_status_t status,
1027  const char **status_string) AMD_DBGAPI_VERSION_0_54;
1028 
1052 #define AMD_DBGAPI_VERSION_MAJOR 0
1053 
1058 #define AMD_DBGAPI_VERSION_MINOR 76
1059 
1074  uint32_t *major, uint32_t *minor, uint32_t *patch) AMD_DBGAPI_VERSION_0_54;
1075 
1084 const char AMD_DBGAPI *
1085 amd_dbgapi_get_build_name (void) AMD_DBGAPI_VERSION_0_54;
1086 
1134 
1160  AMD_DBGAPI_VERSION_0_54;
1161 
1183 typedef struct
1184 {
1185  uint64_t handle;
1187 
1191 #define AMD_DBGAPI_ARCHITECTURE_NONE \
1192  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_architecture_id_t, 0)
1193 
1201 typedef enum
1202 {
1254 
1294  amd_dbgapi_architecture_id_t architecture_id,
1295  amd_dbgapi_architecture_info_t query, size_t value_size,
1296  void *value) AMD_DBGAPI_VERSION_0_54;
1297 
1327  uint32_t elf_amdgpu_machine,
1329 
1336 typedef struct amd_dbgapi_symbolizer_id_s *amd_dbgapi_symbolizer_id_t;
1337 
1432  amd_dbgapi_architecture_id_t architecture_id,
1433  amd_dbgapi_global_address_t address, amd_dbgapi_size_t *size,
1434  const void *memory, char **instruction_text,
1435  amd_dbgapi_symbolizer_id_t symbolizer_id,
1436  amd_dbgapi_status_t (*symbolizer) (
1437  amd_dbgapi_symbolizer_id_t symbolizer_id,
1438  amd_dbgapi_global_address_t address,
1439  char **symbol_text)) AMD_DBGAPI_VERSION_0_54;
1440 
1444 typedef enum
1445 {
1556 
1560 typedef enum
1561 {
1567 
1643  amd_dbgapi_architecture_id_t architecture_id,
1644  amd_dbgapi_global_address_t address, amd_dbgapi_size_t *size,
1645  const void *memory, amd_dbgapi_instruction_kind_t *instruction_kind,
1646  amd_dbgapi_instruction_properties_t *instruction_properties,
1647  void **instruction_information) AMD_DBGAPI_VERSION_0_58;
1648 
1670 typedef struct amd_dbgapi_client_process_s *amd_dbgapi_client_process_id_t;
1671 
1682 typedef struct
1683 {
1684  uint64_t handle;
1686 
1690 #define AMD_DBGAPI_PROCESS_NONE \
1691  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_process_id_t, 0)
1692 
1696 typedef enum
1697 {
1700 
1704 
1708 typedef struct
1709 {
1715  size_t size;
1723  const void *data;
1725 
1732 typedef enum
1733 {
1782 
1834  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_76;
1835 
1926  amd_dbgapi_client_process_id_t client_process_id,
1928 
1976 
1991 typedef enum
1992 {
2024 
2054  amd_dbgapi_process_id_t process_id,
2056 
2068 typedef enum
2069 {
2079 
2109  amd_dbgapi_process_id_t process_id,
2111 
2182 
2209 
2237 typedef struct
2238 {
2239  uint64_t handle;
2241 
2245 #define AMD_DBGAPI_CODE_OBJECT_NONE \
2246  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_code_object_id_t, 0)
2247 
2254 typedef enum
2255 {
2324 
2364  amd_dbgapi_code_object_id_t code_object_id,
2365  amd_dbgapi_code_object_info_t query, size_t value_size,
2366  void *value) AMD_DBGAPI_VERSION_0_54;
2367 
2418  amd_dbgapi_process_id_t process_id, size_t *code_object_count,
2419  amd_dbgapi_code_object_id_t **code_objects,
2421 
2438 typedef struct
2439 {
2440  uint64_t handle;
2442 
2446 #define AMD_DBGAPI_AGENT_NONE \
2447  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_agent_id_t, 0)
2448 
2455 typedef enum
2456 {
2517 
2521 typedef enum
2522 {
2549 
2594  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_67;
2595 
2648  amd_dbgapi_process_id_t process_id, size_t *agent_count,
2649  amd_dbgapi_agent_id_t **agents,
2651 
2670 typedef struct
2671 {
2672  uint64_t handle;
2674 
2678 #define AMD_DBGAPI_QUEUE_NONE \
2679  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_queue_id_t, 0)
2680 
2687 typedef enum
2688 {
2737 
2778  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_68;
2779 
2783 typedef enum
2784 {
2804 
2809 typedef enum
2810 {
2865  AMD_DBGAPI_EXCEPTION_WAVE_APERTURE_VIOLATION DEPRECATED
2905 
2959  amd_dbgapi_process_id_t process_id, size_t *queue_count,
2960  amd_dbgapi_queue_id_t **queues,
2962 
3027  amd_dbgapi_queue_id_t queue_id,
3028  amd_dbgapi_os_queue_packet_id_t *read_packet_id,
3029  amd_dbgapi_os_queue_packet_id_t *write_packet_id,
3030  size_t *packets_byte_size, void **packets_bytes) AMD_DBGAPI_VERSION_0_54;
3031 
3050 typedef struct
3051 {
3052  uint64_t handle;
3054 
3058 #define AMD_DBGAPI_DISPATCH_NONE \
3059  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_dispatch_id_t, 0)
3060 
3067 typedef enum
3068 {
3161 
3205  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_54;
3206 
3213 typedef enum
3214 {
3225 
3232 typedef enum
3233 {
3247 
3297  amd_dbgapi_process_id_t process_id, size_t *dispatch_count,
3298  amd_dbgapi_dispatch_id_t **dispatches,
3300 
3317 typedef struct
3318 {
3319  uint64_t handle;
3321 
3325 #define AMD_DBGAPI_WORKGROUP_NONE \
3326  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_workgroup_id_t, 0)
3327 
3334 typedef enum
3335 {
3378 
3423  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_64;
3424 
3475  amd_dbgapi_process_id_t process_id, size_t *workgroup_count,
3476  amd_dbgapi_workgroup_id_t **workgroups,
3478 
3495 typedef struct
3496 {
3497  uint64_t handle;
3499 
3503 #define AMD_DBGAPI_WAVE_NONE \
3504  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_wave_id_t, 0)
3505 
3512 typedef enum
3513 {
3622 
3671  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_64;
3672 
3676 typedef enum
3677 {
3701 
3708 typedef enum
3709 {
3868  AMD_DBGAPI_WAVE_STOP_REASON_APERTURE_VIOLATION DEPRECATED
3900 
3949  amd_dbgapi_process_id_t process_id, size_t *wave_count,
3950  amd_dbgapi_wave_id_t **waves,
3952 
4036 
4040 typedef enum
4041 {
4051 
4207  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_resume_mode_t resume_mode,
4209 
4311 typedef struct
4312 {
4313  uint64_t handle;
4315 
4319 #define AMD_DBGAPI_DISPLACED_STEPPING_NONE \
4320  (amd_dbgapi_displaced_stepping_id_t{ 0 })
4321 
4329 typedef enum
4330 {
4337 
4378  amd_dbgapi_displaced_stepping_id_t displaced_stepping_id,
4379  amd_dbgapi_displaced_stepping_info_t query, size_t value_size,
4380  void *value) AMD_DBGAPI_VERSION_0_54;
4381 
4468  amd_dbgapi_wave_id_t wave_id, const void *saved_instruction_bytes,
4469  amd_dbgapi_displaced_stepping_id_t *displaced_stepping)
4471 
4526  amd_dbgapi_wave_id_t wave_id,
4527  amd_dbgapi_displaced_stepping_id_t displaced_stepping)
4529 
4563 typedef struct
4564 {
4565  uint64_t handle;
4567 
4571 #define AMD_DBGAPI_WATCHPOINT_NONE \
4572  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_watchpoint_id_t, 0)
4573 
4580 typedef enum
4581 {
4598 
4638  amd_dbgapi_watchpoint_id_t watchpoint_id,
4639  amd_dbgapi_watchpoint_info_t query, size_t value_size,
4640  void *value) AMD_DBGAPI_VERSION_0_54;
4641 
4648 typedef enum
4649 {
4667 
4674 typedef enum
4675 {
4695 
4702 typedef struct
4703 {
4704  size_t count;
4707 
4780  amd_dbgapi_process_id_t process_id, amd_dbgapi_global_address_t address,
4781  amd_dbgapi_size_t size, amd_dbgapi_watchpoint_kind_t kind,
4783 
4808 
4830 typedef struct
4831 {
4832  uint64_t handle;
4834 
4838 #define AMD_DBGAPI_REGISTER_CLASS_NONE \
4839  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_register_class_id_t, 0)
4840 
4848 typedef enum
4849 {
4863 
4904  amd_dbgapi_register_class_id_t register_class_id,
4905  amd_dbgapi_register_class_info_t query, size_t value_size,
4906  void *value) AMD_DBGAPI_VERSION_0_54;
4907 
4949  amd_dbgapi_architecture_id_t architecture_id, size_t *register_class_count,
4951 
4960 typedef struct
4961 {
4962  uint64_t handle;
4964 
4968 #define AMD_DBGAPI_REGISTER_NONE \
4969  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_register_id_t, 0)
4970 
4977 typedef enum
4978 {
5004 
5011 typedef enum
5012 {
5106 
5152  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_70;
5153 
5157 typedef enum
5158 {
5168 
5203  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
5205 
5251  amd_dbgapi_architecture_id_t architecture_id, size_t *register_count,
5253 
5298  amd_dbgapi_wave_id_t wave_id, size_t *register_count,
5300 
5338  amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_register,
5340 
5344 typedef enum
5345 {
5355 
5394  amd_dbgapi_register_class_id_t register_class_id,
5395  amd_dbgapi_register_id_t register_id,
5396  amd_dbgapi_register_class_state_t *register_class_state)
5398 
5456  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
5457  amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size,
5458  void *value) AMD_DBGAPI_VERSION_0_62;
5459 
5525  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
5526  amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size,
5527  const void *value) AMD_DBGAPI_VERSION_0_76;
5528 
5583  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id,
5584  amd_dbgapi_size_t register_count) AMD_DBGAPI_VERSION_0_62;
5585 
5593 typedef struct
5594 {
5595  amd_dbgapi_global_address_t target_address;
5596  amd_dbgapi_register_id_t saved_return_address_register[2];
5598 
5638 typedef uint32_t amd_dbgapi_lane_id_t;
5639 
5643 #define AMD_DBGAPI_LANE_NONE ((amd_dbgapi_lane_id_t) (-1))
5644 
5658 typedef struct
5659 {
5660  uint64_t handle;
5662 
5666 #define AMD_DBGAPI_ADDRESS_CLASS_NONE \
5667  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_class_id_t, 0)
5668 
5676 typedef enum
5677 {
5700 
5741  amd_dbgapi_address_class_id_t address_class_id,
5742  amd_dbgapi_address_class_info_t query, size_t value_size,
5743  void *value) AMD_DBGAPI_VERSION_0_62;
5744 
5787  amd_dbgapi_architecture_id_t architecture_id, size_t *address_class_count,
5789 
5829  amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_address_class,
5831 
5843 typedef struct
5844 {
5845  uint64_t handle;
5847 
5851 #define AMD_DBGAPI_ADDRESS_SPACE_NONE \
5852  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_space_id_t, 0)
5853 
5860 #define AMD_DBGAPI_ADDRESS_SPACE_GLOBAL \
5861  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_address_space_id_t, 1)
5862 
5866 typedef enum
5867 {
5884 
5892 typedef enum
5893 {
5922 
5962  amd_dbgapi_address_space_id_t address_space_id,
5963  amd_dbgapi_address_space_info_t query, size_t value_size,
5964  void *value) AMD_DBGAPI_VERSION_0_62;
5965 
6005  amd_dbgapi_architecture_id_t architecture_id, size_t *address_space_count,
6007 
6048  amd_dbgapi_architecture_id_t architecture_id, uint64_t dwarf_address_space,
6050 
6068 
6184  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_lane_id_t lane_id,
6185  amd_dbgapi_address_space_id_t source_address_space_id,
6186  amd_dbgapi_segment_address_t source_segment_address,
6187  amd_dbgapi_address_space_id_t destination_address_space_id,
6188  amd_dbgapi_segment_address_t *destination_segment_address,
6189  amd_dbgapi_size_t *destination_contiguous_bytes)
6191 
6197 typedef enum
6198 {
6224 
6264  amd_dbgapi_address_space_id_t address_space_id,
6265  amd_dbgapi_segment_address_t segment_address,
6266  amd_dbgapi_segment_address_dependency_t *segment_address_dependency)
6268 
6273 typedef enum
6274 {
6286 
6359  amd_dbgapi_wave_id_t wave_id, amd_dbgapi_lane_id_t lane_id,
6360  amd_dbgapi_address_space_id_t address_space_id,
6361  amd_dbgapi_segment_address_t segment_address,
6362  amd_dbgapi_address_class_id_t address_class_id,
6363  amd_dbgapi_address_class_state_t *address_class_state)
6365 
6465  amd_dbgapi_process_id_t process_id, amd_dbgapi_wave_id_t wave_id,
6466  amd_dbgapi_lane_id_t lane_id,
6467  amd_dbgapi_address_space_id_t address_space_id,
6468  amd_dbgapi_segment_address_t segment_address,
6469  amd_dbgapi_size_t *value_size, void *value) AMD_DBGAPI_VERSION_0_54;
6470 
6574  amd_dbgapi_process_id_t process_id, amd_dbgapi_wave_id_t wave_id,
6575  amd_dbgapi_lane_id_t lane_id,
6576  amd_dbgapi_address_space_id_t address_space_id,
6577  amd_dbgapi_segment_address_t segment_address,
6578  amd_dbgapi_size_t *value_size, const void *value) AMD_DBGAPI_VERSION_0_76;
6579 
6598 typedef enum
6599 {
6611 
6651  amd_dbgapi_process_id_t process_id,
6653 
6685 typedef struct
6686 {
6687  uint64_t handle;
6689 
6693 #define AMD_DBGAPI_EVENT_NONE \
6694  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_event_id_t, 0)
6695 
6699 typedef enum
6700 {
6809 
6846  amd_dbgapi_process_id_t process_id, amd_dbgapi_event_id_t *event_id,
6848 
6852 typedef enum
6853 {
6870 
6877 typedef enum
6878 {
6918 
6960  size_t value_size, void *value) AMD_DBGAPI_VERSION_0_54;
6961 
6989 
7011 typedef enum
7012 {
7039 
7060 
7086 typedef struct
7087 {
7088  uint64_t handle;
7090 
7094 #define AMD_DBGAPI_BREAKPOINT_NONE \
7095  AMD_DBGAPI_HANDLE_LITERAL (amd_dbgapi_breakpoint_id_t, 0)
7096 
7103 typedef enum
7104 {
7111 
7151  amd_dbgapi_breakpoint_id_t breakpoint_id,
7152  amd_dbgapi_breakpoint_info_t query, size_t value_size,
7153  void *value) AMD_DBGAPI_VERSION_0_54;
7154 
7158 typedef enum
7159 {
7169 
7179 typedef struct amd_dbgapi_client_thread_s *amd_dbgapi_client_thread_id_t;
7180 
7219  amd_dbgapi_breakpoint_id_t breakpoint_id,
7220  amd_dbgapi_client_thread_id_t client_thread_id,
7222 
7229 typedef enum
7230 {
7253 
7261 {
7262 
7274  void *(*allocate_memory) (size_t byte_size);
7275 
7292  void (*deallocate_memory) (void *data);
7293 
7319  amd_dbgapi_client_process_id_t client_process_id,
7321  size_t value_size, void *value);
7322 
7359  amd_dbgapi_client_process_id_t client_process_id,
7360  amd_dbgapi_global_address_t address,
7361  amd_dbgapi_breakpoint_id_t breakpoint_id);
7362 
7394  amd_dbgapi_client_process_id_t client_process_id,
7395  amd_dbgapi_breakpoint_id_t breakpoint_id);
7396 
7434  amd_dbgapi_client_process_id_t client_process_id,
7435  amd_dbgapi_global_address_t global_address,
7436  amd_dbgapi_size_t *value_size, void *read_buffer,
7437  const void *write_buffer);
7438 
7447  void (*log_message) (amd_dbgapi_log_level_t level, const char *message);
7448 };
7449 
7452 #if defined(__cplusplus)
7453 } /* extern "C" */
7454 #endif /* defined (__cplusplus) */
7455 
7456 #endif /* amd-dbgapi.h */
Queue supports the AMD PM4 protocol.
Definition: amd-dbgapi.h:741
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:2438
Return the event kind.
Definition: amd-dbgapi.h:6888
The wave stopped due to executing an assert trap instruction.
Definition: amd-dbgapi.h:3823
uint64_t amd_dbgapi_global_address_t
Integral type used for a global virtual memory address in the inferior process.
Definition: amd-dbgapi.h:626
void(* deallocate_memory)(void *data)
Deallocate memory that was allocated by amd_dbgapi_callbacks_s::allocate_memory.
Definition: amd-dbgapi.h:7292
The wave stopped due to detecting an unrecoverable ECC error.
Definition: amd-dbgapi.h:3891
uint64_t handle
Definition: amd-dbgapi.h:6687
uint64_t handle
Definition: amd-dbgapi.h:1185
Return the dispatch grid size (work-items) in the X, Y, and Z dimensions.
Definition: amd-dbgapi.h:3124
The address space is only read the waves of a kernel dispatch.
Definition: amd-dbgapi.h:5882
A set of watchpoints.
Definition: amd-dbgapi.h:4702
The wave stopped due to a memory violation.
Definition: amd-dbgapi.h:3849
The wave stopped due to triggering an enabled floating point invalid operation exception.
Definition: amd-dbgapi.h:3784
There are no properties.
Definition: amd-dbgapi.h:4982
A wave waits for memory instructions to complete before executing further instructions.
Definition: amd-dbgapi.h:6609
The client process handle is invalid.
Definition: amd-dbgapi.h:977
uint64_t amd_dbgapi_os_queue_id_t
Native operating system queue ID.
Definition: amd-dbgapi.h:705
An invalid argument was given to the function.
Definition: amd-dbgapi.h:814
uint64_t handle
Definition: amd-dbgapi.h:4565
Opaque displaced stepping handle.
Definition: amd-dbgapi.h:4311
Print fatal error messages.
Definition: amd-dbgapi.h:7021
There is a fence with system memory scope.
Definition: amd-dbgapi.h:3245
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.
The segment address cannot be converted to the requested address space.
Definition: amd-dbgapi.h:961
The instruction causes the wave to stop executing for some period of time, before continuing executio...
Definition: amd-dbgapi.h:1545
amd_dbgapi_wave_creation_t
The kinds of wave creation supported by the hardware.
Definition: amd-dbgapi.h:2068
Reading or writing the segment address depends on the wavefront.
Definition: amd-dbgapi.h:6210
Queue is in a valid state.
Definition: amd-dbgapi.h:2788
Opaque queue handle.
Definition: amd-dbgapi.h:2670
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:4653
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:7025
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:6862
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:1682
Read access by load instructions.
Definition: amd-dbgapi.h:4679
The instruction classification is unknown.
Definition: amd-dbgapi.h:1450
Native operating system queue ID.
Definition: amd-dbgapi.h:2735
The register value may change as a consequence of changing a register of the same wavefront with the ...
Definition: amd-dbgapi.h:4995
The instruction terminates the wave execution.
Definition: amd-dbgapi.h:1513
The number of lanes supported by the wave.
Definition: amd-dbgapi.h:3620
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:7158
Return how watchpoints are shared between processes.
Definition: amd-dbgapi.h:1750
Return the architecture of this dispatch.
Definition: amd-dbgapi.h:3088
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_displaced_stepping_start(amd_dbgapi_wave_id_t wave_id, const void *saved_instruction_bytes, amd_dbgapi_displaced_stepping_id_t *displaced_stepping) AMD_DBGAPI_VERSION_0_76
Associate an active displaced stepping buffer with a wave.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_displaced_stepping_complete(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_displaced_stepping_id_t displaced_stepping) AMD_DBGAPI_VERSION_0_76
Complete a displaced stepping buffer for a wave.
Return the source language address class name.
Definition: amd-dbgapi.h:5684
If the current process is created from a core file, return the content of the AMDGPU state note if pr...
Definition: amd-dbgapi.h:7251
There is a fence with agent memory scope.
Definition: amd-dbgapi.h:3241
The address space is read only.
Definition: amd-dbgapi.h:5877
amd_dbgapi_wave_state_t
The execution state of a wave.
Definition: amd-dbgapi.h:3676
#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:552
Return the dispatch workgroup size (work-items) in the X, Y, and Z dimensions.
Definition: amd-dbgapi.h:3119
uint32_t amd_dbgapi_lane_id_t
A wave lane handle.
Definition: amd-dbgapi.h:5638
const void * data
Pointer to the buffer containing the core state data.
Definition: amd-dbgapi.h:1723
Return the AMD GPU ELF EF_AMDGPU_MACH value corresponding to the architecture.
Definition: amd-dbgapi.h:1217
There is no fence.
Definition: amd-dbgapi.h:3237
The wave is running in single-step mode.
Definition: amd-dbgapi.h:3686
amd_dbgapi_changed_t
Indication of if a value has changed.
Definition: amd-dbgapi.h:636
The wave is stopped.
Definition: amd-dbgapi.h:899
amd_dbgapi_register_exists_t
Indication of if a wave has a register.
Definition: amd-dbgapi.h:5157
The wave&#39;s number in the workgroup.
Definition: amd-dbgapi.h:3615
The wave cannot be resumed.
Definition: amd-dbgapi.h:907
The wave does not have the register.
Definition: amd-dbgapi.h:5162
Opaque register class handle.
Definition: amd-dbgapi.h:4830
uint64_t handle
Definition: amd-dbgapi.h:1684
The segment address in the address space is a member of the source language address class...
Definition: amd-dbgapi.h:6284
Return the architecture to which this register class belongs.
Definition: amd-dbgapi.h:4854
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:2455
amd_dbgapi_dispatch_barrier_t
Dispatch barrier.
Definition: amd-dbgapi.h:3213
Return the size of the register in bytes.
Definition: amd-dbgapi.h:5029
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(* xfer_global_memory)(amd_dbgapi_client_process_id_t client_process_id, amd_dbgapi_global_address_t global_address, amd_dbgapi_size_t *value_size, void *read_buffer, const void *write_buffer)
Uncached global memory transfer.
Definition: amd-dbgapi.h:7433
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:920
A dispatch packet on the queue has an invalid workgroup size.
Definition: amd-dbgapi.h:2886
Instruction information for direct call instructions.
Definition: amd-dbgapi.h:5593
amd_dbgapi_global_address_t target_address
Definition: amd-dbgapi.h:5595
No more watchpoints available.
Definition: amd-dbgapi.h:933
Opaque hardware data watchpoint handle.
Definition: amd-dbgapi.h:4563
amd_dbgapi_wave_stop_reasons_t
A bit mask of the reasons that a wave stopped.
Definition: amd-dbgapi.h:3708
Return the wave of a AMD_DBGAPI_EVENT_KIND_WAVE_STOP or AMD_DBGAPI_EVENT_KIND_WAVE_COMMAND_TERMINATED...
Definition: amd-dbgapi.h:6894
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:7088
Return the breakpoint of a AMD_DBGAPI_EVENT_KIND_BREAKPOINT_RESUME event.
Definition: amd-dbgapi.h:6899
Print no messages.
Definition: amd-dbgapi.h:7016
A wave on the queue had an exception due to accessing an invalid memory address.
Definition: amd-dbgapi.h:2861
Return the architecture of this wave.
Definition: amd-dbgapi.h:3578
Changing the value of the register may change a register of the same wavefront with the AMD_DBGAPI_RE...
Definition: amd-dbgapi.h:5002
Opaque workgroup handle.
Definition: amd-dbgapi.h:3317
amd_dbgapi_log_level_t
The logging levels supported.
Definition: amd-dbgapi.h:7011
Return the process to which this code object belongs.
Definition: amd-dbgapi.h:2260
The byte size of the created watchpoint.
Definition: amd-dbgapi.h:4596
The watchpoint handle is invalid.
Definition: amd-dbgapi.h:929
Return the dispatch to which this workgroup belongs.
Definition: amd-dbgapi.h:3345
No forward progress is needed.
Definition: amd-dbgapi.h:2022
uint64_t amd_dbgapi_os_agent_id_t
Native operating system agent ID.
Definition: amd-dbgapi.h:695
PCI slot of the agent in BDF format (see [Bus:Device.Function (BDF) Notation][bfd].
Definition: amd-dbgapi.h:2492
The instruction enters the trap handler.
Definition: amd-dbgapi.h:1527
The function has executed successfully.
Definition: amd-dbgapi.h:770
The value has changed.
Definition: amd-dbgapi.h:645
Read-modify-write access by atomic instructions.
Definition: amd-dbgapi.h:4688
The wave stopped due to executing a breakpoint instruction.
Definition: amd-dbgapi.h:3720
The instruction has some form of special behavior not covered by any of the other instruction kinds...
Definition: amd-dbgapi.h:1554
The wave is not stopped.
Definition: amd-dbgapi.h:895
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:2848
amd_dbgapi_queue_state_t
Queue state.
Definition: amd-dbgapi.h:2783
Return the agent to which this workgroup belongs.
Definition: amd-dbgapi.h:3355
Queue supports the AMD SDMA protocol.
Definition: amd-dbgapi.h:745
The code object handle is invalid.
Definition: amd-dbgapi.h:862
The wave stopped due to triggering a data watchpoint.
Definition: amd-dbgapi.h:3732
Return the dispatch barrier setting.
Definition: amd-dbgapi.h:3099
#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:546
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:6807
amd_dbgapi_event_info_t
Event queries that are supported by amd_dbgapi_event_get_info.
Definition: amd-dbgapi.h:6877
amd_dbgapi_runtime_state_t
Inferior&#39;s runtime state.
Definition: amd-dbgapi.h:6852
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_finalize(void) AMD_DBGAPI_VERSION_0_54
Finalize the library.
Resume execution.
Definition: amd-dbgapi.h:7163
PCI vendor ID of the agent.
Definition: amd-dbgapi.h:2496
The list of code objects has changed.
Definition: amd-dbgapi.h:6745
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:3518
Return the dispatch release fence.
Definition: amd-dbgapi.h:3109
The requested information is not available.
Definition: amd-dbgapi.h:806
Return the queue to which this wave belongs.
Definition: amd-dbgapi.h:3563
The instruction unconditionally branches to a literal address.
Definition: amd-dbgapi.h:1462
uint64_t handle
Definition: amd-dbgapi.h:3319
The breakpoint handle is invalid.
Definition: amd-dbgapi.h:969
Return the reason the wave stopped as a bit set.
Definition: amd-dbgapi.h:3525
The library is already initialized.
Definition: amd-dbgapi.h:822
amd_dbgapi_code_object_info_t
Code object queries that are supported by amd_dbgapi_code_object_get_info.
Definition: amd-dbgapi.h:2254
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:2693
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:7358
#define AMD_DBGAPI_VERSION_0_70
The function was introduced in version 0.70 of the interface and has the symbol version string of "AM...
Definition: amd-dbgapi.h:588
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:684
The instruction unconditionally branches to an address held in a pair of registers.
Definition: amd-dbgapi.h:1477
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:496
A command for a wave was not able to complete because the wave has terminated.
Definition: amd-dbgapi.h:6723
Return the byte size of an address in the address space.
Definition: amd-dbgapi.h:5905
Agent name.
Definition: amd-dbgapi.h:2467
The lane handle is invalid.
Definition: amd-dbgapi.h:945
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:891
Opaque code object handle.
Definition: amd-dbgapi.h:2237
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_write_memory(amd_dbgapi_process_id_t process_id, amd_dbgapi_wave_id_t wave_id, amd_dbgapi_lane_id_t lane_id, amd_dbgapi_address_space_id_t address_space_id, amd_dbgapi_segment_address_t segment_address, amd_dbgapi_size_t *value_size, const void *value) AMD_DBGAPI_VERSION_0_76
Write memory.
amd_dbgapi_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:2482
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:6273
Return the AMD GPU DWARF address space number for the address space&#39;s architecture.
Definition: amd-dbgapi.h:5920
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:5676
uint64_t handle
Definition: amd-dbgapi.h:4313
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:3752
Return the address space access.
Definition: amd-dbgapi.h:5915
PCI domain the agent is in.
Definition: amd-dbgapi.h:2486
The process is already frozen.
Definition: amd-dbgapi.h:1002
The register class handle is invalid.
Definition: amd-dbgapi.h:937
If none of the bits are set, then amd_dbgapi_wave_stop stopped the wave.
Definition: amd-dbgapi.h:3714
Return the dispatch completion event address.
Definition: amd-dbgapi.h:3159
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:3365
amd_dbgapi_register_class_state_t
Indication of whether a register is a member of a register class.
Definition: amd-dbgapi.h:5344
Encoding is done using big endian.
Definition: amd-dbgapi.h:1699
The instruction unconditionally halts the wave.
Definition: amd-dbgapi.h:1532
Return the number of data watchpoints supported by the process.
Definition: amd-dbgapi.h:1744
uint64_t handle
Definition: amd-dbgapi.h:4832
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:4674
The notifier for the process that indicates if pending events are available.
Definition: amd-dbgapi.h:1738
void(* log_message)(amd_dbgapi_log_level_t level, const char *message)
Report a log message.
Definition: amd-dbgapi.h:7447
The wave stopped due to triggering an enabled floating point overflow exception.
Definition: amd-dbgapi.h:3760
Return the dispatch acquire fence.
Definition: amd-dbgapi.h:3104
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:6685
#define AMD_DBGAPI_VERSION_0_76
The function was introduced in version 0.76 of the interface and has the symbol version string of "AM...
Definition: amd-dbgapi.h:594
The runtime support in the inferior is enabled or disabled.
Definition: amd-dbgapi.h:6773
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:1998
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_set_watchpoint(amd_dbgapi_process_id_t process_id, amd_dbgapi_global_address_t address, amd_dbgapi_size_t size, amd_dbgapi_watchpoint_kind_t kind, amd_dbgapi_watchpoint_id_t *watchpoint_id) AMD_DBGAPI_VERSION_0_76
Set a hardware data watchpoint.
amd_dbgapi_watchpoint_id_t * watchpoint_ids
Definition: amd-dbgapi.h:4705
Return the process to which this breakpoint belongs.
Definition: amd-dbgapi.h:7109
A wave on the queue executed a trap instruction used to abort a dispatch.
Definition: amd-dbgapi.h:2818
Return the dispatch to which this wave belongs.
Definition: amd-dbgapi.h:3558
AMDGPU corefile state data for a process.
Definition: amd-dbgapi.h:1708
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:818
Return the queue packet ID of the dispatch packet that initiated the dispatch.
Definition: amd-dbgapi.h:3094
amd_dbgapi_event_kind_t
The event kinds.
Definition: amd-dbgapi.h:6699
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:2890
Return the register class name.
Definition: amd-dbgapi.h:4861
The instruction unconditionally branches to an address held in a pair of source registers and the add...
Definition: amd-dbgapi.h:1508
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:903
The library is not initialized.
Definition: amd-dbgapi.h:826
The symbol was not found.
Definition: amd-dbgapi.h:981
Write access by store instructions or read-modify-write access by atomic instructions.
Definition: amd-dbgapi.h:4684
#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:570
Return the register handle for the PC for the architecture.
Definition: amd-dbgapi.h:1252
amd_dbgapi_status_t(* client_process_get_info)(amd_dbgapi_client_process_id_t client_process_id, amd_dbgapi_client_process_info_t query, size_t value_size, void *value)
Query information about the client process.
Definition: amd-dbgapi.h:7318
amd_dbgapi_address_space_access_t
Indication of how the address space is accessed.
Definition: amd-dbgapi.h:5866
Queue supports the AMD SDMA XGMI protocol.
Definition: amd-dbgapi.h:749
The bytes being disassembled are not a legal instruction.
Definition: amd-dbgapi.h:858
uint64_t handle
Definition: amd-dbgapi.h:2672
Reading or writing the segment address depends on the workgroup.
Definition: amd-dbgapi.h:6214
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:6067
The instruction has no properties.
Definition: amd-dbgapi.h:1565
#define AMD_DBGAPI_VERSION_0_67
The function was introduced in version 0.67 of the interface and has the symbol version string of "AM...
Definition: amd-dbgapi.h:576
A wave on the queue executed an instruction that caused an exception.
Definition: amd-dbgapi.h:2828
Return the AMD GPU DWARF register number for the register&#39;s architecture.
Definition: amd-dbgapi.h:5099
Dispatch has a barrier.
Definition: amd-dbgapi.h:3223
Return the breakpoint instruction for the architecture.
Definition: amd-dbgapi.h:1241
uint64_t amd_dbgapi_os_queue_packet_id_t
Native operating system queue packet ID.
Definition: amd-dbgapi.h:717
The value has not changed.
Definition: amd-dbgapi.h:641
The instruction conditionally branches to a literal address.
Definition: amd-dbgapi.h:1469
The URI name of the ELF shared object from which the code object was loaded.
Definition: amd-dbgapi.h:2316
Opaque address space handle.
Definition: amd-dbgapi.h:5843
The ELF AMD GPU machine value is invalid or unsupported.
Definition: amd-dbgapi.h:866
amd_dbgapi_client_process_info_t
Client queries that are supported by the client_process_get_info callback.
Definition: amd-dbgapi.h:7229
The difference between the address in the ELF shared object and the address the code object is loaded...
Definition: amd-dbgapi.h:2322
The address space supports all accesses.
Definition: amd-dbgapi.h:5872
The register handle is invalid.
Definition: amd-dbgapi.h:941
The wave stopped due to executing a debug trap instruction.
Definition: amd-dbgapi.h:3807
The wave stopped due to triggering an enabled floating point inexact exception.
Definition: amd-dbgapi.h:3776
Memory instructions execute normally and a wave does not wait for the memory access to complete...
Definition: amd-dbgapi.h:6604
Reading or writing the segment address depends on the process.
Definition: amd-dbgapi.h:6222
Native operating system process ID.
Definition: amd-dbgapi.h:1770
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:1732
Return the queue of a AMD_DBGAPI_EVENT_KIND_QUEUE_ERROR event.
Definition: amd-dbgapi.h:6916
uint64_t handle
Definition: amd-dbgapi.h:3052
The register is not a member of the register class.
Definition: amd-dbgapi.h:5349
The address class handle is invalid.
Definition: amd-dbgapi.h:949
amd_dbgapi_workgroup_info_t
Workgroup queries that are supported by amd_dbgapi_workgroup_get_info.
Definition: amd-dbgapi.h:3334
A wave has stopped.
Definition: amd-dbgapi.h:6708
Return the process to which this dispatch belongs.
Definition: amd-dbgapi.h:3083
amd_dbgapi_architecture_info_t
Architecture queries that are supported by amd_dbgapi_architecture_get_info.
Definition: amd-dbgapi.h:1201
#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:564
Return the process to which this wave belongs.
Definition: amd-dbgapi.h:3573
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:4960
Return the register&#39;s properties.
Definition: amd-dbgapi.h:5104
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:3232
Return the architecture to which this register belongs.
Definition: amd-dbgapi.h:5017
Agent does not support debugging.
Definition: amd-dbgapi.h:2547
The watchpoints of a process are shared between all processes.
Definition: amd-dbgapi.h:4665
If none of the bits are set, then the queue is not in the error state.
Definition: amd-dbgapi.h:2814
Maximum number of waves supported by an execution unit.
Definition: amd-dbgapi.h:2510
The event handle is invalid.
Definition: amd-dbgapi.h:965
Normal wave creation allows new waves to be created.
Definition: amd-dbgapi.h:2073
Return the dispatch group segment size in bytes.
Definition: amd-dbgapi.h:3134
This operation is not allowed when the process is frozen.
Definition: amd-dbgapi.h:998
Return the address space name.
Definition: amd-dbgapi.h:5900
This operation is not allowed when the process is not frozen.
Definition: amd-dbgapi.h:1006
Return the size in bytes of the memory holding the queue packets.
Definition: amd-dbgapi.h:2730
pid_t amd_dbgapi_os_process_id_t
Native operating system process ID.
Definition: amd-dbgapi.h:656
Encoding is done using little endian.
Definition: amd-dbgapi.h:1702
Return the architecture name.
Definition: amd-dbgapi.h:1209
Return the agent to which this dispatch belongs.
Definition: amd-dbgapi.h:3078
The wave stopped due to completing an instruction single-step.
Definition: amd-dbgapi.h:3736
The displaced stepping handle is invalid.
Definition: amd-dbgapi.h:911
Resume execution in in single step mode.
Definition: amd-dbgapi.h:4049
A fatal error has occurred.
Definition: amd-dbgapi.h:796
amd_dbgapi_queue_info_t
Queue queries that are supported by amd_dbgapi_queue_get_info.
Definition: amd-dbgapi.h:2687
The inferior&#39;s runtime has been loaded and debugging is supported by the library. ...
Definition: amd-dbgapi.h:6858
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_wave_stop(amd_dbgapi_wave_id_t wave_id) AMD_DBGAPI_VERSION_0_76
Request a wave to stop executing.
The segment address in the address space is not a member of the source language address class...
Definition: amd-dbgapi.h:6279
Return the dispatch kernel code entry address.
Definition: amd-dbgapi.h:3149
amd_dbgapi_register_info_t
Register queries that are supported by amd_dbgapi_register_get_info.
Definition: amd-dbgapi.h:5011
Return the process to which this event belongs.
Definition: amd-dbgapi.h:6883
uint64_t handle
Definition: amd-dbgapi.h:2440
size_t count
Definition: amd-dbgapi.h:4704
No dependence is available.
Definition: amd-dbgapi.h:6202
The watchpoints are not shared across processes.
Definition: amd-dbgapi.h:4659
amd_dbgapi_register_class_info_t
Register class queries that are supported by amd_dbgapi_architecture_register_class_get_info.
Definition: amd-dbgapi.h:4848
Return the agent to which this wave belongs.
Definition: amd-dbgapi.h:3568
The wave stopped due to an aperture violation.
Definition: amd-dbgapi.h:3864
Agent supports debugging.
Definition: amd-dbgapi.h:2526
Request to resume a host breakpoint.
Definition: amd-dbgapi.h:6758
The process handle is invalid.
Definition: amd-dbgapi.h:870
The instruction conditionally branches to an address held in a pair of registers. ...
Definition: amd-dbgapi.h:1487
Return the architecture specific address space that is used to implement a pointer or reference to th...
Definition: amd-dbgapi.h:5693
amd_dbgapi_watchpoint_info_t
Watchpoint queries that are supported by amd_dbgapi_watchpoint_get_info.
Definition: amd-dbgapi.h:4580
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:1498
The address space handle is invalid.
Definition: amd-dbgapi.h:953
Print fatal error, warning, and info messages.
Definition: amd-dbgapi.h:7029
Opaque dispatch handle.
Definition: amd-dbgapi.h:3050
Return the base address of the memory holding the queue packets.
Definition: amd-dbgapi.h:2725
Return the client thread of a AMD_DBGAPI_EVENT_KIND_BREAKPOINT_RESUME event.
Definition: amd-dbgapi.h:6904
The instruction executes sequentially.
Definition: amd-dbgapi.h:1456
The wave has the register.
Definition: amd-dbgapi.h:5166
Return the queue to which this dispatch belongs.
Definition: amd-dbgapi.h:3073
The inferior&#39;s runtime has been loaded but there is a restriction error that prevents debugging the p...
Definition: amd-dbgapi.h:6868
Return if the runtime loaded in the inferior is supported by the library for a AMD_DBGAPI_EVENT_KIND_...
Definition: amd-dbgapi.h:6911
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:6197
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:7260
amd_dbgapi_instruction_properties_t
A bit mask of the properties of an instruction.
Definition: amd-dbgapi.h:1560
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:2870
There is a restriction error that prevents the operation to complete.
Definition: amd-dbgapi.h:846
The wave stopped due to executing a trap instruction other than the AMD_DBGAPI_WAVE_STOP_REASON_DEBUG...
Definition: amd-dbgapi.h:3833
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:1233
Return the dispatch private segment size in bytes.
Definition: amd-dbgapi.h:3129
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:5658
A wave on the queue executed an instruction that had a floating point or integer enabled exception co...
Definition: amd-dbgapi.h:2844
No more displaced stepping buffers are available that are suitable for the requested wave...
Definition: amd-dbgapi.h:916
Unknown queue type.
Definition: amd-dbgapi.h:733
Return the process to which this queue belongs.
Definition: amd-dbgapi.h:2698
Return a blob containing the content to put in the state note when generating a core dump...
Definition: amd-dbgapi.h:1780
amd_dbgapi_progress_t
The kinds of progress supported by the library.
Definition: amd-dbgapi.h:1991
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_set_wave_creation(amd_dbgapi_process_id_t process_id, amd_dbgapi_wave_creation_t creation) AMD_DBGAPI_VERSION_0_76
Set the wave creation mode for a process.
amd_dbgapi_breakpoint_info_t
Breakpoint queries that are supported by amd_dbgapi_breakpoint_get_info.
Definition: amd-dbgapi.h:7103
amd_dbgapi_agent_state_t
Agent state.
Definition: amd-dbgapi.h:2521
Return the set of exceptions that caused the queue to enter the queue error state.
Definition: amd-dbgapi.h:2720
amd_dbgapi_endianness_t endianness
Endianness encoding of the core state.
Definition: amd-dbgapi.h:1711
The operation is not currently implemented.
Definition: amd-dbgapi.h:802
amd_dbgapi_register_properties_t
A bit mask on register properties.
Definition: amd-dbgapi.h:4977
amd_dbgapi_memory_precision_t
Memory access precision.
Definition: amd-dbgapi.h:6598
uint64_t handle
Definition: amd-dbgapi.h:2239
Reading or writing the segment address depends on the lane.
Definition: amd-dbgapi.h:6206
Return the process to which this watchpoint belongs.
Definition: amd-dbgapi.h:4586
Opaque wave handle.
Definition: amd-dbgapi.h:3495
The current process state is not compatible with the requested operation.
Definition: amd-dbgapi.h:994
Return the number of bytes to subtract from the PC after stopping due to a breakpoint instruction to ...
Definition: amd-dbgapi.h:1247
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:3497
#define AMD_DBGAPI_VERSION_0_68
The function was introduced in version 0.68 of the interface and has the symbol version string of "AM...
Definition: amd-dbgapi.h:582
Return the largest instruction size in bytes for the architecture.
Definition: amd-dbgapi.h:1222
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:5892
Return the minimum instruction alignment in bytes for the architecture.
Definition: amd-dbgapi.h:1228
The native operating system process associated with a client process has exited.
Definition: amd-dbgapi.h:875
The instruction performs some kind of execution barrier which may result in the wave being halted unt...
Definition: amd-dbgapi.h:1539
The wave stopped due to triggering an enabled floating point input denormal exception.
Definition: amd-dbgapi.h:3744
Stop wave creation prevents new waves from being created.
Definition: amd-dbgapi.h:2077
Native operating system agent ID.
Definition: amd-dbgapi.h:2515
Return the dispatch kernel descriptor address.
Definition: amd-dbgapi.h:3144
The wave is running.
Definition: amd-dbgapi.h:3681
No event.
Definition: amd-dbgapi.h:6704
Resume normal execution.
Definition: amd-dbgapi.h:4045
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:2809
The operation is not supported.
Definition: amd-dbgapi.h:810
uint64_t handle
Definition: amd-dbgapi.h:4962
uint64_t handle
Definition: amd-dbgapi.h:5845
The workgroup workgroup coordinate in the dispatch grid dimensions.
Definition: amd-dbgapi.h:3376
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:990
Return the dispatch grid dimensionality.
Definition: amd-dbgapi.h:3114
uint64_t amd_dbgapi_size_t
Integral type used for sizes, including memory allocations, in the inferior.
Definition: amd-dbgapi.h:631
Return the NULL segment address value in the address space.
Definition: amd-dbgapi.h:5910
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:3350
The register handle is valid, but specifies a register that is not allocated in the associated wave...
Definition: amd-dbgapi.h:986
#define DEPRECATED
Old deprecated name kept for backward compatibility.
Definition: amd-dbgapi.h:513
Return the dispatch kernel argument segment address.
Definition: amd-dbgapi.h:3139
Return the architecture of this queue.
Definition: amd-dbgapi.h:2703
Return the workgroup to which this wave belongs.
Definition: amd-dbgapi.h:3548
The register is a member of the register class.
Definition: amd-dbgapi.h:5353
Return the architecture of this agent.
Definition: amd-dbgapi.h:2477
There was an error preempting the queue.
Definition: amd-dbgapi.h:2903
Return the process to which this workgroup belongs.
Definition: amd-dbgapi.h:3360
Queue supports the HSA AQL protocol.
Definition: amd-dbgapi.h:737
Return the process to which this displaced stepping buffer belongs.
Definition: amd-dbgapi.h:4335
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:7033
A wave on the queue had a memory violation.
Definition: amd-dbgapi.h:2854
Total number of Execution Units (EUs) available in the agent.
Definition: amd-dbgapi.h:2505
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_agent_get_info(amd_dbgapi_agent_id_t agent_id, amd_dbgapi_agent_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_67
Query information about an agent.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_unfreeze(amd_dbgapi_process_id_t process_id) AMD_DBGAPI_VERSION_0_76
Unfreeze the process identified by process_id.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_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:973
amd_dbgapi_os_queue_type_t
Native operating system queue type.
Definition: amd-dbgapi.h:728
amd_dbgapi_resume_mode_t
The mode in which to resuming the execution of a wave.
Definition: amd-dbgapi.h:4040
size_t size
Size, in bytes, of the buffer pointed by amd_dbgapi_core_state_data_t::data.
Definition: amd-dbgapi.h:1715
A dispatch packet on the queue has a NULL code address.
Definition: amd-dbgapi.h:2878
Return the native operating system process handle.
Definition: amd-dbgapi.h:7241
amd_dbgapi_status_t
AMD debugger API status codes.
Definition: amd-dbgapi.h:765
Return the current program counter value of the wave.
Definition: amd-dbgapi.h:3584
The agent handle is invalid.
Definition: amd-dbgapi.h:879
The base address of the created watchpoint.
Definition: amd-dbgapi.h:4591
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_initialize(amd_dbgapi_callbacks_t *callbacks) AMD_DBGAPI_VERSION_0_76
Initialize the library.
Return the AMD GPU DWARF address class number for the address class&#39; architecture.
Definition: amd-dbgapi.h:5698
The architecture handle is invalid.
Definition: amd-dbgapi.h:854
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_set_progress(amd_dbgapi_process_id_t process_id, amd_dbgapi_progress_t progress) AMD_DBGAPI_VERSION_0_76
Set the progress required for a process.
Leave execution halted.
Definition: amd-dbgapi.h:7167
At least one bit of the register value is readonly.
Definition: amd-dbgapi.h:4988
Opaque architecture handle.
Definition: amd-dbgapi.h:1183
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_write_register(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_register_id_t register_id, amd_dbgapi_size_t offset, amd_dbgapi_size_t value_size, const void *value) AMD_DBGAPI_VERSION_0_76
Write a register.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_architecture_register_list(amd_dbgapi_architecture_id_t architecture_id, size_t *register_count, amd_dbgapi_register_id_t **registers) AMD_DBGAPI_VERSION_0_54
Report the list of registers supported by the architecture.
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_remove_watchpoint(amd_dbgapi_watchpoint_id_t watchpoint_id) AMD_DBGAPI_VERSION_0_76
Remove a hardware data watchpoint previously set by amd_dbgapi_set_watchpoint.
The wave stopped due to triggering an enabled floating point underflow exception. ...
Definition: amd-dbgapi.h:3768
Return the queue type.
Definition: amd-dbgapi.h:2708
amd_dbgapi_wave_info_t
Wave queries that are supported by amd_dbgapi_wave_get_info.
Definition: amd-dbgapi.h:3512
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:5660
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_wave_resume(amd_dbgapi_wave_id_t wave_id, amd_dbgapi_resume_mode_t resume_mode, amd_dbgapi_exceptions_t exceptions) AMD_DBGAPI_VERSION_0_76
Resume execution of a stopped wave.
Return the queue state.
Definition: amd-dbgapi.h:2713
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:3699
Return the process to which this agent belongs.
Definition: amd-dbgapi.h:2461
Reading or writing the segment address depends on the agent.
Definition: amd-dbgapi.h:6218
A packet on the queue has an invalid vendor code.
Definition: amd-dbgapi.h:2894
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:2802
struct amd_dbgapi_symbolizer_id_s * amd_dbgapi_symbolizer_id_t
Opaque client symbolizer handle.
Definition: amd-dbgapi.h:1336
An error occurred while trying to access memory in the inferior.
Definition: amd-dbgapi.h:957
A generic error has occurred.
Definition: amd-dbgapi.h:774
A dispatch packet on the queue has an invalid group segment size.
Definition: amd-dbgapi.h:2874
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_process_freeze(amd_dbgapi_process_id_t process_id) AMD_DBGAPI_VERSION_0_76
Freeze the process identified by process_id.
The process is already attached to the given inferior process.
Definition: amd-dbgapi.h:850
struct amd_dbgapi_client_process_s * amd_dbgapi_client_process_id_t
Opaque client process handle.
Definition: amd-dbgapi.h:1670
amd_dbgapi_displaced_stepping_info_t
Displaced stepping queries that are supported by amd_dbgapi_displaced_stepping_id_t.
Definition: amd-dbgapi.h:4329
Dispatch has no barrier.
Definition: amd-dbgapi.h:3218
The wave stopped due to executing an illegal instruction.
Definition: amd-dbgapi.h:3878
amd_dbgapi_watchpoint_share_kind_t
The way watchpoints are shared between processes.
Definition: amd-dbgapi.h:4648
The dispatch handle is invalid.
Definition: amd-dbgapi.h:887
amd_dbgapi_instruction_kind_t
The kinds of instruction classifications.
Definition: amd-dbgapi.h:1444
Read, write, or read-modify-write access by load, store, or atomic instructions.
Definition: amd-dbgapi.h:4693
Return the watchpoint(s) the wave triggered.
Definition: amd-dbgapi.h:3538
A packet on the queue has an unsupported code.
Definition: amd-dbgapi.h:2882
struct amd_dbgapi_client_thread_s * amd_dbgapi_client_thread_id_t
Opaque client thread handle.
Definition: amd-dbgapi.h:7179
Return the register name.
Definition: amd-dbgapi.h:5024
The wave workgroup coordinate in the dispatch grid dimensions.
Definition: amd-dbgapi.h:3603
Return if the architectures of all the agents of a process support controlling memory precision...
Definition: amd-dbgapi.h:1756
Print fatal error, warning, info, API tracing, and verbose messages.
Definition: amd-dbgapi.h:7037
The queue handle is invalid.
Definition: amd-dbgapi.h:883
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:7393
The wave stopped due to triggering an enabled integer divide by zero exception.
Definition: amd-dbgapi.h:3792
PCI device ID of the agent.
Definition: amd-dbgapi.h:2500
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:5090
amd_dbgapi_dispatch_info_t
Dispatch queries that are supported by amd_dbgapi_dispatch_get_info.
Definition: amd-dbgapi.h:3067
amd_dbgapi_endianness_t
Byte endianness encoding.
Definition: amd-dbgapi.h:1696
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_dispatch_get_info(amd_dbgapi_dispatch_id_t dispatch_id, amd_dbgapi_dispatch_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_54
Query information about a dispatch.
amd_dbgapi_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_76
Query information about a process.
#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:558
The wave stopped after causing a hardware fatal halt.
Definition: amd-dbgapi.h:3898
The wave cannot be resumed in the manner requested due to displaced stepping restrictions.
Definition: amd-dbgapi.h:925
Opaque breakpoint handle.
Definition: amd-dbgapi.h:7086
Return the current execution mask of the wave.
Definition: amd-dbgapi.h:3592
amd_dbgapi_status_t AMD_DBGAPI amd_dbgapi_register_get_info(amd_dbgapi_register_id_t register_id, amd_dbgapi_register_info_t query, size_t value_size, void *value) AMD_DBGAPI_VERSION_0_70
Query information about a register.