Skip to content

Commit 706c9da

Browse files
authored
[compiler-rt] Fix GH-112254 DumpAllRegs for win arm64. (#112305)
1 parent a1463ca commit 706c9da

File tree

1 file changed

+5
-33
lines changed

1 file changed

+5
-33
lines changed

compiler-rt/lib/sanitizer_common/sanitizer_win.cpp

Lines changed: 5 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1070,39 +1070,11 @@ void SignalContext::DumpAllRegisters(void *context) {
10701070
Printf("\n");
10711071
# elif defined(_M_ARM64)
10721072
Report("Register values:\n");
1073-
Printf("x0 = %llx ", ctx->X0);
1074-
Printf("x1 = %llx ", ctx->X1);
1075-
Printf("x2 = %llx ", ctx->X2);
1076-
Printf("x3 = %llx ", ctx->X3);
1077-
Printf("x4 = %llx ", ctx->X4);
1078-
Printf("x5 = %llx ", ctx->X5);
1079-
Printf("x6 = %llx ", ctx->X6);
1080-
Printf("x7 = %llx ", ctx->X7);
1081-
Printf("x8 = %llx ", ctx->X8);
1082-
Printf("x9 = %llx ", ctx->X9);
1083-
Printf("x10 = %llx ", ctx->X10);
1084-
Printf("x11 = %llx ", ctx->X11);
1085-
Printf("x12 = %llx ", ctx->X12);
1086-
Printf("x13 = %llx ", ctx->X13);
1087-
Printf("x14 = %llx ", ctx->X14);
1088-
Printf("x15 = %llx ", ctx->X15);
1089-
Printf("x16 = %llx ", ctx->X16);
1090-
Printf("x17 = %llx ", ctx->X17);
1091-
Printf("x18 = %llx ", ctx->X18);
1092-
Printf("x19 = %llx ", ctx->X19);
1093-
Printf("x20 = %llx ", ctx->X20);
1094-
Printf("x21 = %llx ", ctx->X21);
1095-
Printf("x22 = %llx ", ctx->X22);
1096-
Printf("x23 = %llx ", ctx->X23);
1097-
Printf("x24 = %llx ", ctx->X24);
1098-
Printf("x25 = %llx ", ctx->X25);
1099-
Printf("x26 = %llx ", ctx->X26);
1100-
Printf("x27 = %llx ", ctx->X27);
1101-
Printf("x28 = %llx ", ctx->X28);
1102-
Printf("x29 = %llx ", ctx->X29);
1103-
Printf("x30 = %llx ", ctx->X30);
1104-
Printf("x31 = %llx ", ctx->X31);
1105-
Printf("\n");
1073+
for (int i = 0; i <= 30; i++) {
1074+
Printf("x%d%s = %llx", i < 10 ? " " : "", ctx->X[i]);
1075+
if (i % 4 == 3)
1076+
Printf("\n");
1077+
}
11061078
# else
11071079
// TODO
11081080
(void)ctx;

0 commit comments

Comments
 (0)