Enumerations
enum class RegisterID : uint32_t
| Name | Value | Comments |
|---|---|---|
| kUnknown | 0 | -- |
| kARMv8_x0 | 1000 |
General purpose |
| kARMv8_x1 | 1001 |
General purpose |
| kARMv8_x2 | 1002 |
General purpose |
| kARMv8_x3 | 1003 |
General purpose |
| kARMv8_x4 | 1004 |
General purpose |
| kARMv8_x5 | 1005 |
General purpose |
| kARMv8_x6 | 1006 |
General purpose |
| kARMv8_x7 | 1007 |
General purpose |
| kARMv8_x8 | 1008 |
General purpose |
| kARMv8_x9 | 1009 |
General purpose |
| kARMv8_x10 | 1010 |
General purpose |
| kARMv8_x11 | 1011 |
General purpose |
| kARMv8_x12 | 1012 |
General purpose |
| kARMv8_x13 | 1013 |
General purpose |
| kARMv8_x14 | 1014 |
General purpose |
| kARMv8_x15 | 1015 |
General purpose |
| kARMv8_x16 | 1016 |
General purpose |
| kARMv8_x17 | 1017 |
General purpose |
| kARMv8_x18 | 1018 |
General purpose |
| kARMv8_x19 | 1019 |
General purpose |
| kARMv8_x20 | 1020 |
General purpose |
| kARMv8_x21 | 1021 |
General purpose |
| kARMv8_x22 | 1022 |
General purpose |
| kARMv8_x23 | 1023 |
General purpose |
| kARMv8_x24 | 1024 |
General purpose |
| kARMv8_x25 | 1025 |
General purpose |
| kARMv8_x26 | 1026 |
General purpose |
| kARMv8_x27 | 1027 |
General purpose |
| kARMv8_x28 | 1028 |
General purpose |
| kARMv8_x29 | 1029 |
General purpose |
| kARMv8_lr | 1030 |
General purpose |
| kARMv8_sp | 1031 |
General purpose |
| kARMv8_pc | 1032 |
General purpose |
| kARMv8_cpsr | 1034 |
This register doesn't exist in ARMv8, but it's used as an abstraction for |
| kARMv8_w0 | 1035 |
General-purpose aliases (low 32-bits). |
| kARMv8_w1 | 1036 |
General-purpose aliases (low 32-bits). |
| kARMv8_w2 | 1037 |
General-purpose aliases (low 32-bits). |
| kARMv8_w3 | 1038 |
General-purpose aliases (low 32-bits). |
| kARMv8_w4 | 1039 |
General-purpose aliases (low 32-bits). |
| kARMv8_w5 | 1040 |
General-purpose aliases (low 32-bits). |
| kARMv8_w6 | 1041 |
General-purpose aliases (low 32-bits). |
| kARMv8_w7 | 1042 |
General-purpose aliases (low 32-bits). |
| kARMv8_w8 | 1043 |
General-purpose aliases (low 32-bits). |
| kARMv8_w9 | 1044 |
General-purpose aliases (low 32-bits). |
| kARMv8_w10 | 1045 |
General-purpose aliases (low 32-bits). |
| kARMv8_w11 | 1046 |
General-purpose aliases (low 32-bits). |
| kARMv8_w12 | 1047 |
General-purpose aliases (low 32-bits). |
| kARMv8_w13 | 1048 |
General-purpose aliases (low 32-bits). |
| kARMv8_w14 | 1049 |
General-purpose aliases (low 32-bits). |
| kARMv8_w15 | 1050 |
General-purpose aliases (low 32-bits). |
| kARMv8_w16 | 1051 |
General-purpose aliases (low 32-bits). |
| kARMv8_w17 | 1052 |
General-purpose aliases (low 32-bits). |
| kARMv8_w18 | 1053 |
General-purpose aliases (low 32-bits). |
| kARMv8_w19 | 1054 |
General-purpose aliases (low 32-bits). |
| kARMv8_w20 | 1055 |
General-purpose aliases (low 32-bits). |
| kARMv8_w21 | 1056 |
General-purpose aliases (low 32-bits). |
| kARMv8_w22 | 1057 |
General-purpose aliases (low 32-bits). |
| kARMv8_w23 | 1058 |
General-purpose aliases (low 32-bits). |
| kARMv8_w24 | 1059 |
General-purpose aliases (low 32-bits). |
| kARMv8_w25 | 1060 |
General-purpose aliases (low 32-bits). |
| kARMv8_w26 | 1061 |
General-purpose aliases (low 32-bits). |
| kARMv8_w27 | 1062 |
General-purpose aliases (low 32-bits). |
| kARMv8_w28 | 1063 |
General-purpose aliases (low 32-bits). |
| kARMv8_w29 | 1064 |
General-purpose aliases (low 32-bits). |
| kARMv8_w30 | 1065 |
General-purpose aliases (low 32-bits). |
| kARMv8_x30 | 1066 |
Alias for "LR" above. |
| kARMv8_tpidr | 1067 |
Thread Pointer/ID register |
| kARMv8_fpcr | 1100 |
Control register. |
| kARMv8_fpsr | 1101 |
Status register. |
| kARMv8_v0 | 1200 | -- |
| kARMv8_v1 | 1201 | -- |
| kARMv8_v2 | 1202 | -- |
| kARMv8_v3 | 1203 | -- |
| kARMv8_v4 | 1204 | -- |
| kARMv8_v5 | 1205 | -- |
| kARMv8_v6 | 1206 | -- |
| kARMv8_v7 | 1207 | -- |
| kARMv8_v8 | 1208 | -- |
| kARMv8_v9 | 1209 | -- |
| kARMv8_v10 | 1210 | -- |
| kARMv8_v11 | 1211 | -- |
| kARMv8_v12 | 1212 | -- |
| kARMv8_v13 | 1213 | -- |
| kARMv8_v14 | 1214 | -- |
| kARMv8_v15 | 1215 | -- |
| kARMv8_v16 | 1216 | -- |
| kARMv8_v17 | 1217 | -- |
| kARMv8_v18 | 1218 | -- |
| kARMv8_v19 | 1219 | -- |
| kARMv8_v20 | 1220 | -- |
| kARMv8_v21 | 1221 | -- |
| kARMv8_v22 | 1222 | -- |
| kARMv8_v23 | 1223 | -- |
| kARMv8_v24 | 1224 | -- |
| kARMv8_v25 | 1225 | -- |
| kARMv8_v26 | 1226 | -- |
| kARMv8_v27 | 1227 | -- |
| kARMv8_v28 | 1228 | -- |
| kARMv8_v29 | 1229 | -- |
| kARMv8_v30 | 1230 | -- |
| kARMv8_v31 | 1231 | -- |
| kARMv8_d0 | 1232 |
Double-precision aliases. |
| kARMv8_d1 | 1233 |
Double-precision aliases. |
| kARMv8_d2 | 1234 |
Double-precision aliases. |
| kARMv8_d3 | 1235 |
Double-precision aliases. |
| kARMv8_d4 | 1236 |
Double-precision aliases. |
| kARMv8_d5 | 1237 |
Double-precision aliases. |
| kARMv8_d6 | 1238 |
Double-precision aliases. |
| kARMv8_d7 | 1239 |
Double-precision aliases. |
| kARMv8_d8 | 1240 |
Double-precision aliases. |
| kARMv8_d9 | 1241 |
Double-precision aliases. |
| kARMv8_d10 | 1242 |
Double-precision aliases. |
| kARMv8_d11 | 1243 |
Double-precision aliases. |
| kARMv8_d12 | 1244 |
Double-precision aliases. |
| kARMv8_d13 | 1245 |
Double-precision aliases. |
| kARMv8_d14 | 1246 |
Double-precision aliases. |
| kARMv8_d15 | 1247 |
Double-precision aliases. |
| kARMv8_d16 | 1248 |
Double-precision aliases. |
| kARMv8_d17 | 1249 |
Double-precision aliases. |
| kARMv8_d18 | 1250 |
Double-precision aliases. |
| kARMv8_d19 | 1251 |
Double-precision aliases. |
| kARMv8_d20 | 1252 |
Double-precision aliases. |
| kARMv8_d21 | 1253 |
Double-precision aliases. |
| kARMv8_d22 | 1254 |
Double-precision aliases. |
| kARMv8_d23 | 1255 |
Double-precision aliases. |
| kARMv8_d24 | 1256 |
Double-precision aliases. |
| kARMv8_d25 | 1257 |
Double-precision aliases. |
| kARMv8_d26 | 1258 |
Double-precision aliases. |
| kARMv8_d27 | 1259 |
Double-precision aliases. |
| kARMv8_d28 | 1260 |
Double-precision aliases. |
| kARMv8_d29 | 1261 |
Double-precision aliases. |
| kARMv8_d30 | 1262 |
Double-precision aliases. |
| kARMv8_d31 | 1263 |
Double-precision aliases. |
| kARMv8_s0 | 1264 |
Single-precision aliases. |
| kARMv8_s1 | 1265 |
Single-precision aliases. |
| kARMv8_s2 | 1266 |
Single-precision aliases. |
| kARMv8_s3 | 1267 |
Single-precision aliases. |
| kARMv8_s4 | 1268 |
Single-precision aliases. |
| kARMv8_s5 | 1269 |
Single-precision aliases. |
| kARMv8_s6 | 1270 |
Single-precision aliases. |
| kARMv8_s7 | 1271 |
Single-precision aliases. |
| kARMv8_s8 | 1272 |
Single-precision aliases. |
| kARMv8_s9 | 1273 |
Single-precision aliases. |
| kARMv8_s10 | 1274 |
Single-precision aliases. |
| kARMv8_s11 | 1275 |
Single-precision aliases. |
| kARMv8_s12 | 1276 |
Single-precision aliases. |
| kARMv8_s13 | 1277 |
Single-precision aliases. |
| kARMv8_s14 | 1278 |
Single-precision aliases. |
| kARMv8_s15 | 1279 |
Single-precision aliases. |
| kARMv8_s16 | 1280 |
Single-precision aliases. |
| kARMv8_s17 | 1281 |
Single-precision aliases. |
| kARMv8_s18 | 1282 |
Single-precision aliases. |
| kARMv8_s19 | 1283 |
Single-precision aliases. |
| kARMv8_s20 | 1284 |
Single-precision aliases. |
| kARMv8_s21 | 1285 |
Single-precision aliases. |
| kARMv8_s22 | 1286 |
Single-precision aliases. |
| kARMv8_s23 | 1287 |
Single-precision aliases. |
| kARMv8_s24 | 1289 |
Single-precision aliases. |
| kARMv8_s25 | 1290 |
Single-precision aliases. |
| kARMv8_s26 | 1291 |
Single-precision aliases. |
| kARMv8_s27 | 1292 |
Single-precision aliases. |
| kARMv8_s28 | 1293 |
Single-precision aliases. |
| kARMv8_s29 | 1294 |
Single-precision aliases. |
| kARMv8_s30 | 1295 |
Single-precision aliases. |
| kARMv8_s31 | 1296 |
Single-precision aliases. |
| kARMv8_id_aa64dfr0_el1 | 1300 |
Debug Feature Register 0. |
| kARMv8_mdscr_el1 | 1301 |
Debug System Control Register. |
| kARMv8_dbgbcr0_el1 | 1320 |
HW Registers. |
| kARMv8_dbgbcr1_el1 | 1321 |
HW Registers. |
| kARMv8_dbgbcr2_el1 | 1322 |
HW Registers. |
| kARMv8_dbgbcr3_el1 | 1323 |
HW Registers. |
| kARMv8_dbgbcr4_el1 | 1324 |
HW Registers. |
| kARMv8_dbgbcr5_el1 | 1325 |
HW Registers. |
| kARMv8_dbgbcr6_el1 | 1326 |
HW Registers. |
| kARMv8_dbgbcr7_el1 | 1327 |
HW Registers. |
| kARMv8_dbgbcr8_el1 | 1328 |
HW Registers. |
| kARMv8_dbgbcr9_el1 | 1329 |
HW Registers. |
| kARMv8_dbgbcr10_el1 | 1330 |
HW Registers. |
| kARMv8_dbgbcr11_el1 | 1331 |
HW Registers. |
| kARMv8_dbgbcr12_el1 | 1332 |
HW Registers. |
| kARMv8_dbgbcr13_el1 | 1333 |
HW Registers. |
| kARMv8_dbgbcr14_el1 | 1334 |
HW Registers. |
| kARMv8_dbgbcr15_el1 | 1335 |
HW Registers. |
| kARMv8_dbgbvr0_el1 | 1340 |
HW Registers. |
| kARMv8_dbgbvr1_el1 | 1341 |
HW Registers. |
| kARMv8_dbgbvr2_el1 | 1342 |
HW Registers. |
| kARMv8_dbgbvr3_el1 | 1343 |
HW Registers. |
| kARMv8_dbgbvr4_el1 | 1344 |
HW Registers. |
| kARMv8_dbgbvr5_el1 | 1345 |
HW Registers. |
| kARMv8_dbgbvr6_el1 | 1346 |
HW Registers. |
| kARMv8_dbgbvr7_el1 | 1347 |
HW Registers. |
| kARMv8_dbgbvr8_el1 | 1348 |
HW Registers. |
| kARMv8_dbgbvr9_el1 | 1349 |
HW Registers. |
| kARMv8_dbgbvr10_el1 | 1350 |
HW Registers. |
| kARMv8_dbgbvr11_el1 | 1351 |
HW Registers. |
| kARMv8_dbgbvr12_el1 | 1352 |
HW Registers. |
| kARMv8_dbgbvr13_el1 | 1353 |
HW Registers. |
| kARMv8_dbgbvr14_el1 | 1354 |
HW Registers. |
| kARMv8_dbgbvr15_el1 | 1355 |
HW Registers. |
| kARMv8_dbgwcr0_el1 | 1360 |
HW Watchpoints. |
| kARMv8_dbgwcr1_el1 | 1361 |
HW Watchpoints. |
| kARMv8_dbgwcr2_el1 | 1362 |
HW Watchpoints. |
| kARMv8_dbgwcr3_el1 | 1363 |
HW Watchpoints. |
| kARMv8_dbgwcr4_el1 | 1364 |
HW Watchpoints. |
| kARMv8_dbgwcr5_el1 | 1365 |
HW Watchpoints. |
| kARMv8_dbgwcr6_el1 | 1366 |
HW Watchpoints. |
| kARMv8_dbgwcr7_el1 | 1367 |
HW Watchpoints. |
| kARMv8_dbgwcr8_el1 | 1368 |
HW Watchpoints. |
| kARMv8_dbgwcr9_el1 | 1369 |
HW Watchpoints. |
| kARMv8_dbgwcr10_el1 | 1370 |
HW Watchpoints. |
| kARMv8_dbgwcr11_el1 | 1371 |
HW Watchpoints. |
| kARMv8_dbgwcr12_el1 | 1372 |
HW Watchpoints. |
| kARMv8_dbgwcr13_el1 | 1373 |
HW Watchpoints. |
| kARMv8_dbgwcr14_el1 | 1374 |
HW Watchpoints. |
| kARMv8_dbgwcr15_el1 | 1375 |
HW Watchpoints. |
| kARMv8_dbgwvr0_el1 | 1380 |
HW Watchpoints. |
| kARMv8_dbgwvr1_el1 | 1381 |
HW Watchpoints. |
| kARMv8_dbgwvr2_el1 | 1382 |
HW Watchpoints. |
| kARMv8_dbgwvr3_el1 | 1383 |
HW Watchpoints. |
| kARMv8_dbgwvr4_el1 | 1384 |
HW Watchpoints. |
| kARMv8_dbgwvr5_el1 | 1385 |
HW Watchpoints. |
| kARMv8_dbgwvr6_el1 | 1386 |
HW Watchpoints. |
| kARMv8_dbgwvr7_el1 | 1387 |
HW Watchpoints. |
| kARMv8_dbgwvr8_el1 | 1388 |
HW Watchpoints. |
| kARMv8_dbgwvr9_el1 | 1389 |
HW Watchpoints. |
| kARMv8_dbgwvr10_el1 | 1390 |
HW Watchpoints. |
| kARMv8_dbgwvr11_el1 | 1391 |
HW Watchpoints. |
| kARMv8_dbgwvr12_el1 | 1392 |
HW Watchpoints. |
| kARMv8_dbgwvr13_el1 | 1393 |
HW Watchpoints. |
| kARMv8_dbgwvr14_el1 | 1394 |
HW Watchpoints. |
| kARMv8_dbgwvr15_el1 | 1395 |
HW Watchpoints. |
| kX64_rax | 2000 |
General purpose |
| kX64_rbx | 2001 |
General purpose |
| kX64_rcx | 2002 |
General purpose |
| kX64_rdx | 2003 |
General purpose |
| kX64_rsi | 2004 |
General purpose |
| kX64_rdi | 2005 |
General purpose |
| kX64_rbp | 2006 |
General purpose |
| kX64_rsp | 2007 |
General purpose |
| kX64_r8 | 2008 |
General purpose |
| kX64_r9 | 2009 |
General purpose |
| kX64_r10 | 2010 |
General purpose |
| kX64_r11 | 2011 |
General purpose |
| kX64_r12 | 2012 |
General purpose |
| kX64_r13 | 2013 |
General purpose |
| kX64_r14 | 2014 |
General purpose |
| kX64_r15 | 2015 |
General purpose |
| kX64_rip | 2016 |
General purpose |
| kX64_rflags | 2017 |
General purpose |
| kX64_ah | 2018 |
General purpose aliases. |
| kX64_al | 2019 |
General purpose aliases. |
| kX64_ax | 2020 |
General purpose aliases. |
| kX64_eax | 2021 |
General purpose aliases. |
| kX64_bh | 2022 |
General purpose aliases. |
| kX64_bl | 2023 |
General purpose aliases. |
| kX64_bx | 2024 |
General purpose aliases. |
| kX64_ebx | 2025 |
General purpose aliases. |
| kX64_ch | 2026 |
General purpose aliases. |
| kX64_cl | 2027 |
General purpose aliases. |
| kX64_cx | 2028 |
General purpose aliases. |
| kX64_ecx | 2029 |
General purpose aliases. |
| kX64_dh | 2030 |
General purpose aliases. |
| kX64_dl | 2031 |
General purpose aliases. |
| kX64_dx | 2032 |
General purpose aliases. |
| kX64_edx | 2033 |
General purpose aliases. |
| kX64_si | 2034 |
General purpose aliases. |
| kX64_esi | 2035 |
General purpose aliases. |
| kX64_di | 2036 |
General purpose aliases. |
| kX64_edi | 2037 |
General purpose aliases. |
| kX64_fsbase | 2038 |
Segment registers |
| kX64_gsbase | 2039 |
Segment registers |
| kX64_fcw | 2100 |
Control word. |
| kX64_fsw | 2101 |
Status word. |
| kX64_ftw | 2102 |
Tag word. |
| kX64_fop | 2104 |
Opcode. |
| kX64_fip | 2105 |
Instruction pointer. |
| kX64_fdp | 2106 |
Data pointer. |
| kX64_st0 | 2110 |
The x87/MMX state. For x87 the each "st" entry has the low 80 bits used for |
| kX64_st1 | 2111 |
The x87/MMX state. For x87 the each "st" entry has the low 80 bits used for |
| kX64_st2 | 2112 |
The x87/MMX state. For x87 the each "st" entry has the low 80 bits used for |
| kX64_st3 | 2113 |
The x87/MMX state. For x87 the each "st" entry has the low 80 bits used for |
| kX64_st4 | 2114 |
The x87/MMX state. For x87 the each "st" entry has the low 80 bits used for |
| kX64_st5 | 2115 |
The x87/MMX state. For x87 the each "st" entry has the low 80 bits used for |
| kX64_st6 | 2116 |
The x87/MMX state. For x87 the each "st" entry has the low 80 bits used for |
| kX64_st7 | 2117 |
The x87/MMX state. For x87 the each "st" entry has the low 80 bits used for |
| kX64_mm0 | 2120 |
Although these are technically vector registers, they're aliased on top of the x87 (fp*) |
| kX64_mm1 | 2121 |
Although these are technically vector registers, they're aliased on top of the x87 (fp*) |
| kX64_mm2 | 2122 |
Although these are technically vector registers, they're aliased on top of the x87 (fp*) |
| kX64_mm3 | 2123 |
Although these are technically vector registers, they're aliased on top of the x87 (fp*) |
| kX64_mm4 | 2124 |
Although these are technically vector registers, they're aliased on top of the x87 (fp*) |
| kX64_mm5 | 2125 |
Although these are technically vector registers, they're aliased on top of the x87 (fp*) |
| kX64_mm6 | 2126 |
Although these are technically vector registers, they're aliased on top of the x87 (fp*) |
| kX64_mm7 | 2127 |
Although these are technically vector registers, they're aliased on top of the x87 (fp*) |
| kX64_mxcsr | 2200 |
Control and Status register. |
| kX64_zmm0 | 2400 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm1 | 2401 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm2 | 2402 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm3 | 2403 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm4 | 2404 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm5 | 2405 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm6 | 2406 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm7 | 2407 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm8 | 2408 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm9 | 2409 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm10 | 2410 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm11 | 2411 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm12 | 2412 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm13 | 2413 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm14 | 2414 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm15 | 2415 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm16 | 2416 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm17 | 2417 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm18 | 2418 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm19 | 2419 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm20 | 2420 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm21 | 2421 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm22 | 2422 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm23 | 2423 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm24 | 2424 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm25 | 2425 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm26 | 2426 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm27 | 2427 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm28 | 2428 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm29 | 2429 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm30 | 2430 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_zmm31 | 2431 |
SSE/AVX (512 bit, 128- and 256-bit variants will use the low bits of these). |
| kX64_xmm0 | 2432 |
Vector aliases. |
| kX64_xmm1 | 2433 |
Vector aliases. |
| kX64_xmm2 | 2434 |
Vector aliases. |
| kX64_xmm3 | 2435 |
Vector aliases. |
| kX64_xmm4 | 2436 |
Vector aliases. |
| kX64_xmm5 | 2437 |
Vector aliases. |
| kX64_xmm6 | 2438 |
Vector aliases. |
| kX64_xmm7 | 2439 |
Vector aliases. |
| kX64_xmm8 | 2440 |
Vector aliases. |
| kX64_xmm9 | 2441 |
Vector aliases. |
| kX64_xmm10 | 2442 |
Vector aliases. |
| kX64_xmm11 | 2443 |
Vector aliases. |
| kX64_xmm12 | 2444 |
Vector aliases. |
| kX64_xmm13 | 2445 |
Vector aliases. |
| kX64_xmm14 | 2446 |
Vector aliases. |
| kX64_xmm15 | 2447 |
Vector aliases. |
| kX64_xmm16 | 2448 |
Vector aliases. |
| kX64_xmm17 | 2449 |
Vector aliases. |
| kX64_xmm18 | 2450 |
Vector aliases. |
| kX64_xmm19 | 2451 |
Vector aliases. |
| kX64_xmm20 | 2452 |
Vector aliases. |
| kX64_xmm21 | 2453 |
Vector aliases. |
| kX64_xmm22 | 2454 |
Vector aliases. |
| kX64_xmm23 | 2455 |
Vector aliases. |
| kX64_xmm24 | 2456 |
Vector aliases. |
| kX64_xmm25 | 2457 |
Vector aliases. |
| kX64_xmm26 | 2458 |
Vector aliases. |
| kX64_xmm27 | 2459 |
Vector aliases. |
| kX64_xmm28 | 2460 |
Vector aliases. |
| kX64_xmm29 | 2461 |
Vector aliases. |
| kX64_xmm30 | 2462 |
Vector aliases. |
| kX64_xmm31 | 2463 |
Vector aliases. |
| kX64_ymm0 | 2464 |
Vector aliases. |
| kX64_ymm1 | 2465 |
Vector aliases. |
| kX64_ymm2 | 2466 |
Vector aliases. |
| kX64_ymm3 | 2467 |
Vector aliases. |
| kX64_ymm4 | 2468 |
Vector aliases. |
| kX64_ymm5 | 2469 |
Vector aliases. |
| kX64_ymm6 | 2470 |
Vector aliases. |
| kX64_ymm7 | 2471 |
Vector aliases. |
| kX64_ymm8 | 2472 |
Vector aliases. |
| kX64_ymm9 | 2473 |
Vector aliases. |
| kX64_ymm10 | 2474 |
Vector aliases. |
| kX64_ymm11 | 2475 |
Vector aliases. |
| kX64_ymm12 | 2476 |
Vector aliases. |
| kX64_ymm13 | 2477 |
Vector aliases. |
| kX64_ymm14 | 2478 |
Vector aliases. |
| kX64_ymm15 | 2479 |
Vector aliases. |
| kX64_ymm16 | 2480 |
Vector aliases. |
| kX64_ymm17 | 2481 |
Vector aliases. |
| kX64_ymm18 | 2482 |
Vector aliases. |
| kX64_ymm19 | 2483 |
Vector aliases. |
| kX64_ymm20 | 2484 |
Vector aliases. |
| kX64_ymm21 | 2485 |
Vector aliases. |
| kX64_ymm22 | 2486 |
Vector aliases. |
| kX64_ymm23 | 2487 |
Vector aliases. |
| kX64_ymm24 | 2488 |
Vector aliases. |
| kX64_ymm25 | 2489 |
Vector aliases. |
| kX64_ymm26 | 2490 |
Vector aliases. |
| kX64_ymm27 | 2491 |
Vector aliases. |
| kX64_ymm28 | 2492 |
Vector aliases. |
| kX64_ymm29 | 2493 |
Vector aliases. |
| kX64_ymm30 | 2494 |
Vector aliases. |
| kX64_ymm31 | 2495 |
Vector aliases. |
| kX64_dr0 | 2600 |
Debug. |
| kX64_dr1 | 2601 |
Debug. |
| kX64_dr2 | 2602 |
Debug. |
| kX64_dr3 | 2603 |
Debug. |
| kX64_dr6 | 2606 |
dr4 is reserved. |
| kX64_dr7 | 2607 |
dr4 is reserved. |
| kRiscv64_zero | 3000 |
General purpose |
| kRiscv64_ra | 3001 |
General purpose |
| kRiscv64_sp | 3002 |
General purpose |
| kRiscv64_gp | 3003 |
General purpose |
| kRiscv64_tp | 3004 |
General purpose |
| kRiscv64_t0 | 3005 |
General purpose |
| kRiscv64_t1 | 3006 |
General purpose |
| kRiscv64_t2 | 3007 |
General purpose |
| kRiscv64_s0 | 3008 |
General purpose |
| kRiscv64_s1 | 3009 |
General purpose |
| kRiscv64_a0 | 3010 |
General purpose |
| kRiscv64_a1 | 3011 |
General purpose |
| kRiscv64_a2 | 3012 |
General purpose |
| kRiscv64_a3 | 3013 |
General purpose |
| kRiscv64_a4 | 3014 |
General purpose |
| kRiscv64_a5 | 3015 |
General purpose |
| kRiscv64_a6 | 3016 |
General purpose |
| kRiscv64_a7 | 3017 |
General purpose |
| kRiscv64_s2 | 3018 |
General purpose |
| kRiscv64_s3 | 3019 |
General purpose |
| kRiscv64_s4 | 3020 |
General purpose |
| kRiscv64_s5 | 3021 |
General purpose |
| kRiscv64_s6 | 3022 |
General purpose |
| kRiscv64_s7 | 3023 |
General purpose |
| kRiscv64_s8 | 3024 |
General purpose |
| kRiscv64_s9 | 3025 |
General purpose |
| kRiscv64_s10 | 3026 |
General purpose |
| kRiscv64_s11 | 3027 |
General purpose |
| kRiscv64_t3 | 3028 |
General purpose |
| kRiscv64_t4 | 3029 |
General purpose |
| kRiscv64_t5 | 3030 |
General purpose |
| kRiscv64_t6 | 3031 |
General purpose |
| kRiscv64_x0 | 3032 |
General purpose aliases |
| kRiscv64_x1 | 3033 |
General purpose aliases |
| kRiscv64_x2 | 3034 |
General purpose aliases |
| kRiscv64_x3 | 3035 |
General purpose aliases |
| kRiscv64_x4 | 3036 |
General purpose aliases |
| kRiscv64_x5 | 3037 |
General purpose aliases |
| kRiscv64_x6 | 3038 |
General purpose aliases |
| kRiscv64_x7 | 3039 |
General purpose aliases |
| kRiscv64_x8 | 3040 |
General purpose aliases |
| kRiscv64_x9 | 3041 |
General purpose aliases |
| kRiscv64_x10 | 3042 |
General purpose aliases |
| kRiscv64_x11 | 3043 |
General purpose aliases |
| kRiscv64_x12 | 3044 |
General purpose aliases |
| kRiscv64_x13 | 3045 |
General purpose aliases |
| kRiscv64_x14 | 3046 |
General purpose aliases |
| kRiscv64_x15 | 3047 |
General purpose aliases |
| kRiscv64_x16 | 3048 |
General purpose aliases |
| kRiscv64_x17 | 3049 |
General purpose aliases |
| kRiscv64_x18 | 3050 |
General purpose aliases |
| kRiscv64_x19 | 3051 |
General purpose aliases |
| kRiscv64_x20 | 3052 |
General purpose aliases |
| kRiscv64_x21 | 3053 |
General purpose aliases |
| kRiscv64_x22 | 3054 |
General purpose aliases |
| kRiscv64_x23 | 3055 |
General purpose aliases |
| kRiscv64_x24 | 3056 |
General purpose aliases |
| kRiscv64_x25 | 3057 |
General purpose aliases |
| kRiscv64_x26 | 3058 |
General purpose aliases |
| kRiscv64_x27 | 3059 |
General purpose aliases |
| kRiscv64_x28 | 3060 |
General purpose aliases |
| kRiscv64_x29 | 3061 |
General purpose aliases |
| kRiscv64_x30 | 3062 |
General purpose aliases |
| kRiscv64_x31 | 3063 |
General purpose aliases |
| kRiscv64_pc | 3064 |
PC |
| kRiscv64_fcsr | 3100 |
FP Control and Status Register |
| kRiscv64_ft0 | 3101 |
FP, not hooked up yet. |
| kRiscv64_ft1 | 3102 |
FP, not hooked up yet. |
| kRiscv64_ft2 | 3103 |
FP, not hooked up yet. |
| kRiscv64_ft3 | 3104 |
FP, not hooked up yet. |
| kRiscv64_ft4 | 3105 |
FP, not hooked up yet. |
| kRiscv64_ft5 | 3106 |
FP, not hooked up yet. |
| kRiscv64_ft6 | 3107 |
FP, not hooked up yet. |
| kRiscv64_ft7 | 3108 |
FP, not hooked up yet. |
| kRiscv64_fs0 | 3109 |
FP, not hooked up yet. |
| kRiscv64_fs1 | 3110 |
FP, not hooked up yet. |
| kRiscv64_fa0 | 3111 |
FP, not hooked up yet. |
| kRiscv64_fa1 | 3112 |
FP, not hooked up yet. |
| kRiscv64_fa2 | 3113 |
FP, not hooked up yet. |
| kRiscv64_fa3 | 3114 |
FP, not hooked up yet. |
| kRiscv64_fa4 | 3115 |
FP, not hooked up yet. |
| kRiscv64_fa5 | 3116 |
FP, not hooked up yet. |
| kRiscv64_fa6 | 3117 |
FP, not hooked up yet. |
| kRiscv64_fa7 | 3118 |
FP, not hooked up yet. |
| kRiscv64_fs2 | 3119 |
FP, not hooked up yet. |
| kRiscv64_fs3 | 3120 |
FP, not hooked up yet. |
| kRiscv64_fs4 | 3121 |
FP, not hooked up yet. |
| kRiscv64_fs5 | 3122 |
FP, not hooked up yet. |
| kRiscv64_fs6 | 3123 |
FP, not hooked up yet. |
| kRiscv64_fs7 | 3124 |
FP, not hooked up yet. |
| kRiscv64_fs8 | 3125 |
FP, not hooked up yet. |
| kRiscv64_fs9 | 3126 |
FP, not hooked up yet. |
| kRiscv64_fs10 | 3127 |
FP, not hooked up yet. |
| kRiscv64_fs11 | 3128 |
FP, not hooked up yet. |
| kRiscv64_ft8 | 3129 |
FP, not hooked up yet. |
| kRiscv64_ft9 | 3130 |
FP, not hooked up yet. |
| kRiscv64_ft10 | 3131 |
FP, not hooked up yet. |
| kRiscv64_ft11 | 3132 |
FP, not hooked up yet. |
| kRiscv64_f0 | 3133 |
FP alias |
| kRiscv64_f1 | 3134 |
FP alias |
| kRiscv64_f2 | 3135 |
FP alias |
| kRiscv64_f3 | 3136 |
FP alias |
| kRiscv64_f4 | 3137 |
FP alias |
| kRiscv64_f5 | 3138 |
FP alias |
| kRiscv64_f6 | 3139 |
FP alias |
| kRiscv64_f7 | 3140 |
FP alias |
| kRiscv64_f8 | 3141 |
FP alias |
| kRiscv64_f9 | 3142 |
FP alias |
| kRiscv64_f10 | 3143 |
FP alias |
| kRiscv64_f11 | 3144 |
FP alias |
| kRiscv64_f12 | 3145 |
FP alias |
| kRiscv64_f13 | 3146 |
FP alias |
| kRiscv64_f14 | 3147 |
FP alias |
| kRiscv64_f15 | 3148 |
FP alias |
| kRiscv64_f16 | 3149 |
FP alias |
| kRiscv64_f17 | 3150 |
FP alias |
| kRiscv64_f18 | 3151 |
FP alias |
| kRiscv64_f19 | 3152 |
FP alias |
| kRiscv64_f20 | 3153 |
FP alias |
| kRiscv64_f21 | 3154 |
FP alias |
| kRiscv64_f22 | 3155 |
FP alias |
| kRiscv64_f23 | 3156 |
FP alias |
| kRiscv64_f24 | 3157 |
FP alias |
| kRiscv64_f25 | 3158 |
FP alias |
| kRiscv64_f26 | 3159 |
FP alias |
| kRiscv64_f27 | 3160 |
FP alias |
| kRiscv64_f28 | 3161 |
FP alias |
| kRiscv64_f29 | 3162 |
FP alias |
| kRiscv64_f30 | 3163 |
FP alias |
| kRiscv64_f31 | 3164 |
FP alias |
Defined at line 12 of file ../../src/developer/debug/shared/register_id.h
enum class Platform : uint32_t
| Name | Value |
|---|---|
| kUnknown | 0 |
| kFuchsia | 1 |
| kLinux | 2 |
| kMac | 3 |
Only append to this list, the values are encoded in the IPC protocol which has stability
guarantees.
Defined at line 14 of file ../../src/developer/debug/shared/platform.h
enum class Arch : uint32_t
| Name | Value |
|---|---|
| kUnknown | 0 |
| kX64 | 1 |
| kArm64 | 2 |
| kRiscv64 | 3 |
Only append to this list, the values are encoded in the IPC protocol which has stability
guarantees.
Defined at line 14 of file ../../src/developer/debug/shared/arch.h
enum class SpecialRegisterType
| Name | Value | Comments |
|---|---|---|
| kNone | 0 | -- |
| kIP | 1 |
Instruction Pointer |
| kSP | 2 |
Stack Pointer |
| kTP | 3 |
Thread Pointer |
Defined at line 25 of file ../../src/developer/debug/shared/register_info.h
enum class WatchType : uint32_t
| Name | Value |
|---|---|
| kChannel | 0 |
| kFdio | 1 |
| kProcessExceptions | 2 |
| kJobExceptions | 3 |
| kSocket | 4 |
| kEventPair | 5 |
Defined at line 30 of file ../../src/developer/debug/shared/message_loop_fuchsia.h
enum class RegisterFormat
| Name | Value | Comments |
|---|---|---|
| kGeneral | 0 |
General register that might hold any integer or an address. |
| kFloat | 1 |
Floating-point number. |
| kVector | 2 |
Vector registers that hold multiple values. |
| kVoidAddress | 3 |
Registers that point to void*. |
| kWordAddress | 4 |
Registers that point to uint64_t. |
| kSpecial | 5 |
Things like flag registers that neither hold addresses nor numbers. |
Note that we separate out "void" addresses and "word" addresses so the debugger frontend can
assign types to register values when appropriate.
Defined at line 34 of file ../../src/developer/debug/shared/register_info.h
enum class LogCategory
| Name | Value | Comments |
|---|---|---|
| kAgent | 0 |
Associated with general Debug Agent events. |
| kArchArm64 | 1 |
Associated with low-level arm64 events. |
| kArchx64 | 2 |
Associated with low-level x64 events. |
| kBreakpoint | 3 |
Associated with the lifetime of breakpoints. |
| kJob | 4 |
Associated with job events and filtering. |
| kMessageLoop | 5 |
Tracking of events within the message loop. |
| kProcess | 6 |
Mainly tracks the lifetime of a process. |
| kRemoteAPI | 7 |
Log the received and sent remote API calls. |
| kSession | 8 |
Associated with the zxdb client session. |
| kSetting | 9 |
Associated with debugging the setting stores. |
| kTest | 10 |
Associated with logging on tests. |
| kTiming | 11 |
Will output all TIME_BLOCK() entries. |
| kThread | 12 |
Associated with threads (exception, state, etc.) |
| kWatchpoint | 13 |
Associated with watchpoints. |
| kWorkerPool | 14 |
Associated with the multithreaded work pool. |
| kDebugAdapter | 15 |
Associated with debug adapter. |
| kBuildIDIndex | 16 |
Associated with the build ID index. |
| kProcessSymbols | 17 |
Associated with process symbols. |
| kModuleSymbols | 18 |
Associated with module symbols. |
| kSystemSymbols | 19 |
Associated with system symbols. |
| kDownloadManager | 20 |
Associated with the download manager. |
| kAll | 21 |
All the previous categories are enabled. |
| kNone | 22 |
Used for any log statements for which the category could not be found. |
Log Categories ----------------------------------------------------------------------------------
Defined at line 35 of file ../../src/developer/debug/shared/logging/debug.h
enum class LogSeverity
| Name | Value |
|---|---|
| kInfo | 0 |
| kWarn | 1 |
| kError | 2 |
Implementation ----------------------------------------------------------------------------------
Defined at line 50 of file ../../src/developer/debug/shared/logging/logging.h
enum class RegisterCategory : uint32_t
| Name | Value | Comments |
|---|---|---|
| kNone | 0 | -- |
| kGeneral | 1 | -- |
| kFloatingPoint | 2 | -- |
| kVector | 3 | -- |
| kDebug | 4 | -- |
| kLast | 5 |
Not an element, for marking the max size. |
Categories --------------------------------------------------------------------------------------
Defined at line 133 of file ../../src/developer/debug/shared/register_info.h
Records
-
class AddressRange -
class AddressRangeBeginCmp -
class AddressRangeEndAddrCmp -
class AddressRangeEqualityCmp -
class AddressRange_Contains_Test -
class AddressRange_InRange_Test -
class AddressRange_Overlaps_Test -
class AddressRange_Union_Test -
class BufferedBidiPipe -
class BufferedFD -
class BufferedStream -
class BufferedZxSocket -
class ChannelExceptionHandler -
class ChannelWatcher -
class DebugLogStatement -
class EventPairWatcher -
class ExceptionHandler -
class FileLineFunction -
class HandleInfo_CachePolicyToString_Test -
class HandleInfo_HandleRightsToStrings_Test -
class HandleInfo_HandleTypeToString_Test -
class HandleInfo_VmoFlagsToStrings_Test -
class LargestLessOrEqual_Container_Test -
class LargestLessOrEqual_Duplicates_Test -
class LargestLessOrEqual_Empty_Test -
class LargestLessOrEqual_One_Test -
class LargestLessOrEqual_Several_Test -
class LogBackend -
class LogStatement -
class MessageLoop -
class MessageLoopContext -
class MessageLoopFuchsia -
class MessageLoopLinux -
class MessageLoopLinux_SigChild_Test -
class MessageLoopPoll -
class MessageLoop_AbandonPromise_Test -
class MessageLoop_CorrectCleanup_Test -
class MessageLoop_DrainChannelBeforeClose_Test -
class MessageLoop_DuplicateSuspendedPromise_Test -
class MessageLoop_PostPendingTaskQuit_Test -
class MessageLoop_PostQuit_Test -
class MessageLoop_RunNestedPromiseSync_Test -
class MessageLoop_RunPromiseSync_Test -
class MessageLoop_RunUntilNoTasks_EmptyQueue_Test -
class MessageLoop_RunUntilNoTasks_Test -
class MessageLoop_SuspendPromise_Test -
class MessageLoop_TimerQuitFromLoop_Test -
class MessageLoop_TimerQuit_Test -
class MessageLoop_WatchPipeFD_Test -
class MessageLoop_ZirconChannel_Test -
class MessageLoop_ZirconSocket_Test -
class MockMemory -
class PeeredObjectWatcher -
class Regex -
class Regex_CaseInsensitive_Test -
class Regex_CaseSensitive_Test -
class RegisterDesc_DWARFToRegisterInfo_Arm_Test -
class RegisterDesc_DWARFToRegisterInfo_Riscv_Test -
class RegisterDesc_DWARFToRegisterInfo_x64_Test -
class RegisterDesc_GetRegisterData_Test -
class RegisterIDToCategory_ARMv8_Test -
class RegisterIDToCategory_Border_Test -
class RegisterIDToCategory_Riscv64_Test -
class RegisterIDToCategory_x64_Test -
class RegisterIDToString_Registers_Test -
class RegisterInfo -
class RegisterValue -
class Result -
class Serializer -
class SignalHandler -
class SocketWatcher -
class Status -
class StreamBuffer -
class StreamBuffer_Read_Test -
class StreamBuffer_Write_Test -
class StringUtil_StringContains_Test -
class StringUtil_StringEndsWith_Test -
class StringUtil_StringStartsWith_Test -
class TestStreamBuffer -
class TestWithLoop -
class ZirconExceptionWatcher
Functions
-
bool StringStartsWith (std::string_view str, std::string_view begins_with)Returns true if the first argument begins in exactly the second.
Defined at line 11 of file ../../src/developer/debug/shared/string_util.cc
-
const char * ExceptionTypeToString (uint32_t type)Defined at line 9 of file ../../src/developer/debug/shared/zircon_utils.cc
-
bool IsDebuggerAttached ()Return whether there's a debugger attached to the current process.
Defined at line 13 of file ../../src/lib/debug/debug.cc
-
RegisterValue CreateRegisterWithTestData (RegisterID id, size_t length)Creates a register with a data pattern within it. The pattern will 0x010203 ... (little-endian).
Defined at line 9 of file ../../src/developer/debug/shared/register_test_support.cc
-
const char * ZxStatusToString (zx_status_t status)Defined at line 13 of file ../../src/developer/debug/shared/zx_status.cc
-
bool StringEndsWith (std::string_view str, std::string_view ends_with)Returns true if the first argument ends in exactly the second.
Defined at line 15 of file ../../src/developer/debug/shared/string_util.cc
-
std::string HandleTypeToString (uint32_t handle_type)Converts a uint32_t handle type to a string. Returns "<unknown>" on failure.
Defined at line 9 of file ../../src/developer/debug/shared/handle_info.cc
-
bool StringContains (std::string_view haystack, std::string_view needle)Defined at line 19 of file ../../src/developer/debug/shared/string_util.cc
-
Platform CurrentSystemPlatform ()Returns the platform of the currently executing code. Note: for the zxdb frontend, this will tell
you the platform that the zxdb frontend is running on, not the platform being debugged.
Defined at line 9 of file ../../src/developer/debug/shared/platform.cc
-
std::string CachePolicyToString (uint32_t cache_policy)Decodes a ZX_CACHE_POLICY_* enum.
Defined at line 75 of file ../../src/developer/debug/shared/handle_info.cc
-
const char * PlatformToString (Platform p)Defined at line 21 of file ../../src/developer/debug/shared/platform.cc
-
void WaitForDebugger (uint32_t seconds)Wait until a debugger attaches, and then issue a breakpoint. The debugger can
continue the execution.
If there's no debugger attached within |seconds| seconds, the breakpoint will
still be issued and the process will crash.
Defined at line 23 of file ../../src/lib/debug/debug.cc
-
const char * ArchToString (Arch a)Defined at line 9 of file ../../src/developer/debug/shared/arch.cc
-
std::vector<std::string> HandleRightsToStrings (uint32_t handle_rights)Returns a vector of strings, one for each right set.
Defined at line 90 of file ../../src/developer/debug/shared/handle_info.cc
-
void SetDebugLogging (bool )Activate this flag to activate debug output.
Defined at line 115 of file ../../src/developer/debug/shared/logging/debug.cc
-
bool IsDebugLoggingActive ()Defined at line 111 of file ../../src/developer/debug/shared/logging/debug.cc
-
void BreakIntoDebuggerIfAttached ()If a debugger is attached, trigger a breakpoint. Do nothing otherwise.
Defined at line 31 of file ../../src/lib/debug/debug.cc
-
const char * PlatformProcessIdName (Platform p, bool caps)Returns the string to use for a process or thread ID on the given platform. When caps is set, the
result will be all caps, otherwise it will be all lowercase.
Defined at line 35 of file ../../src/developer/debug/shared/platform.cc
-
std::vector<std::string> VmoFlagsToStrings (uint32_t flags)Converts a bitmask of ZX_INFO_VMO_* to a list of strings.
Defined at line 128 of file ../../src/developer/debug/shared/handle_info.cc
-
const char * PlatformThreadIdName (Platform p, bool caps)Defined at line 47 of file ../../src/developer/debug/shared/platform.cc
-
Status ZxStatus (zx_status_t s)If there is an error and no message is given, the ZX_* constant will be queried and used.
If given, the message will be used for most display purposes instead of the platform value, so
if the value is important and you use a custom message, it should be manually included.
These are split rather than using default values to avoid creating empty std::strings in the
common case.
Defined at line 35 of file ../../src/developer/debug/shared/status.cc
-
Status ZxStatus (zx_status_t s, std::string msg)Defined at line 48 of file ../../src/developer/debug/shared/status.cc
-
Status ErrnoStatus (int en)As with the ZxStatus version above, this will automatically use the strerror() string if no
message is given.
Defined at line 75 of file ../../src/developer/debug/shared/status.cc
-
Status ErrnoStatus (int en, std::string msg)Defined at line 82 of file ../../src/developer/debug/shared/status.cc
-
const char * WatchTypeToString (WatchType )Defined at line 533 of file ../../src/developer/debug/shared/message_loop_fuchsia.cc
-
bool operator< (const FileLineFunction & a, const FileLineFunction & b)Comparison function for use in set and map.
Defined at line 12 of file ../../src/developer/debug/shared/logging/file_line_function.cc
-
bool operator== (const FileLineFunction & a, const FileLineFunction & b)Defined at line 28 of file ../../src/developer/debug/shared/logging/file_line_function.cc
-
bool operator!= (const FileLineFunction & a, const FileLineFunction & b)Defined at line 32 of file ../../src/developer/debug/shared/logging/file_line_function.cc
-
template <class BidirectionalIterator,class T,class CompareLess,class CompareEqual>BidirectionalIterator LargestLessOrEqual (BidirectionalIteratorfirst,BidirectionalIteratorlast,const T &val,CompareLessless,CompareEqualequals)Returns an iterator pointing to the largest element in [first, last) less than or equal to the
given |val|. As with std::lower_bound, the range [first, last) must be sorted according to
the |less| comparator.
If the query matches exactly a sequence of equal items, the first duplicate will be returned. If
the query value matches a sequence of duplicates and does not exactly equal to them (it's
returning the previous item), the last of the sequence will be returned.
For example, if you had a sorted range of addresses and you want to know which one begins the
range which an address falls into:
std::vector
<AddressRecord
> ranges;
int64_t address;
auto found = LargestLessOrEqual(
ranges.begin(), ranges.end(), address,
[](const AddressRecord
&
record, uint64_t addr) { return record.addr
<
addr; },
[](const AddressRecord
&
record, uint64_t addr) { return record.addr == addr; });
For simple types, you can pass |std::less
<T
>()| and |std::equal_to
<T
>()| from
<functional
> for
the comparators.
Defined at line 34 of file ../../src/developer/debug/shared/largest_less_or_equal.h
-
const RegisterInfo * InfoForRegister (RegisterID id)Defined at line 603 of file ../../src/developer/debug/shared/register_info.cc
-
const RegisterInfo * InfoForRegister (Arch arch, const std::string & name)Defined at line 620 of file ../../src/developer/debug/shared/register_info.cc
-
const char * RegisterIDToString (RegisterID )Defined at line 686 of file ../../src/developer/debug/shared/register_info.cc
-
RegisterID StringToRegisterID (Arch arch, const std::string & )Defined at line 697 of file ../../src/developer/debug/shared/register_info.cc
-
RegisterID GetSpecialRegisterID (Arch , SpecialRegisterType )Returns the register ID for the given special register.
Defined at line 637 of file ../../src/developer/debug/shared/register_info.cc
-
SpecialRegisterType GetSpecialRegisterType (RegisterID id)Returns the special register type for a register ID.
Defined at line 715 of file ../../src/developer/debug/shared/register_info.cc
-
const RegisterInfo * DWARFToRegisterInfo (Arch , uint32_t dwarf_reg_id)Converts the ID number used by DWARF to our register info. Returns null if not found.
Defined at line 734 of file ../../src/developer/debug/shared/register_info.cc
-
Arch GetArchForRegisterID (RegisterID )Find out what arch a register ID belongs to
Defined at line 704 of file ../../src/developer/debug/shared/register_info.cc
-
bool IsGeneralRegister (RegisterID )Returns true if the given register is a "general" register. General
registers are sent as part of the unwind frame data. Other registers must
be requested specially from the target.
Defined at line 753 of file ../../src/developer/debug/shared/register_info.cc
-
cpp20::span<const uint8_t> GetRegisterData (const std::vector<RegisterValue> & regs, RegisterID id)Gets the data for the given register from the array.
This does two things. It searches for either the requested register or the canonical register.
If it's a different canonical register (like you're asking for the a 32 bits pseudoregister out
of a 64 bit register), the relevant bits will be extracted.
If found, the return value will be the range of data within the data owned by |regs|
corresponding to the requested register. If the source data is truncated, the result will be
truncated also so it may have less data than expected.
If the register is not found, the returned view will be empty.
Defined at line 817 of file ../../src/developer/debug/shared/register_info.cc
-
void SetLogCategories (std::initializer_list<LogCategory> )Defined at line 123 of file ../../src/developer/debug/shared/logging/debug.cc
-
std::string DR6ToString (uint64_t dr6)Debug functions -------------------------------------------------------------
Defined at line 16 of file ../../src/developer/debug/shared/arch_x86.cc
-
Status::Type MapFuchsiaError (zx_status_t * status)Map some Fuchsia errors to their cross-platform equivalents. Resets the status to 0 if a
non-platform error was generated.
Defined at line 16 of file ../../src/developer/debug/shared/status.cc
-
std::string DR7ToString (uint64_t dr7)Defined at line 24 of file ../../src/developer/debug/shared/arch_x86.cc
-
const char * RegisterCategoryToString (RegisterCategory )Defined at line 762 of file ../../src/developer/debug/shared/register_info.cc
-
RegisterCategory RegisterIDToCategory (RegisterID )Defined at line 780 of file ../../src/developer/debug/shared/register_info.cc
-
bool CreateLocalNonBlockingPipe (fbl::unique_fd * out_end, fbl::unique_fd * in_end)Creates a nonblocking temporary pipe pipe and assigns the two ends of it to the two out
parameters. Returns true on success.
Defined at line 24 of file ../../src/developer/debug/shared/message_loop.cc
-
Status::Type MapErrnoError (int * en)Map some errno values to their cross-platform equivalents. Resets the status to 0 if a
non-platform error was generated.
Defined at line 59 of file ../../src/developer/debug/shared/status.cc