triton-windows 3.1.0.post17__cp39-cp39-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of triton-windows might be problematic. Click here for more details.

Files changed (248) hide show
  1. triton/_C/libtriton.pyd +0 -0
  2. triton/__init__.py +73 -0
  3. triton/backends/__init__.py +50 -0
  4. triton/backends/amd/compiler.py +262 -0
  5. triton/backends/amd/driver.c +211 -0
  6. triton/backends/amd/driver.py +497 -0
  7. triton/backends/amd/include/hip/amd_detail/amd_channel_descriptor.h +358 -0
  8. triton/backends/amd/include/hip/amd_detail/amd_device_functions.h +1031 -0
  9. triton/backends/amd/include/hip/amd_detail/amd_hip_atomic.h +1612 -0
  10. triton/backends/amd/include/hip/amd_detail/amd_hip_bf16.h +1337 -0
  11. triton/backends/amd/include/hip/amd_detail/amd_hip_bfloat16.h +293 -0
  12. triton/backends/amd/include/hip/amd_detail/amd_hip_common.h +32 -0
  13. triton/backends/amd/include/hip/amd_detail/amd_hip_complex.h +174 -0
  14. triton/backends/amd/include/hip/amd_detail/amd_hip_cooperative_groups.h +829 -0
  15. triton/backends/amd/include/hip/amd_detail/amd_hip_fp16.h +1809 -0
  16. triton/backends/amd/include/hip/amd_detail/amd_hip_gl_interop.h +108 -0
  17. triton/backends/amd/include/hip/amd_detail/amd_hip_math_constants.h +124 -0
  18. triton/backends/amd/include/hip/amd_detail/amd_hip_runtime.h +405 -0
  19. triton/backends/amd/include/hip/amd_detail/amd_hip_runtime_pt_api.h +196 -0
  20. triton/backends/amd/include/hip/amd_detail/amd_hip_unsafe_atomics.h +565 -0
  21. triton/backends/amd/include/hip/amd_detail/amd_hip_vector_types.h +2226 -0
  22. triton/backends/amd/include/hip/amd_detail/amd_math_functions.h +104 -0
  23. triton/backends/amd/include/hip/amd_detail/amd_surface_functions.h +244 -0
  24. triton/backends/amd/include/hip/amd_detail/amd_warp_functions.h +494 -0
  25. triton/backends/amd/include/hip/amd_detail/concepts.hpp +30 -0
  26. triton/backends/amd/include/hip/amd_detail/device_library_decls.h +133 -0
  27. triton/backends/amd/include/hip/amd_detail/functional_grid_launch.hpp +218 -0
  28. triton/backends/amd/include/hip/amd_detail/grid_launch.h +67 -0
  29. triton/backends/amd/include/hip/amd_detail/grid_launch.hpp +50 -0
  30. triton/backends/amd/include/hip/amd_detail/grid_launch_GGL.hpp +26 -0
  31. triton/backends/amd/include/hip/amd_detail/helpers.hpp +137 -0
  32. triton/backends/amd/include/hip/amd_detail/hip_api_trace.hpp +1350 -0
  33. triton/backends/amd/include/hip/amd_detail/hip_assert.h +101 -0
  34. triton/backends/amd/include/hip/amd_detail/hip_cooperative_groups_helper.h +242 -0
  35. triton/backends/amd/include/hip/amd_detail/hip_fp16_gcc.h +254 -0
  36. triton/backends/amd/include/hip/amd_detail/hip_fp16_math_fwd.h +96 -0
  37. triton/backends/amd/include/hip/amd_detail/hip_ldg.h +100 -0
  38. triton/backends/amd/include/hip/amd_detail/hip_prof_str.h +10169 -0
  39. triton/backends/amd/include/hip/amd_detail/hip_runtime_prof.h +77 -0
  40. triton/backends/amd/include/hip/amd_detail/host_defines.h +180 -0
  41. triton/backends/amd/include/hip/amd_detail/hsa_helpers.hpp +102 -0
  42. triton/backends/amd/include/hip/amd_detail/macro_based_grid_launch.hpp +798 -0
  43. triton/backends/amd/include/hip/amd_detail/math_fwd.h +698 -0
  44. triton/backends/amd/include/hip/amd_detail/ockl_image.h +177 -0
  45. triton/backends/amd/include/hip/amd_detail/program_state.hpp +107 -0
  46. triton/backends/amd/include/hip/amd_detail/texture_fetch_functions.h +491 -0
  47. triton/backends/amd/include/hip/amd_detail/texture_indirect_functions.h +478 -0
  48. triton/backends/amd/include/hip/channel_descriptor.h +39 -0
  49. triton/backends/amd/include/hip/device_functions.h +38 -0
  50. triton/backends/amd/include/hip/driver_types.h +468 -0
  51. triton/backends/amd/include/hip/hip_bf16.h +36 -0
  52. triton/backends/amd/include/hip/hip_bfloat16.h +44 -0
  53. triton/backends/amd/include/hip/hip_common.h +100 -0
  54. triton/backends/amd/include/hip/hip_complex.h +38 -0
  55. triton/backends/amd/include/hip/hip_cooperative_groups.h +46 -0
  56. triton/backends/amd/include/hip/hip_deprecated.h +95 -0
  57. triton/backends/amd/include/hip/hip_ext.h +159 -0
  58. triton/backends/amd/include/hip/hip_fp16.h +36 -0
  59. triton/backends/amd/include/hip/hip_gl_interop.h +32 -0
  60. triton/backends/amd/include/hip/hip_hcc.h +24 -0
  61. triton/backends/amd/include/hip/hip_math_constants.h +36 -0
  62. triton/backends/amd/include/hip/hip_profile.h +27 -0
  63. triton/backends/amd/include/hip/hip_runtime.h +75 -0
  64. triton/backends/amd/include/hip/hip_runtime_api.h +8919 -0
  65. triton/backends/amd/include/hip/hip_texture_types.h +29 -0
  66. triton/backends/amd/include/hip/hip_vector_types.h +41 -0
  67. triton/backends/amd/include/hip/hip_version.h +17 -0
  68. triton/backends/amd/include/hip/hiprtc.h +421 -0
  69. triton/backends/amd/include/hip/library_types.h +78 -0
  70. triton/backends/amd/include/hip/math_functions.h +42 -0
  71. triton/backends/amd/include/hip/surface_types.h +63 -0
  72. triton/backends/amd/include/hip/texture_types.h +194 -0
  73. triton/backends/amd/include/hsa/Brig.h +1131 -0
  74. triton/backends/amd/include/hsa/amd_hsa_common.h +91 -0
  75. triton/backends/amd/include/hsa/amd_hsa_elf.h +435 -0
  76. triton/backends/amd/include/hsa/amd_hsa_kernel_code.h +269 -0
  77. triton/backends/amd/include/hsa/amd_hsa_queue.h +109 -0
  78. triton/backends/amd/include/hsa/amd_hsa_signal.h +80 -0
  79. triton/backends/amd/include/hsa/hsa.h +5729 -0
  80. triton/backends/amd/include/hsa/hsa_amd_tool.h +91 -0
  81. triton/backends/amd/include/hsa/hsa_api_trace.h +566 -0
  82. triton/backends/amd/include/hsa/hsa_ext_amd.h +3090 -0
  83. triton/backends/amd/include/hsa/hsa_ext_finalize.h +531 -0
  84. triton/backends/amd/include/hsa/hsa_ext_image.h +1454 -0
  85. triton/backends/amd/include/hsa/hsa_ven_amd_aqlprofile.h +488 -0
  86. triton/backends/amd/include/hsa/hsa_ven_amd_loader.h +667 -0
  87. triton/backends/amd/include/roctracer/ext/prof_protocol.h +107 -0
  88. triton/backends/amd/include/roctracer/hip_ostream_ops.h +4435 -0
  89. triton/backends/amd/include/roctracer/hsa_ostream_ops.h +1467 -0
  90. triton/backends/amd/include/roctracer/hsa_prof_str.h +3027 -0
  91. triton/backends/amd/include/roctracer/roctracer.h +779 -0
  92. triton/backends/amd/include/roctracer/roctracer_ext.h +81 -0
  93. triton/backends/amd/include/roctracer/roctracer_hcc.h +24 -0
  94. triton/backends/amd/include/roctracer/roctracer_hip.h +37 -0
  95. triton/backends/amd/include/roctracer/roctracer_hsa.h +112 -0
  96. triton/backends/amd/include/roctracer/roctracer_plugin.h +137 -0
  97. triton/backends/amd/include/roctracer/roctracer_roctx.h +67 -0
  98. triton/backends/amd/include/roctracer/roctx.h +229 -0
  99. triton/backends/amd/lib/ockl.bc +0 -0
  100. triton/backends/amd/lib/ocml.bc +0 -0
  101. triton/backends/compiler.py +76 -0
  102. triton/backends/driver.py +34 -0
  103. triton/backends/nvidia/__init__.py +0 -0
  104. triton/backends/nvidia/bin/ptxas.exe +0 -0
  105. triton/backends/nvidia/compiler.py +347 -0
  106. triton/backends/nvidia/driver.c +451 -0
  107. triton/backends/nvidia/driver.py +430 -0
  108. triton/backends/nvidia/include/cuda.h +24359 -0
  109. triton/backends/nvidia/lib/libdevice.10.bc +0 -0
  110. triton/backends/nvidia/lib/x64/cuda.lib +0 -0
  111. triton/compiler/__init__.py +4 -0
  112. triton/compiler/code_generator.py +1302 -0
  113. triton/compiler/compiler.py +416 -0
  114. triton/compiler/errors.py +51 -0
  115. triton/compiler/make_launcher.py +0 -0
  116. triton/errors.py +5 -0
  117. triton/language/__init__.py +284 -0
  118. triton/language/core.py +2621 -0
  119. triton/language/extra/__init__.py +4 -0
  120. triton/language/extra/cuda/__init__.py +8 -0
  121. triton/language/extra/cuda/libdevice.py +1629 -0
  122. triton/language/extra/cuda/utils.py +109 -0
  123. triton/language/extra/hip/__init__.py +3 -0
  124. triton/language/extra/hip/libdevice.py +468 -0
  125. triton/language/extra/libdevice.py +1213 -0
  126. triton/language/math.py +250 -0
  127. triton/language/random.py +207 -0
  128. triton/language/semantic.py +1621 -0
  129. triton/language/standard.py +441 -0
  130. triton/ops/__init__.py +7 -0
  131. triton/ops/blocksparse/__init__.py +7 -0
  132. triton/ops/blocksparse/matmul.py +432 -0
  133. triton/ops/blocksparse/softmax.py +228 -0
  134. triton/ops/cross_entropy.py +96 -0
  135. triton/ops/flash_attention.py +466 -0
  136. triton/ops/matmul.py +219 -0
  137. triton/ops/matmul_perf_model.py +171 -0
  138. triton/runtime/__init__.py +23 -0
  139. triton/runtime/autotuner.py +361 -0
  140. triton/runtime/build.py +129 -0
  141. triton/runtime/cache.py +289 -0
  142. triton/runtime/driver.py +60 -0
  143. triton/runtime/errors.py +26 -0
  144. triton/runtime/interpreter.py +1127 -0
  145. triton/runtime/jit.py +956 -0
  146. triton/runtime/tcc/include/_mingw.h +170 -0
  147. triton/runtime/tcc/include/assert.h +57 -0
  148. triton/runtime/tcc/include/conio.h +409 -0
  149. triton/runtime/tcc/include/ctype.h +281 -0
  150. triton/runtime/tcc/include/dir.h +31 -0
  151. triton/runtime/tcc/include/direct.h +68 -0
  152. triton/runtime/tcc/include/dirent.h +135 -0
  153. triton/runtime/tcc/include/dos.h +55 -0
  154. triton/runtime/tcc/include/errno.h +75 -0
  155. triton/runtime/tcc/include/excpt.h +123 -0
  156. triton/runtime/tcc/include/fcntl.h +52 -0
  157. triton/runtime/tcc/include/fenv.h +108 -0
  158. triton/runtime/tcc/include/float.h +57 -0
  159. triton/runtime/tcc/include/inttypes.h +297 -0
  160. triton/runtime/tcc/include/io.h +418 -0
  161. triton/runtime/tcc/include/limits.h +111 -0
  162. triton/runtime/tcc/include/locale.h +91 -0
  163. triton/runtime/tcc/include/malloc.h +181 -0
  164. triton/runtime/tcc/include/math.h +737 -0
  165. triton/runtime/tcc/include/mem.h +13 -0
  166. triton/runtime/tcc/include/memory.h +40 -0
  167. triton/runtime/tcc/include/process.h +176 -0
  168. triton/runtime/tcc/include/sec_api/conio_s.h +42 -0
  169. triton/runtime/tcc/include/sec_api/crtdbg_s.h +19 -0
  170. triton/runtime/tcc/include/sec_api/io_s.h +33 -0
  171. triton/runtime/tcc/include/sec_api/mbstring_s.h +52 -0
  172. triton/runtime/tcc/include/sec_api/search_s.h +25 -0
  173. triton/runtime/tcc/include/sec_api/stdio_s.h +145 -0
  174. triton/runtime/tcc/include/sec_api/stdlib_s.h +67 -0
  175. triton/runtime/tcc/include/sec_api/stralign_s.h +30 -0
  176. triton/runtime/tcc/include/sec_api/string_s.h +41 -0
  177. triton/runtime/tcc/include/sec_api/sys/timeb_s.h +34 -0
  178. triton/runtime/tcc/include/sec_api/tchar_s.h +266 -0
  179. triton/runtime/tcc/include/sec_api/time_s.h +61 -0
  180. triton/runtime/tcc/include/sec_api/wchar_s.h +128 -0
  181. triton/runtime/tcc/include/setjmp.h +160 -0
  182. triton/runtime/tcc/include/share.h +28 -0
  183. triton/runtime/tcc/include/signal.h +63 -0
  184. triton/runtime/tcc/include/stdarg.h +79 -0
  185. triton/runtime/tcc/include/stdbool.h +11 -0
  186. triton/runtime/tcc/include/stddef.h +54 -0
  187. triton/runtime/tcc/include/stdint.h +212 -0
  188. triton/runtime/tcc/include/stdio.h +429 -0
  189. triton/runtime/tcc/include/stdlib.h +580 -0
  190. triton/runtime/tcc/include/string.h +164 -0
  191. triton/runtime/tcc/include/sys/fcntl.h +13 -0
  192. triton/runtime/tcc/include/sys/file.h +14 -0
  193. triton/runtime/tcc/include/sys/locking.h +30 -0
  194. triton/runtime/tcc/include/sys/stat.h +290 -0
  195. triton/runtime/tcc/include/sys/time.h +69 -0
  196. triton/runtime/tcc/include/sys/timeb.h +133 -0
  197. triton/runtime/tcc/include/sys/types.h +118 -0
  198. triton/runtime/tcc/include/sys/unistd.h +14 -0
  199. triton/runtime/tcc/include/sys/utime.h +146 -0
  200. triton/runtime/tcc/include/tcc/tcc_libm.h +201 -0
  201. triton/runtime/tcc/include/tcclib.h +80 -0
  202. triton/runtime/tcc/include/tchar.h +1102 -0
  203. triton/runtime/tcc/include/time.h +287 -0
  204. triton/runtime/tcc/include/vadefs.h +11 -0
  205. triton/runtime/tcc/include/values.h +4 -0
  206. triton/runtime/tcc/include/varargs.h +12 -0
  207. triton/runtime/tcc/include/wchar.h +873 -0
  208. triton/runtime/tcc/include/wctype.h +172 -0
  209. triton/runtime/tcc/include/winapi/basetsd.h +149 -0
  210. triton/runtime/tcc/include/winapi/basetyps.h +85 -0
  211. triton/runtime/tcc/include/winapi/guiddef.h +156 -0
  212. triton/runtime/tcc/include/winapi/poppack.h +8 -0
  213. triton/runtime/tcc/include/winapi/pshpack1.h +8 -0
  214. triton/runtime/tcc/include/winapi/pshpack2.h +8 -0
  215. triton/runtime/tcc/include/winapi/pshpack4.h +8 -0
  216. triton/runtime/tcc/include/winapi/pshpack8.h +8 -0
  217. triton/runtime/tcc/include/winapi/winbase.h +2951 -0
  218. triton/runtime/tcc/include/winapi/wincon.h +301 -0
  219. triton/runtime/tcc/include/winapi/windef.h +293 -0
  220. triton/runtime/tcc/include/winapi/windows.h +127 -0
  221. triton/runtime/tcc/include/winapi/winerror.h +3166 -0
  222. triton/runtime/tcc/include/winapi/wingdi.h +4080 -0
  223. triton/runtime/tcc/include/winapi/winnt.h +5835 -0
  224. triton/runtime/tcc/include/winapi/winreg.h +272 -0
  225. triton/runtime/tcc/include/winapi/winuser.h +5651 -0
  226. triton/runtime/tcc/include/winapi/winver.h +160 -0
  227. triton/runtime/tcc/lib/cuda.def +697 -0
  228. triton/runtime/tcc/lib/gdi32.def +337 -0
  229. triton/runtime/tcc/lib/kernel32.def +770 -0
  230. triton/runtime/tcc/lib/libtcc1-64.a +0 -0
  231. triton/runtime/tcc/lib/msvcrt.def +1399 -0
  232. triton/runtime/tcc/lib/python3.def +810 -0
  233. triton/runtime/tcc/lib/user32.def +658 -0
  234. triton/runtime/tcc/libtcc.dll +0 -0
  235. triton/runtime/tcc/tcc.exe +0 -0
  236. triton/testing.py +496 -0
  237. triton/tools/__init__.py +0 -0
  238. triton/tools/build_extern.py +365 -0
  239. triton/tools/compile.c +67 -0
  240. triton/tools/compile.h +14 -0
  241. triton/tools/compile.py +145 -0
  242. triton/tools/disasm.py +142 -0
  243. triton/tools/link.py +322 -0
  244. triton/windows_utils.py +373 -0
  245. triton_windows-3.1.0.post17.dist-info/METADATA +41 -0
  246. triton_windows-3.1.0.post17.dist-info/RECORD +248 -0
  247. triton_windows-3.1.0.post17.dist-info/WHEEL +5 -0
  248. triton_windows-3.1.0.post17.dist-info/top_level.txt +14 -0
@@ -0,0 +1,1467 @@
1
+ // automatically generated
2
+ /*
3
+ Copyright (c) 2018 Advanced Micro Devices, Inc. All rights reserved.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
22
+ */
23
+
24
+ #ifndef INC_HSA_OSTREAM_OPS_H_
25
+ #define INC_HSA_OSTREAM_OPS_H_
26
+
27
+ #include "roctracer.h"
28
+
29
+ #ifdef __cplusplus
30
+ #include <iostream>
31
+ #include <iomanip>
32
+ #include <string>
33
+ #include <cstring>
34
+
35
+ namespace roctracer {
36
+ namespace hsa_support {
37
+ static int HSA_depth_max = 1;
38
+ static int HSA_depth_max_cnt = 0;
39
+ static std::string HSA_structs_regex = "";
40
+ // begin ostream ops for HSA
41
+ // basic ostream ops
42
+ namespace detail {
43
+ inline static void print_escaped_string(std::ostream& out, const char *v, size_t len) {
44
+ out << '"';
45
+ for (size_t i = 0; i < len && v[i]; ++i) {
46
+ switch (v[i]) {
47
+ case '\"': out << "\\\""; break;
48
+ case '\\': out << "\\\\"; break;
49
+ case '\b': out << "\\\b"; break;
50
+ case '\f': out << "\\\f"; break;
51
+ case '\n': out << "\\\n"; break;
52
+ case '\r': out << "\\\r"; break;
53
+ case '\t': out << "\\\t"; break;
54
+ default:
55
+ if (std::isprint((unsigned char)v[i])) std::operator<<(out, v[i]);
56
+ else {
57
+ std::ios_base::fmtflags flags(out.flags());
58
+ out << "\\x" << std::setfill('0') << std::setw(2) << std::hex << (unsigned int)(unsigned char)v[i];
59
+ out.flags(flags);
60
+ }
61
+ break;
62
+ }
63
+ }
64
+ out << '"';
65
+ }
66
+
67
+ template <typename T>
68
+ inline static std::ostream& operator<<(std::ostream& out, const T& v) {
69
+ using std::operator<<;
70
+ static bool recursion = false;
71
+ if (recursion == false) { recursion = true; out << v; recursion = false; }
72
+ return out;
73
+ }
74
+
75
+ inline static std::ostream &operator<<(std::ostream &out, const unsigned char &v) {
76
+ out << (unsigned int)v;
77
+ return out;
78
+ }
79
+
80
+ inline static std::ostream &operator<<(std::ostream &out, const char &v) {
81
+ out << (unsigned char)v;
82
+ return out;
83
+ }
84
+
85
+ template <size_t N>
86
+ inline static std::ostream &operator<<(std::ostream &out, const char (&v)[N]) {
87
+ print_escaped_string(out, v, N);
88
+ return out;
89
+ }
90
+
91
+ inline static std::ostream &operator<<(std::ostream &out, const char *v) {
92
+ print_escaped_string(out, v, strlen(v));
93
+ return out;
94
+ }
95
+ // End of basic ostream ops
96
+
97
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_dim3_t& v)
98
+ {
99
+ std::operator<<(out, '{');
100
+ HSA_depth_max_cnt++;
101
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
102
+ if (std::string("hsa_dim3_t::z").find(HSA_structs_regex) != std::string::npos) {
103
+ std::operator<<(out, "z=");
104
+ roctracer::hsa_support::detail::operator<<(out, v.z);
105
+ std::operator<<(out, ", ");
106
+ }
107
+ if (std::string("hsa_dim3_t::y").find(HSA_structs_regex) != std::string::npos) {
108
+ std::operator<<(out, "y=");
109
+ roctracer::hsa_support::detail::operator<<(out, v.y);
110
+ std::operator<<(out, ", ");
111
+ }
112
+ if (std::string("hsa_dim3_t::x").find(HSA_structs_regex) != std::string::npos) {
113
+ std::operator<<(out, "x=");
114
+ roctracer::hsa_support::detail::operator<<(out, v.x);
115
+ }
116
+ };
117
+ HSA_depth_max_cnt--;
118
+ std::operator<<(out, '}');
119
+ return out;
120
+ }
121
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_agent_t& v)
122
+ {
123
+ std::operator<<(out, '{');
124
+ HSA_depth_max_cnt++;
125
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
126
+ if (std::string("hsa_agent_t::handle").find(HSA_structs_regex) != std::string::npos) {
127
+ std::operator<<(out, "handle=");
128
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
129
+ }
130
+ };
131
+ HSA_depth_max_cnt--;
132
+ std::operator<<(out, '}');
133
+ return out;
134
+ }
135
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_cache_t& v)
136
+ {
137
+ std::operator<<(out, '{');
138
+ HSA_depth_max_cnt++;
139
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
140
+ if (std::string("hsa_cache_t::handle").find(HSA_structs_regex) != std::string::npos) {
141
+ std::operator<<(out, "handle=");
142
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
143
+ }
144
+ };
145
+ HSA_depth_max_cnt--;
146
+ std::operator<<(out, '}');
147
+ return out;
148
+ }
149
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_signal_t& v)
150
+ {
151
+ std::operator<<(out, '{');
152
+ HSA_depth_max_cnt++;
153
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
154
+ if (std::string("hsa_signal_t::handle").find(HSA_structs_regex) != std::string::npos) {
155
+ std::operator<<(out, "handle=");
156
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
157
+ }
158
+ };
159
+ HSA_depth_max_cnt--;
160
+ std::operator<<(out, '}');
161
+ return out;
162
+ }
163
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_signal_group_t& v)
164
+ {
165
+ std::operator<<(out, '{');
166
+ HSA_depth_max_cnt++;
167
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
168
+ if (std::string("hsa_signal_group_t::handle").find(HSA_structs_regex) != std::string::npos) {
169
+ std::operator<<(out, "handle=");
170
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
171
+ }
172
+ };
173
+ HSA_depth_max_cnt--;
174
+ std::operator<<(out, '}');
175
+ return out;
176
+ }
177
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_region_t& v)
178
+ {
179
+ std::operator<<(out, '{');
180
+ HSA_depth_max_cnt++;
181
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
182
+ if (std::string("hsa_region_t::handle").find(HSA_structs_regex) != std::string::npos) {
183
+ std::operator<<(out, "handle=");
184
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
185
+ }
186
+ };
187
+ HSA_depth_max_cnt--;
188
+ std::operator<<(out, '}');
189
+ return out;
190
+ }
191
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_queue_t& v)
192
+ {
193
+ std::operator<<(out, '{');
194
+ HSA_depth_max_cnt++;
195
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
196
+ if (std::string("hsa_queue_t::id").find(HSA_structs_regex) != std::string::npos) {
197
+ std::operator<<(out, "id=");
198
+ roctracer::hsa_support::detail::operator<<(out, v.id);
199
+ std::operator<<(out, ", ");
200
+ }
201
+ if (std::string("hsa_queue_t::reserved1").find(HSA_structs_regex) != std::string::npos) {
202
+ std::operator<<(out, "reserved1=");
203
+ roctracer::hsa_support::detail::operator<<(out, v.reserved1);
204
+ std::operator<<(out, ", ");
205
+ }
206
+ if (std::string("hsa_queue_t::size").find(HSA_structs_regex) != std::string::npos) {
207
+ std::operator<<(out, "size=");
208
+ roctracer::hsa_support::detail::operator<<(out, v.size);
209
+ std::operator<<(out, ", ");
210
+ }
211
+ if (std::string("hsa_queue_t::doorbell_signal").find(HSA_structs_regex) != std::string::npos) {
212
+ std::operator<<(out, "doorbell_signal=");
213
+ roctracer::hsa_support::detail::operator<<(out, v.doorbell_signal);
214
+ std::operator<<(out, ", ");
215
+ }
216
+ if (std::string("hsa_queue_t::features").find(HSA_structs_regex) != std::string::npos) {
217
+ std::operator<<(out, "features=");
218
+ roctracer::hsa_support::detail::operator<<(out, v.features);
219
+ std::operator<<(out, ", ");
220
+ }
221
+ if (std::string("hsa_queue_t::type").find(HSA_structs_regex) != std::string::npos) {
222
+ std::operator<<(out, "type=");
223
+ roctracer::hsa_support::detail::operator<<(out, v.type);
224
+ }
225
+ };
226
+ HSA_depth_max_cnt--;
227
+ std::operator<<(out, '}');
228
+ return out;
229
+ }
230
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_kernel_dispatch_packet_t& v)
231
+ {
232
+ std::operator<<(out, '{');
233
+ HSA_depth_max_cnt++;
234
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
235
+ if (std::string("hsa_kernel_dispatch_packet_t::completion_signal").find(HSA_structs_regex) != std::string::npos) {
236
+ std::operator<<(out, "completion_signal=");
237
+ roctracer::hsa_support::detail::operator<<(out, v.completion_signal);
238
+ std::operator<<(out, ", ");
239
+ }
240
+ if (std::string("hsa_kernel_dispatch_packet_t::reserved2").find(HSA_structs_regex) != std::string::npos) {
241
+ std::operator<<(out, "reserved2=");
242
+ roctracer::hsa_support::detail::operator<<(out, v.reserved2);
243
+ std::operator<<(out, ", ");
244
+ }
245
+ if (std::string("hsa_kernel_dispatch_packet_t::kernel_object").find(HSA_structs_regex) != std::string::npos) {
246
+ std::operator<<(out, "kernel_object=");
247
+ roctracer::hsa_support::detail::operator<<(out, v.kernel_object);
248
+ std::operator<<(out, ", ");
249
+ }
250
+ if (std::string("hsa_kernel_dispatch_packet_t::group_segment_size").find(HSA_structs_regex) != std::string::npos) {
251
+ std::operator<<(out, "group_segment_size=");
252
+ roctracer::hsa_support::detail::operator<<(out, v.group_segment_size);
253
+ std::operator<<(out, ", ");
254
+ }
255
+ if (std::string("hsa_kernel_dispatch_packet_t::private_segment_size").find(HSA_structs_regex) != std::string::npos) {
256
+ std::operator<<(out, "private_segment_size=");
257
+ roctracer::hsa_support::detail::operator<<(out, v.private_segment_size);
258
+ std::operator<<(out, ", ");
259
+ }
260
+ if (std::string("hsa_kernel_dispatch_packet_t::grid_size_z").find(HSA_structs_regex) != std::string::npos) {
261
+ std::operator<<(out, "grid_size_z=");
262
+ roctracer::hsa_support::detail::operator<<(out, v.grid_size_z);
263
+ std::operator<<(out, ", ");
264
+ }
265
+ if (std::string("hsa_kernel_dispatch_packet_t::grid_size_y").find(HSA_structs_regex) != std::string::npos) {
266
+ std::operator<<(out, "grid_size_y=");
267
+ roctracer::hsa_support::detail::operator<<(out, v.grid_size_y);
268
+ std::operator<<(out, ", ");
269
+ }
270
+ if (std::string("hsa_kernel_dispatch_packet_t::grid_size_x").find(HSA_structs_regex) != std::string::npos) {
271
+ std::operator<<(out, "grid_size_x=");
272
+ roctracer::hsa_support::detail::operator<<(out, v.grid_size_x);
273
+ std::operator<<(out, ", ");
274
+ }
275
+ if (std::string("hsa_kernel_dispatch_packet_t::reserved0").find(HSA_structs_regex) != std::string::npos) {
276
+ std::operator<<(out, "reserved0=");
277
+ roctracer::hsa_support::detail::operator<<(out, v.reserved0);
278
+ std::operator<<(out, ", ");
279
+ }
280
+ if (std::string("hsa_kernel_dispatch_packet_t::workgroup_size_z").find(HSA_structs_regex) != std::string::npos) {
281
+ std::operator<<(out, "workgroup_size_z=");
282
+ roctracer::hsa_support::detail::operator<<(out, v.workgroup_size_z);
283
+ std::operator<<(out, ", ");
284
+ }
285
+ if (std::string("hsa_kernel_dispatch_packet_t::workgroup_size_y").find(HSA_structs_regex) != std::string::npos) {
286
+ std::operator<<(out, "workgroup_size_y=");
287
+ roctracer::hsa_support::detail::operator<<(out, v.workgroup_size_y);
288
+ std::operator<<(out, ", ");
289
+ }
290
+ if (std::string("hsa_kernel_dispatch_packet_t::workgroup_size_x").find(HSA_structs_regex) != std::string::npos) {
291
+ std::operator<<(out, "workgroup_size_x=");
292
+ roctracer::hsa_support::detail::operator<<(out, v.workgroup_size_x);
293
+ std::operator<<(out, ", ");
294
+ }
295
+ if (std::string("hsa_kernel_dispatch_packet_t::setup").find(HSA_structs_regex) != std::string::npos) {
296
+ std::operator<<(out, "setup=");
297
+ roctracer::hsa_support::detail::operator<<(out, v.setup);
298
+ std::operator<<(out, ", ");
299
+ }
300
+ if (std::string("hsa_kernel_dispatch_packet_t::header").find(HSA_structs_regex) != std::string::npos) {
301
+ std::operator<<(out, "header=");
302
+ roctracer::hsa_support::detail::operator<<(out, v.header);
303
+ }
304
+ };
305
+ HSA_depth_max_cnt--;
306
+ std::operator<<(out, '}');
307
+ return out;
308
+ }
309
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_agent_dispatch_packet_t& v)
310
+ {
311
+ std::operator<<(out, '{');
312
+ HSA_depth_max_cnt++;
313
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
314
+ if (std::string("hsa_agent_dispatch_packet_t::completion_signal").find(HSA_structs_regex) != std::string::npos) {
315
+ std::operator<<(out, "completion_signal=");
316
+ roctracer::hsa_support::detail::operator<<(out, v.completion_signal);
317
+ std::operator<<(out, ", ");
318
+ }
319
+ if (std::string("hsa_agent_dispatch_packet_t::reserved2").find(HSA_structs_regex) != std::string::npos) {
320
+ std::operator<<(out, "reserved2=");
321
+ roctracer::hsa_support::detail::operator<<(out, v.reserved2);
322
+ std::operator<<(out, ", ");
323
+ }
324
+ if (std::string("hsa_agent_dispatch_packet_t::arg").find(HSA_structs_regex) != std::string::npos) {
325
+ std::operator<<(out, "arg=");
326
+ roctracer::hsa_support::detail::operator<<(out, v.arg);
327
+ std::operator<<(out, ", ");
328
+ }
329
+ if (std::string("hsa_agent_dispatch_packet_t::reserved0").find(HSA_structs_regex) != std::string::npos) {
330
+ std::operator<<(out, "reserved0=");
331
+ roctracer::hsa_support::detail::operator<<(out, v.reserved0);
332
+ std::operator<<(out, ", ");
333
+ }
334
+ if (std::string("hsa_agent_dispatch_packet_t::type").find(HSA_structs_regex) != std::string::npos) {
335
+ std::operator<<(out, "type=");
336
+ roctracer::hsa_support::detail::operator<<(out, v.type);
337
+ std::operator<<(out, ", ");
338
+ }
339
+ if (std::string("hsa_agent_dispatch_packet_t::header").find(HSA_structs_regex) != std::string::npos) {
340
+ std::operator<<(out, "header=");
341
+ roctracer::hsa_support::detail::operator<<(out, v.header);
342
+ }
343
+ };
344
+ HSA_depth_max_cnt--;
345
+ std::operator<<(out, '}');
346
+ return out;
347
+ }
348
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_barrier_and_packet_t& v)
349
+ {
350
+ std::operator<<(out, '{');
351
+ HSA_depth_max_cnt++;
352
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
353
+ if (std::string("hsa_barrier_and_packet_t::completion_signal").find(HSA_structs_regex) != std::string::npos) {
354
+ std::operator<<(out, "completion_signal=");
355
+ roctracer::hsa_support::detail::operator<<(out, v.completion_signal);
356
+ std::operator<<(out, ", ");
357
+ }
358
+ if (std::string("hsa_barrier_and_packet_t::reserved2").find(HSA_structs_regex) != std::string::npos) {
359
+ std::operator<<(out, "reserved2=");
360
+ roctracer::hsa_support::detail::operator<<(out, v.reserved2);
361
+ std::operator<<(out, ", ");
362
+ }
363
+ if (std::string("hsa_barrier_and_packet_t::dep_signal").find(HSA_structs_regex) != std::string::npos) {
364
+ std::operator<<(out, "dep_signal=");
365
+ roctracer::hsa_support::detail::operator<<(out, v.dep_signal);
366
+ std::operator<<(out, ", ");
367
+ }
368
+ if (std::string("hsa_barrier_and_packet_t::reserved1").find(HSA_structs_regex) != std::string::npos) {
369
+ std::operator<<(out, "reserved1=");
370
+ roctracer::hsa_support::detail::operator<<(out, v.reserved1);
371
+ std::operator<<(out, ", ");
372
+ }
373
+ if (std::string("hsa_barrier_and_packet_t::reserved0").find(HSA_structs_regex) != std::string::npos) {
374
+ std::operator<<(out, "reserved0=");
375
+ roctracer::hsa_support::detail::operator<<(out, v.reserved0);
376
+ std::operator<<(out, ", ");
377
+ }
378
+ if (std::string("hsa_barrier_and_packet_t::header").find(HSA_structs_regex) != std::string::npos) {
379
+ std::operator<<(out, "header=");
380
+ roctracer::hsa_support::detail::operator<<(out, v.header);
381
+ }
382
+ };
383
+ HSA_depth_max_cnt--;
384
+ std::operator<<(out, '}');
385
+ return out;
386
+ }
387
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_barrier_or_packet_t& v)
388
+ {
389
+ std::operator<<(out, '{');
390
+ HSA_depth_max_cnt++;
391
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
392
+ if (std::string("hsa_barrier_or_packet_t::completion_signal").find(HSA_structs_regex) != std::string::npos) {
393
+ std::operator<<(out, "completion_signal=");
394
+ roctracer::hsa_support::detail::operator<<(out, v.completion_signal);
395
+ std::operator<<(out, ", ");
396
+ }
397
+ if (std::string("hsa_barrier_or_packet_t::reserved2").find(HSA_structs_regex) != std::string::npos) {
398
+ std::operator<<(out, "reserved2=");
399
+ roctracer::hsa_support::detail::operator<<(out, v.reserved2);
400
+ std::operator<<(out, ", ");
401
+ }
402
+ if (std::string("hsa_barrier_or_packet_t::dep_signal").find(HSA_structs_regex) != std::string::npos) {
403
+ std::operator<<(out, "dep_signal=");
404
+ roctracer::hsa_support::detail::operator<<(out, v.dep_signal);
405
+ std::operator<<(out, ", ");
406
+ }
407
+ if (std::string("hsa_barrier_or_packet_t::reserved1").find(HSA_structs_regex) != std::string::npos) {
408
+ std::operator<<(out, "reserved1=");
409
+ roctracer::hsa_support::detail::operator<<(out, v.reserved1);
410
+ std::operator<<(out, ", ");
411
+ }
412
+ if (std::string("hsa_barrier_or_packet_t::reserved0").find(HSA_structs_regex) != std::string::npos) {
413
+ std::operator<<(out, "reserved0=");
414
+ roctracer::hsa_support::detail::operator<<(out, v.reserved0);
415
+ std::operator<<(out, ", ");
416
+ }
417
+ if (std::string("hsa_barrier_or_packet_t::header").find(HSA_structs_regex) != std::string::npos) {
418
+ std::operator<<(out, "header=");
419
+ roctracer::hsa_support::detail::operator<<(out, v.header);
420
+ }
421
+ };
422
+ HSA_depth_max_cnt--;
423
+ std::operator<<(out, '}');
424
+ return out;
425
+ }
426
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_isa_t& v)
427
+ {
428
+ std::operator<<(out, '{');
429
+ HSA_depth_max_cnt++;
430
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
431
+ if (std::string("hsa_isa_t::handle").find(HSA_structs_regex) != std::string::npos) {
432
+ std::operator<<(out, "handle=");
433
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
434
+ }
435
+ };
436
+ HSA_depth_max_cnt--;
437
+ std::operator<<(out, '}');
438
+ return out;
439
+ }
440
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_wavefront_t& v)
441
+ {
442
+ std::operator<<(out, '{');
443
+ HSA_depth_max_cnt++;
444
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
445
+ if (std::string("hsa_wavefront_t::handle").find(HSA_structs_regex) != std::string::npos) {
446
+ std::operator<<(out, "handle=");
447
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
448
+ }
449
+ };
450
+ HSA_depth_max_cnt--;
451
+ std::operator<<(out, '}');
452
+ return out;
453
+ }
454
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_code_object_reader_t& v)
455
+ {
456
+ std::operator<<(out, '{');
457
+ HSA_depth_max_cnt++;
458
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
459
+ if (std::string("hsa_code_object_reader_t::handle").find(HSA_structs_regex) != std::string::npos) {
460
+ std::operator<<(out, "handle=");
461
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
462
+ }
463
+ };
464
+ HSA_depth_max_cnt--;
465
+ std::operator<<(out, '}');
466
+ return out;
467
+ }
468
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_executable_t& v)
469
+ {
470
+ std::operator<<(out, '{');
471
+ HSA_depth_max_cnt++;
472
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
473
+ if (std::string("hsa_executable_t::handle").find(HSA_structs_regex) != std::string::npos) {
474
+ std::operator<<(out, "handle=");
475
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
476
+ }
477
+ };
478
+ HSA_depth_max_cnt--;
479
+ std::operator<<(out, '}');
480
+ return out;
481
+ }
482
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_loaded_code_object_t& v)
483
+ {
484
+ std::operator<<(out, '{');
485
+ HSA_depth_max_cnt++;
486
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
487
+ if (std::string("hsa_loaded_code_object_t::handle").find(HSA_structs_regex) != std::string::npos) {
488
+ std::operator<<(out, "handle=");
489
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
490
+ }
491
+ };
492
+ HSA_depth_max_cnt--;
493
+ std::operator<<(out, '}');
494
+ return out;
495
+ }
496
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_executable_symbol_t& v)
497
+ {
498
+ std::operator<<(out, '{');
499
+ HSA_depth_max_cnt++;
500
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
501
+ if (std::string("hsa_executable_symbol_t::handle").find(HSA_structs_regex) != std::string::npos) {
502
+ std::operator<<(out, "handle=");
503
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
504
+ }
505
+ };
506
+ HSA_depth_max_cnt--;
507
+ std::operator<<(out, '}');
508
+ return out;
509
+ }
510
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_code_object_t& v)
511
+ {
512
+ std::operator<<(out, '{');
513
+ HSA_depth_max_cnt++;
514
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
515
+ if (std::string("hsa_code_object_t::handle").find(HSA_structs_regex) != std::string::npos) {
516
+ std::operator<<(out, "handle=");
517
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
518
+ }
519
+ };
520
+ HSA_depth_max_cnt--;
521
+ std::operator<<(out, '}');
522
+ return out;
523
+ }
524
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_callback_data_t& v)
525
+ {
526
+ std::operator<<(out, '{');
527
+ HSA_depth_max_cnt++;
528
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
529
+ if (std::string("hsa_callback_data_t::handle").find(HSA_structs_regex) != std::string::npos) {
530
+ std::operator<<(out, "handle=");
531
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
532
+ }
533
+ };
534
+ HSA_depth_max_cnt--;
535
+ std::operator<<(out, '}');
536
+ return out;
537
+ }
538
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_code_symbol_t& v)
539
+ {
540
+ std::operator<<(out, '{');
541
+ HSA_depth_max_cnt++;
542
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
543
+ if (std::string("hsa_code_symbol_t::handle").find(HSA_structs_regex) != std::string::npos) {
544
+ std::operator<<(out, "handle=");
545
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
546
+ }
547
+ };
548
+ HSA_depth_max_cnt--;
549
+ std::operator<<(out, '}');
550
+ return out;
551
+ }
552
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_image_t& v)
553
+ {
554
+ std::operator<<(out, '{');
555
+ HSA_depth_max_cnt++;
556
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
557
+ if (std::string("hsa_ext_image_t::handle").find(HSA_structs_regex) != std::string::npos) {
558
+ std::operator<<(out, "handle=");
559
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
560
+ }
561
+ };
562
+ HSA_depth_max_cnt--;
563
+ std::operator<<(out, '}');
564
+ return out;
565
+ }
566
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_image_format_t& v)
567
+ {
568
+ std::operator<<(out, '{');
569
+ HSA_depth_max_cnt++;
570
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
571
+ if (std::string("hsa_ext_image_format_t::channel_order").find(HSA_structs_regex) != std::string::npos) {
572
+ std::operator<<(out, "channel_order=");
573
+ roctracer::hsa_support::detail::operator<<(out, v.channel_order);
574
+ std::operator<<(out, ", ");
575
+ }
576
+ if (std::string("hsa_ext_image_format_t::channel_type").find(HSA_structs_regex) != std::string::npos) {
577
+ std::operator<<(out, "channel_type=");
578
+ roctracer::hsa_support::detail::operator<<(out, v.channel_type);
579
+ }
580
+ };
581
+ HSA_depth_max_cnt--;
582
+ std::operator<<(out, '}');
583
+ return out;
584
+ }
585
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_image_descriptor_t& v)
586
+ {
587
+ std::operator<<(out, '{');
588
+ HSA_depth_max_cnt++;
589
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
590
+ if (std::string("hsa_ext_image_descriptor_t::format").find(HSA_structs_regex) != std::string::npos) {
591
+ std::operator<<(out, "format=");
592
+ roctracer::hsa_support::detail::operator<<(out, v.format);
593
+ std::operator<<(out, ", ");
594
+ }
595
+ if (std::string("hsa_ext_image_descriptor_t::array_size").find(HSA_structs_regex) != std::string::npos) {
596
+ std::operator<<(out, "array_size=");
597
+ roctracer::hsa_support::detail::operator<<(out, v.array_size);
598
+ std::operator<<(out, ", ");
599
+ }
600
+ if (std::string("hsa_ext_image_descriptor_t::depth").find(HSA_structs_regex) != std::string::npos) {
601
+ std::operator<<(out, "depth=");
602
+ roctracer::hsa_support::detail::operator<<(out, v.depth);
603
+ std::operator<<(out, ", ");
604
+ }
605
+ if (std::string("hsa_ext_image_descriptor_t::height").find(HSA_structs_regex) != std::string::npos) {
606
+ std::operator<<(out, "height=");
607
+ roctracer::hsa_support::detail::operator<<(out, v.height);
608
+ std::operator<<(out, ", ");
609
+ }
610
+ if (std::string("hsa_ext_image_descriptor_t::width").find(HSA_structs_regex) != std::string::npos) {
611
+ std::operator<<(out, "width=");
612
+ roctracer::hsa_support::detail::operator<<(out, v.width);
613
+ std::operator<<(out, ", ");
614
+ }
615
+ if (std::string("hsa_ext_image_descriptor_t::geometry").find(HSA_structs_regex) != std::string::npos) {
616
+ std::operator<<(out, "geometry=");
617
+ roctracer::hsa_support::detail::operator<<(out, v.geometry);
618
+ }
619
+ };
620
+ HSA_depth_max_cnt--;
621
+ std::operator<<(out, '}');
622
+ return out;
623
+ }
624
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_image_data_info_t& v)
625
+ {
626
+ std::operator<<(out, '{');
627
+ HSA_depth_max_cnt++;
628
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
629
+ if (std::string("hsa_ext_image_data_info_t::alignment").find(HSA_structs_regex) != std::string::npos) {
630
+ std::operator<<(out, "alignment=");
631
+ roctracer::hsa_support::detail::operator<<(out, v.alignment);
632
+ std::operator<<(out, ", ");
633
+ }
634
+ if (std::string("hsa_ext_image_data_info_t::size").find(HSA_structs_regex) != std::string::npos) {
635
+ std::operator<<(out, "size=");
636
+ roctracer::hsa_support::detail::operator<<(out, v.size);
637
+ }
638
+ };
639
+ HSA_depth_max_cnt--;
640
+ std::operator<<(out, '}');
641
+ return out;
642
+ }
643
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_image_region_t& v)
644
+ {
645
+ std::operator<<(out, '{');
646
+ HSA_depth_max_cnt++;
647
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
648
+ if (std::string("hsa_ext_image_region_t::range").find(HSA_structs_regex) != std::string::npos) {
649
+ std::operator<<(out, "range=");
650
+ roctracer::hsa_support::detail::operator<<(out, v.range);
651
+ std::operator<<(out, ", ");
652
+ }
653
+ if (std::string("hsa_ext_image_region_t::offset").find(HSA_structs_regex) != std::string::npos) {
654
+ std::operator<<(out, "offset=");
655
+ roctracer::hsa_support::detail::operator<<(out, v.offset);
656
+ }
657
+ };
658
+ HSA_depth_max_cnt--;
659
+ std::operator<<(out, '}');
660
+ return out;
661
+ }
662
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_sampler_t& v)
663
+ {
664
+ std::operator<<(out, '{');
665
+ HSA_depth_max_cnt++;
666
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
667
+ if (std::string("hsa_ext_sampler_t::handle").find(HSA_structs_regex) != std::string::npos) {
668
+ std::operator<<(out, "handle=");
669
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
670
+ }
671
+ };
672
+ HSA_depth_max_cnt--;
673
+ std::operator<<(out, '}');
674
+ return out;
675
+ }
676
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_sampler_descriptor_t& v)
677
+ {
678
+ std::operator<<(out, '{');
679
+ HSA_depth_max_cnt++;
680
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
681
+ if (std::string("hsa_ext_sampler_descriptor_t::address_mode").find(HSA_structs_regex) != std::string::npos) {
682
+ std::operator<<(out, "address_mode=");
683
+ roctracer::hsa_support::detail::operator<<(out, v.address_mode);
684
+ std::operator<<(out, ", ");
685
+ }
686
+ if (std::string("hsa_ext_sampler_descriptor_t::filter_mode").find(HSA_structs_regex) != std::string::npos) {
687
+ std::operator<<(out, "filter_mode=");
688
+ roctracer::hsa_support::detail::operator<<(out, v.filter_mode);
689
+ std::operator<<(out, ", ");
690
+ }
691
+ if (std::string("hsa_ext_sampler_descriptor_t::coordinate_mode").find(HSA_structs_regex) != std::string::npos) {
692
+ std::operator<<(out, "coordinate_mode=");
693
+ roctracer::hsa_support::detail::operator<<(out, v.coordinate_mode);
694
+ }
695
+ };
696
+ HSA_depth_max_cnt--;
697
+ std::operator<<(out, '}');
698
+ return out;
699
+ }
700
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_images_1_00_pfn_t& v)
701
+ {
702
+ std::operator<<(out, '{');
703
+ HSA_depth_max_cnt++;
704
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
705
+ if (std::string("hsa_ext_images_1_00_pfn_t::hsa_ext_sampler_destroy").find(HSA_structs_regex) != std::string::npos) {
706
+ std::operator<<(out, "hsa_ext_sampler_destroy=");
707
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_sampler_destroy);
708
+ std::operator<<(out, ", ");
709
+ }
710
+ if (std::string("hsa_ext_images_1_00_pfn_t::hsa_ext_sampler_create").find(HSA_structs_regex) != std::string::npos) {
711
+ std::operator<<(out, "hsa_ext_sampler_create=");
712
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_sampler_create);
713
+ std::operator<<(out, ", ");
714
+ }
715
+ if (std::string("hsa_ext_images_1_00_pfn_t::hsa_ext_image_copy").find(HSA_structs_regex) != std::string::npos) {
716
+ std::operator<<(out, "hsa_ext_image_copy=");
717
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_image_copy);
718
+ std::operator<<(out, ", ");
719
+ }
720
+ if (std::string("hsa_ext_images_1_00_pfn_t::hsa_ext_image_destroy").find(HSA_structs_regex) != std::string::npos) {
721
+ std::operator<<(out, "hsa_ext_image_destroy=");
722
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_image_destroy);
723
+ std::operator<<(out, ", ");
724
+ }
725
+ if (std::string("hsa_ext_images_1_00_pfn_t::hsa_ext_image_data_get_info").find(HSA_structs_regex) != std::string::npos) {
726
+ std::operator<<(out, "hsa_ext_image_data_get_info=");
727
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_image_data_get_info);
728
+ std::operator<<(out, ", ");
729
+ }
730
+ if (std::string("hsa_ext_images_1_00_pfn_t::hsa_ext_image_get_capability").find(HSA_structs_regex) != std::string::npos) {
731
+ std::operator<<(out, "hsa_ext_image_get_capability=");
732
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_image_get_capability);
733
+ }
734
+ };
735
+ HSA_depth_max_cnt--;
736
+ std::operator<<(out, '}');
737
+ return out;
738
+ }
739
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_images_1_pfn_t& v)
740
+ {
741
+ std::operator<<(out, '{');
742
+ HSA_depth_max_cnt++;
743
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
744
+ if (std::string("hsa_ext_images_1_pfn_t::hsa_ext_image_data_get_info_with_layout").find(HSA_structs_regex) != std::string::npos) {
745
+ std::operator<<(out, "hsa_ext_image_data_get_info_with_layout=");
746
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_image_data_get_info_with_layout);
747
+ std::operator<<(out, ", ");
748
+ }
749
+ if (std::string("hsa_ext_images_1_pfn_t::hsa_ext_image_get_capability_with_layout").find(HSA_structs_regex) != std::string::npos) {
750
+ std::operator<<(out, "hsa_ext_image_get_capability_with_layout=");
751
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_image_get_capability_with_layout);
752
+ std::operator<<(out, ", ");
753
+ }
754
+ if (std::string("hsa_ext_images_1_pfn_t::hsa_ext_sampler_destroy").find(HSA_structs_regex) != std::string::npos) {
755
+ std::operator<<(out, "hsa_ext_sampler_destroy=");
756
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_sampler_destroy);
757
+ std::operator<<(out, ", ");
758
+ }
759
+ if (std::string("hsa_ext_images_1_pfn_t::hsa_ext_sampler_create").find(HSA_structs_regex) != std::string::npos) {
760
+ std::operator<<(out, "hsa_ext_sampler_create=");
761
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_sampler_create);
762
+ std::operator<<(out, ", ");
763
+ }
764
+ if (std::string("hsa_ext_images_1_pfn_t::hsa_ext_image_copy").find(HSA_structs_regex) != std::string::npos) {
765
+ std::operator<<(out, "hsa_ext_image_copy=");
766
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_image_copy);
767
+ std::operator<<(out, ", ");
768
+ }
769
+ if (std::string("hsa_ext_images_1_pfn_t::hsa_ext_image_destroy").find(HSA_structs_regex) != std::string::npos) {
770
+ std::operator<<(out, "hsa_ext_image_destroy=");
771
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_image_destroy);
772
+ std::operator<<(out, ", ");
773
+ }
774
+ if (std::string("hsa_ext_images_1_pfn_t::hsa_ext_image_data_get_info").find(HSA_structs_regex) != std::string::npos) {
775
+ std::operator<<(out, "hsa_ext_image_data_get_info=");
776
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_image_data_get_info);
777
+ std::operator<<(out, ", ");
778
+ }
779
+ if (std::string("hsa_ext_images_1_pfn_t::hsa_ext_image_get_capability").find(HSA_structs_regex) != std::string::npos) {
780
+ std::operator<<(out, "hsa_ext_image_get_capability=");
781
+ roctracer::hsa_support::detail::operator<<(out, v.hsa_ext_image_get_capability);
782
+ }
783
+ };
784
+ HSA_depth_max_cnt--;
785
+ std::operator<<(out, '}');
786
+ return out;
787
+ }
788
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_vendor_packet_header_t& v)
789
+ {
790
+ std::operator<<(out, '{');
791
+ HSA_depth_max_cnt++;
792
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
793
+ if (std::string("hsa_amd_vendor_packet_header_t::reserved").find(HSA_structs_regex) != std::string::npos) {
794
+ std::operator<<(out, "reserved=");
795
+ roctracer::hsa_support::detail::operator<<(out, v.reserved);
796
+ std::operator<<(out, ", ");
797
+ }
798
+ if (std::string("hsa_amd_vendor_packet_header_t::AmdFormat").find(HSA_structs_regex) != std::string::npos) {
799
+ std::operator<<(out, "AmdFormat=");
800
+ roctracer::hsa_support::detail::operator<<(out, v.AmdFormat);
801
+ std::operator<<(out, ", ");
802
+ }
803
+ if (std::string("hsa_amd_vendor_packet_header_t::header").find(HSA_structs_regex) != std::string::npos) {
804
+ std::operator<<(out, "header=");
805
+ roctracer::hsa_support::detail::operator<<(out, v.header);
806
+ }
807
+ };
808
+ HSA_depth_max_cnt--;
809
+ std::operator<<(out, '}');
810
+ return out;
811
+ }
812
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_barrier_value_packet_t& v)
813
+ {
814
+ std::operator<<(out, '{');
815
+ HSA_depth_max_cnt++;
816
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
817
+ if (std::string("hsa_amd_barrier_value_packet_t::completion_signal").find(HSA_structs_regex) != std::string::npos) {
818
+ std::operator<<(out, "completion_signal=");
819
+ roctracer::hsa_support::detail::operator<<(out, v.completion_signal);
820
+ std::operator<<(out, ", ");
821
+ }
822
+ if (std::string("hsa_amd_barrier_value_packet_t::reserved3").find(HSA_structs_regex) != std::string::npos) {
823
+ std::operator<<(out, "reserved3=");
824
+ roctracer::hsa_support::detail::operator<<(out, v.reserved3);
825
+ std::operator<<(out, ", ");
826
+ }
827
+ if (std::string("hsa_amd_barrier_value_packet_t::reserved2").find(HSA_structs_regex) != std::string::npos) {
828
+ std::operator<<(out, "reserved2=");
829
+ roctracer::hsa_support::detail::operator<<(out, v.reserved2);
830
+ std::operator<<(out, ", ");
831
+ }
832
+ if (std::string("hsa_amd_barrier_value_packet_t::reserved1").find(HSA_structs_regex) != std::string::npos) {
833
+ std::operator<<(out, "reserved1=");
834
+ roctracer::hsa_support::detail::operator<<(out, v.reserved1);
835
+ std::operator<<(out, ", ");
836
+ }
837
+ if (std::string("hsa_amd_barrier_value_packet_t::cond").find(HSA_structs_regex) != std::string::npos) {
838
+ std::operator<<(out, "cond=");
839
+ roctracer::hsa_support::detail::operator<<(out, v.cond);
840
+ std::operator<<(out, ", ");
841
+ }
842
+ if (std::string("hsa_amd_barrier_value_packet_t::mask").find(HSA_structs_regex) != std::string::npos) {
843
+ std::operator<<(out, "mask=");
844
+ roctracer::hsa_support::detail::operator<<(out, v.mask);
845
+ std::operator<<(out, ", ");
846
+ }
847
+ if (std::string("hsa_amd_barrier_value_packet_t::value").find(HSA_structs_regex) != std::string::npos) {
848
+ std::operator<<(out, "value=");
849
+ roctracer::hsa_support::detail::operator<<(out, v.value);
850
+ std::operator<<(out, ", ");
851
+ }
852
+ if (std::string("hsa_amd_barrier_value_packet_t::signal").find(HSA_structs_regex) != std::string::npos) {
853
+ std::operator<<(out, "signal=");
854
+ roctracer::hsa_support::detail::operator<<(out, v.signal);
855
+ std::operator<<(out, ", ");
856
+ }
857
+ if (std::string("hsa_amd_barrier_value_packet_t::reserved0").find(HSA_structs_regex) != std::string::npos) {
858
+ std::operator<<(out, "reserved0=");
859
+ roctracer::hsa_support::detail::operator<<(out, v.reserved0);
860
+ std::operator<<(out, ", ");
861
+ }
862
+ if (std::string("hsa_amd_barrier_value_packet_t::header").find(HSA_structs_regex) != std::string::npos) {
863
+ std::operator<<(out, "header=");
864
+ roctracer::hsa_support::detail::operator<<(out, v.header);
865
+ }
866
+ };
867
+ HSA_depth_max_cnt--;
868
+ std::operator<<(out, '}');
869
+ return out;
870
+ }
871
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_hdp_flush_t& v)
872
+ {
873
+ std::operator<<(out, '{');
874
+ HSA_depth_max_cnt++;
875
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
876
+ if (std::string("hsa_amd_hdp_flush_t::HDP_REG_FLUSH_CNTL").find(HSA_structs_regex) != std::string::npos) {
877
+ std::operator<<(out, "HDP_REG_FLUSH_CNTL=");
878
+ roctracer::hsa_support::detail::operator<<(out, v.HDP_REG_FLUSH_CNTL);
879
+ std::operator<<(out, ", ");
880
+ }
881
+ if (std::string("hsa_amd_hdp_flush_t::HDP_MEM_FLUSH_CNTL").find(HSA_structs_regex) != std::string::npos) {
882
+ std::operator<<(out, "HDP_MEM_FLUSH_CNTL=");
883
+ roctracer::hsa_support::detail::operator<<(out, v.HDP_MEM_FLUSH_CNTL);
884
+ }
885
+ };
886
+ HSA_depth_max_cnt--;
887
+ std::operator<<(out, '}');
888
+ return out;
889
+ }
890
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_profiling_dispatch_time_t& v)
891
+ {
892
+ std::operator<<(out, '{');
893
+ HSA_depth_max_cnt++;
894
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
895
+ if (std::string("hsa_amd_profiling_dispatch_time_t::end").find(HSA_structs_regex) != std::string::npos) {
896
+ std::operator<<(out, "end=");
897
+ roctracer::hsa_support::detail::operator<<(out, v.end);
898
+ std::operator<<(out, ", ");
899
+ }
900
+ if (std::string("hsa_amd_profiling_dispatch_time_t::start").find(HSA_structs_regex) != std::string::npos) {
901
+ std::operator<<(out, "start=");
902
+ roctracer::hsa_support::detail::operator<<(out, v.start);
903
+ }
904
+ };
905
+ HSA_depth_max_cnt--;
906
+ std::operator<<(out, '}');
907
+ return out;
908
+ }
909
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_profiling_async_copy_time_t& v)
910
+ {
911
+ std::operator<<(out, '{');
912
+ HSA_depth_max_cnt++;
913
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
914
+ if (std::string("hsa_amd_profiling_async_copy_time_t::end").find(HSA_structs_regex) != std::string::npos) {
915
+ std::operator<<(out, "end=");
916
+ roctracer::hsa_support::detail::operator<<(out, v.end);
917
+ std::operator<<(out, ", ");
918
+ }
919
+ if (std::string("hsa_amd_profiling_async_copy_time_t::start").find(HSA_structs_regex) != std::string::npos) {
920
+ std::operator<<(out, "start=");
921
+ roctracer::hsa_support::detail::operator<<(out, v.start);
922
+ }
923
+ };
924
+ HSA_depth_max_cnt--;
925
+ std::operator<<(out, '}');
926
+ return out;
927
+ }
928
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_memory_pool_t& v)
929
+ {
930
+ std::operator<<(out, '{');
931
+ HSA_depth_max_cnt++;
932
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
933
+ if (std::string("hsa_amd_memory_pool_t::handle").find(HSA_structs_regex) != std::string::npos) {
934
+ std::operator<<(out, "handle=");
935
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
936
+ }
937
+ };
938
+ HSA_depth_max_cnt--;
939
+ std::operator<<(out, '}');
940
+ return out;
941
+ }
942
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_pitched_ptr_t& v)
943
+ {
944
+ std::operator<<(out, '{');
945
+ HSA_depth_max_cnt++;
946
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
947
+ if (std::string("hsa_pitched_ptr_t::slice").find(HSA_structs_regex) != std::string::npos) {
948
+ std::operator<<(out, "slice=");
949
+ roctracer::hsa_support::detail::operator<<(out, v.slice);
950
+ std::operator<<(out, ", ");
951
+ }
952
+ if (std::string("hsa_pitched_ptr_t::pitch").find(HSA_structs_regex) != std::string::npos) {
953
+ std::operator<<(out, "pitch=");
954
+ roctracer::hsa_support::detail::operator<<(out, v.pitch);
955
+ }
956
+ };
957
+ HSA_depth_max_cnt--;
958
+ std::operator<<(out, '}');
959
+ return out;
960
+ }
961
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_memory_pool_link_info_t& v)
962
+ {
963
+ std::operator<<(out, '{');
964
+ HSA_depth_max_cnt++;
965
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
966
+ if (std::string("hsa_amd_memory_pool_link_info_t::numa_distance").find(HSA_structs_regex) != std::string::npos) {
967
+ std::operator<<(out, "numa_distance=");
968
+ roctracer::hsa_support::detail::operator<<(out, v.numa_distance);
969
+ std::operator<<(out, ", ");
970
+ }
971
+ if (std::string("hsa_amd_memory_pool_link_info_t::link_type").find(HSA_structs_regex) != std::string::npos) {
972
+ std::operator<<(out, "link_type=");
973
+ roctracer::hsa_support::detail::operator<<(out, v.link_type);
974
+ std::operator<<(out, ", ");
975
+ }
976
+ if (std::string("hsa_amd_memory_pool_link_info_t::max_bandwidth").find(HSA_structs_regex) != std::string::npos) {
977
+ std::operator<<(out, "max_bandwidth=");
978
+ roctracer::hsa_support::detail::operator<<(out, v.max_bandwidth);
979
+ std::operator<<(out, ", ");
980
+ }
981
+ if (std::string("hsa_amd_memory_pool_link_info_t::min_bandwidth").find(HSA_structs_regex) != std::string::npos) {
982
+ std::operator<<(out, "min_bandwidth=");
983
+ roctracer::hsa_support::detail::operator<<(out, v.min_bandwidth);
984
+ std::operator<<(out, ", ");
985
+ }
986
+ if (std::string("hsa_amd_memory_pool_link_info_t::max_latency").find(HSA_structs_regex) != std::string::npos) {
987
+ std::operator<<(out, "max_latency=");
988
+ roctracer::hsa_support::detail::operator<<(out, v.max_latency);
989
+ std::operator<<(out, ", ");
990
+ }
991
+ if (std::string("hsa_amd_memory_pool_link_info_t::min_latency").find(HSA_structs_regex) != std::string::npos) {
992
+ std::operator<<(out, "min_latency=");
993
+ roctracer::hsa_support::detail::operator<<(out, v.min_latency);
994
+ }
995
+ };
996
+ HSA_depth_max_cnt--;
997
+ std::operator<<(out, '}');
998
+ return out;
999
+ }
1000
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_image_descriptor_t& v)
1001
+ {
1002
+ std::operator<<(out, '{');
1003
+ HSA_depth_max_cnt++;
1004
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
1005
+ if (std::string("hsa_amd_image_descriptor_t::data").find(HSA_structs_regex) != std::string::npos) {
1006
+ std::operator<<(out, "data=");
1007
+ roctracer::hsa_support::detail::operator<<(out, v.data);
1008
+ std::operator<<(out, ", ");
1009
+ }
1010
+ if (std::string("hsa_amd_image_descriptor_t::deviceID").find(HSA_structs_regex) != std::string::npos) {
1011
+ std::operator<<(out, "deviceID=");
1012
+ roctracer::hsa_support::detail::operator<<(out, v.deviceID);
1013
+ std::operator<<(out, ", ");
1014
+ }
1015
+ if (std::string("hsa_amd_image_descriptor_t::version").find(HSA_structs_regex) != std::string::npos) {
1016
+ std::operator<<(out, "version=");
1017
+ roctracer::hsa_support::detail::operator<<(out, v.version);
1018
+ }
1019
+ };
1020
+ HSA_depth_max_cnt--;
1021
+ std::operator<<(out, '}');
1022
+ return out;
1023
+ }
1024
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_pointer_info_t& v)
1025
+ {
1026
+ std::operator<<(out, '{');
1027
+ HSA_depth_max_cnt++;
1028
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
1029
+ if (std::string("hsa_amd_pointer_info_t::global_flags").find(HSA_structs_regex) != std::string::npos) {
1030
+ std::operator<<(out, "global_flags=");
1031
+ roctracer::hsa_support::detail::operator<<(out, v.global_flags);
1032
+ std::operator<<(out, ", ");
1033
+ }
1034
+ if (std::string("hsa_amd_pointer_info_t::agentOwner").find(HSA_structs_regex) != std::string::npos) {
1035
+ std::operator<<(out, "agentOwner=");
1036
+ roctracer::hsa_support::detail::operator<<(out, v.agentOwner);
1037
+ std::operator<<(out, ", ");
1038
+ }
1039
+ if (std::string("hsa_amd_pointer_info_t::sizeInBytes").find(HSA_structs_regex) != std::string::npos) {
1040
+ std::operator<<(out, "sizeInBytes=");
1041
+ roctracer::hsa_support::detail::operator<<(out, v.sizeInBytes);
1042
+ std::operator<<(out, ", ");
1043
+ }
1044
+ if (std::string("hsa_amd_pointer_info_t::type").find(HSA_structs_regex) != std::string::npos) {
1045
+ std::operator<<(out, "type=");
1046
+ roctracer::hsa_support::detail::operator<<(out, v.type);
1047
+ std::operator<<(out, ", ");
1048
+ }
1049
+ if (std::string("hsa_amd_pointer_info_t::size").find(HSA_structs_regex) != std::string::npos) {
1050
+ std::operator<<(out, "size=");
1051
+ roctracer::hsa_support::detail::operator<<(out, v.size);
1052
+ }
1053
+ };
1054
+ HSA_depth_max_cnt--;
1055
+ std::operator<<(out, '}');
1056
+ return out;
1057
+ }
1058
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_ipc_memory_t& v)
1059
+ {
1060
+ std::operator<<(out, '{');
1061
+ HSA_depth_max_cnt++;
1062
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
1063
+ if (std::string("hsa_amd_ipc_memory_t::handle").find(HSA_structs_regex) != std::string::npos) {
1064
+ std::operator<<(out, "handle=");
1065
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
1066
+ }
1067
+ };
1068
+ HSA_depth_max_cnt--;
1069
+ std::operator<<(out, '}');
1070
+ return out;
1071
+ }
1072
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_gpu_memory_fault_info_t& v)
1073
+ {
1074
+ std::operator<<(out, '{');
1075
+ HSA_depth_max_cnt++;
1076
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
1077
+ if (std::string("hsa_amd_gpu_memory_fault_info_t::fault_reason_mask").find(HSA_structs_regex) != std::string::npos) {
1078
+ std::operator<<(out, "fault_reason_mask=");
1079
+ roctracer::hsa_support::detail::operator<<(out, v.fault_reason_mask);
1080
+ std::operator<<(out, ", ");
1081
+ }
1082
+ if (std::string("hsa_amd_gpu_memory_fault_info_t::virtual_address").find(HSA_structs_regex) != std::string::npos) {
1083
+ std::operator<<(out, "virtual_address=");
1084
+ roctracer::hsa_support::detail::operator<<(out, v.virtual_address);
1085
+ std::operator<<(out, ", ");
1086
+ }
1087
+ if (std::string("hsa_amd_gpu_memory_fault_info_t::agent").find(HSA_structs_regex) != std::string::npos) {
1088
+ std::operator<<(out, "agent=");
1089
+ roctracer::hsa_support::detail::operator<<(out, v.agent);
1090
+ }
1091
+ };
1092
+ HSA_depth_max_cnt--;
1093
+ std::operator<<(out, '}');
1094
+ return out;
1095
+ }
1096
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_gpu_hw_exception_info_t& v)
1097
+ {
1098
+ std::operator<<(out, '{');
1099
+ HSA_depth_max_cnt++;
1100
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
1101
+ if (std::string("hsa_amd_gpu_hw_exception_info_t::reset_cause").find(HSA_structs_regex) != std::string::npos) {
1102
+ std::operator<<(out, "reset_cause=");
1103
+ roctracer::hsa_support::detail::operator<<(out, v.reset_cause);
1104
+ std::operator<<(out, ", ");
1105
+ }
1106
+ if (std::string("hsa_amd_gpu_hw_exception_info_t::reset_type").find(HSA_structs_regex) != std::string::npos) {
1107
+ std::operator<<(out, "reset_type=");
1108
+ roctracer::hsa_support::detail::operator<<(out, v.reset_type);
1109
+ std::operator<<(out, ", ");
1110
+ }
1111
+ if (std::string("hsa_amd_gpu_hw_exception_info_t::agent").find(HSA_structs_regex) != std::string::npos) {
1112
+ std::operator<<(out, "agent=");
1113
+ roctracer::hsa_support::detail::operator<<(out, v.agent);
1114
+ }
1115
+ };
1116
+ HSA_depth_max_cnt--;
1117
+ std::operator<<(out, '}');
1118
+ return out;
1119
+ }
1120
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_event_t& v)
1121
+ {
1122
+ std::operator<<(out, '{');
1123
+ HSA_depth_max_cnt++;
1124
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
1125
+ if (std::string("hsa_amd_event_t::event_type").find(HSA_structs_regex) != std::string::npos) {
1126
+ std::operator<<(out, "event_type=");
1127
+ roctracer::hsa_support::detail::operator<<(out, v.event_type);
1128
+ }
1129
+ };
1130
+ HSA_depth_max_cnt--;
1131
+ std::operator<<(out, '}');
1132
+ return out;
1133
+ }
1134
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_svm_attribute_pair_t& v)
1135
+ {
1136
+ std::operator<<(out, '{');
1137
+ HSA_depth_max_cnt++;
1138
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
1139
+ if (std::string("hsa_amd_svm_attribute_pair_t::value").find(HSA_structs_regex) != std::string::npos) {
1140
+ std::operator<<(out, "value=");
1141
+ roctracer::hsa_support::detail::operator<<(out, v.value);
1142
+ std::operator<<(out, ", ");
1143
+ }
1144
+ if (std::string("hsa_amd_svm_attribute_pair_t::attribute").find(HSA_structs_regex) != std::string::npos) {
1145
+ std::operator<<(out, "attribute=");
1146
+ roctracer::hsa_support::detail::operator<<(out, v.attribute);
1147
+ }
1148
+ };
1149
+ HSA_depth_max_cnt--;
1150
+ std::operator<<(out, '}');
1151
+ return out;
1152
+ }
1153
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_vmem_alloc_handle_t& v)
1154
+ {
1155
+ std::operator<<(out, '{');
1156
+ HSA_depth_max_cnt++;
1157
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
1158
+ if (std::string("hsa_amd_vmem_alloc_handle_t::handle").find(HSA_structs_regex) != std::string::npos) {
1159
+ std::operator<<(out, "handle=");
1160
+ roctracer::hsa_support::detail::operator<<(out, v.handle);
1161
+ }
1162
+ };
1163
+ HSA_depth_max_cnt--;
1164
+ std::operator<<(out, '}');
1165
+ return out;
1166
+ }
1167
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_memory_access_desc_t& v)
1168
+ {
1169
+ std::operator<<(out, '{');
1170
+ HSA_depth_max_cnt++;
1171
+ if (HSA_depth_max == -1 || HSA_depth_max_cnt <= HSA_depth_max) {
1172
+ if (std::string("hsa_amd_memory_access_desc_t::agent_handle").find(HSA_structs_regex) != std::string::npos) {
1173
+ std::operator<<(out, "agent_handle=");
1174
+ roctracer::hsa_support::detail::operator<<(out, v.agent_handle);
1175
+ std::operator<<(out, ", ");
1176
+ }
1177
+ if (std::string("hsa_amd_memory_access_desc_t::permissions").find(HSA_structs_regex) != std::string::npos) {
1178
+ std::operator<<(out, "permissions=");
1179
+ roctracer::hsa_support::detail::operator<<(out, v.permissions);
1180
+ }
1181
+ };
1182
+ HSA_depth_max_cnt--;
1183
+ std::operator<<(out, '}');
1184
+ return out;
1185
+ }
1186
+ // end ostream ops for HSA
1187
+ };};};
1188
+
1189
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_dim3_t& v)
1190
+ {
1191
+ roctracer::hsa_support::detail::operator<<(out, v);
1192
+ return out;
1193
+ }
1194
+
1195
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_agent_t& v)
1196
+ {
1197
+ roctracer::hsa_support::detail::operator<<(out, v);
1198
+ return out;
1199
+ }
1200
+
1201
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_cache_t& v)
1202
+ {
1203
+ roctracer::hsa_support::detail::operator<<(out, v);
1204
+ return out;
1205
+ }
1206
+
1207
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_signal_t& v)
1208
+ {
1209
+ roctracer::hsa_support::detail::operator<<(out, v);
1210
+ return out;
1211
+ }
1212
+
1213
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_signal_group_t& v)
1214
+ {
1215
+ roctracer::hsa_support::detail::operator<<(out, v);
1216
+ return out;
1217
+ }
1218
+
1219
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_region_t& v)
1220
+ {
1221
+ roctracer::hsa_support::detail::operator<<(out, v);
1222
+ return out;
1223
+ }
1224
+
1225
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_queue_t& v)
1226
+ {
1227
+ roctracer::hsa_support::detail::operator<<(out, v);
1228
+ return out;
1229
+ }
1230
+
1231
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_kernel_dispatch_packet_t& v)
1232
+ {
1233
+ roctracer::hsa_support::detail::operator<<(out, v);
1234
+ return out;
1235
+ }
1236
+
1237
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_agent_dispatch_packet_t& v)
1238
+ {
1239
+ roctracer::hsa_support::detail::operator<<(out, v);
1240
+ return out;
1241
+ }
1242
+
1243
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_barrier_and_packet_t& v)
1244
+ {
1245
+ roctracer::hsa_support::detail::operator<<(out, v);
1246
+ return out;
1247
+ }
1248
+
1249
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_barrier_or_packet_t& v)
1250
+ {
1251
+ roctracer::hsa_support::detail::operator<<(out, v);
1252
+ return out;
1253
+ }
1254
+
1255
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_isa_t& v)
1256
+ {
1257
+ roctracer::hsa_support::detail::operator<<(out, v);
1258
+ return out;
1259
+ }
1260
+
1261
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_wavefront_t& v)
1262
+ {
1263
+ roctracer::hsa_support::detail::operator<<(out, v);
1264
+ return out;
1265
+ }
1266
+
1267
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_code_object_reader_t& v)
1268
+ {
1269
+ roctracer::hsa_support::detail::operator<<(out, v);
1270
+ return out;
1271
+ }
1272
+
1273
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_executable_t& v)
1274
+ {
1275
+ roctracer::hsa_support::detail::operator<<(out, v);
1276
+ return out;
1277
+ }
1278
+
1279
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_loaded_code_object_t& v)
1280
+ {
1281
+ roctracer::hsa_support::detail::operator<<(out, v);
1282
+ return out;
1283
+ }
1284
+
1285
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_executable_symbol_t& v)
1286
+ {
1287
+ roctracer::hsa_support::detail::operator<<(out, v);
1288
+ return out;
1289
+ }
1290
+
1291
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_code_object_t& v)
1292
+ {
1293
+ roctracer::hsa_support::detail::operator<<(out, v);
1294
+ return out;
1295
+ }
1296
+
1297
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_callback_data_t& v)
1298
+ {
1299
+ roctracer::hsa_support::detail::operator<<(out, v);
1300
+ return out;
1301
+ }
1302
+
1303
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_code_symbol_t& v)
1304
+ {
1305
+ roctracer::hsa_support::detail::operator<<(out, v);
1306
+ return out;
1307
+ }
1308
+
1309
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_image_t& v)
1310
+ {
1311
+ roctracer::hsa_support::detail::operator<<(out, v);
1312
+ return out;
1313
+ }
1314
+
1315
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_image_format_t& v)
1316
+ {
1317
+ roctracer::hsa_support::detail::operator<<(out, v);
1318
+ return out;
1319
+ }
1320
+
1321
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_image_descriptor_t& v)
1322
+ {
1323
+ roctracer::hsa_support::detail::operator<<(out, v);
1324
+ return out;
1325
+ }
1326
+
1327
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_image_data_info_t& v)
1328
+ {
1329
+ roctracer::hsa_support::detail::operator<<(out, v);
1330
+ return out;
1331
+ }
1332
+
1333
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_image_region_t& v)
1334
+ {
1335
+ roctracer::hsa_support::detail::operator<<(out, v);
1336
+ return out;
1337
+ }
1338
+
1339
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_sampler_t& v)
1340
+ {
1341
+ roctracer::hsa_support::detail::operator<<(out, v);
1342
+ return out;
1343
+ }
1344
+
1345
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_sampler_descriptor_t& v)
1346
+ {
1347
+ roctracer::hsa_support::detail::operator<<(out, v);
1348
+ return out;
1349
+ }
1350
+
1351
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_images_1_00_pfn_t& v)
1352
+ {
1353
+ roctracer::hsa_support::detail::operator<<(out, v);
1354
+ return out;
1355
+ }
1356
+
1357
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_ext_images_1_pfn_t& v)
1358
+ {
1359
+ roctracer::hsa_support::detail::operator<<(out, v);
1360
+ return out;
1361
+ }
1362
+
1363
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_vendor_packet_header_t& v)
1364
+ {
1365
+ roctracer::hsa_support::detail::operator<<(out, v);
1366
+ return out;
1367
+ }
1368
+
1369
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_barrier_value_packet_t& v)
1370
+ {
1371
+ roctracer::hsa_support::detail::operator<<(out, v);
1372
+ return out;
1373
+ }
1374
+
1375
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_hdp_flush_t& v)
1376
+ {
1377
+ roctracer::hsa_support::detail::operator<<(out, v);
1378
+ return out;
1379
+ }
1380
+
1381
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_profiling_dispatch_time_t& v)
1382
+ {
1383
+ roctracer::hsa_support::detail::operator<<(out, v);
1384
+ return out;
1385
+ }
1386
+
1387
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_profiling_async_copy_time_t& v)
1388
+ {
1389
+ roctracer::hsa_support::detail::operator<<(out, v);
1390
+ return out;
1391
+ }
1392
+
1393
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_memory_pool_t& v)
1394
+ {
1395
+ roctracer::hsa_support::detail::operator<<(out, v);
1396
+ return out;
1397
+ }
1398
+
1399
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_pitched_ptr_t& v)
1400
+ {
1401
+ roctracer::hsa_support::detail::operator<<(out, v);
1402
+ return out;
1403
+ }
1404
+
1405
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_memory_pool_link_info_t& v)
1406
+ {
1407
+ roctracer::hsa_support::detail::operator<<(out, v);
1408
+ return out;
1409
+ }
1410
+
1411
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_image_descriptor_t& v)
1412
+ {
1413
+ roctracer::hsa_support::detail::operator<<(out, v);
1414
+ return out;
1415
+ }
1416
+
1417
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_pointer_info_t& v)
1418
+ {
1419
+ roctracer::hsa_support::detail::operator<<(out, v);
1420
+ return out;
1421
+ }
1422
+
1423
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_ipc_memory_t& v)
1424
+ {
1425
+ roctracer::hsa_support::detail::operator<<(out, v);
1426
+ return out;
1427
+ }
1428
+
1429
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_gpu_memory_fault_info_t& v)
1430
+ {
1431
+ roctracer::hsa_support::detail::operator<<(out, v);
1432
+ return out;
1433
+ }
1434
+
1435
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_gpu_hw_exception_info_t& v)
1436
+ {
1437
+ roctracer::hsa_support::detail::operator<<(out, v);
1438
+ return out;
1439
+ }
1440
+
1441
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_event_t& v)
1442
+ {
1443
+ roctracer::hsa_support::detail::operator<<(out, v);
1444
+ return out;
1445
+ }
1446
+
1447
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_svm_attribute_pair_t& v)
1448
+ {
1449
+ roctracer::hsa_support::detail::operator<<(out, v);
1450
+ return out;
1451
+ }
1452
+
1453
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_vmem_alloc_handle_t& v)
1454
+ {
1455
+ roctracer::hsa_support::detail::operator<<(out, v);
1456
+ return out;
1457
+ }
1458
+
1459
+ inline static std::ostream& operator<<(std::ostream& out, const hsa_amd_memory_access_desc_t& v)
1460
+ {
1461
+ roctracer::hsa_support::detail::operator<<(out, v);
1462
+ return out;
1463
+ }
1464
+
1465
+ #endif //__cplusplus
1466
+ #endif // INC_HSA_OSTREAM_OPS_H_
1467
+