diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2018-02-04 13:22:46 -0800 |
---|---|---|
committer | Max Filippov <jcmvbkbc@gmail.com> | 2018-03-13 11:30:21 -0700 |
commit | b9317a2a69ac78f79ee4965037c8eaa407ed0724 (patch) | |
tree | be67a2bf81f1425464cb3670973b9850ded27ce6 /target/xtensa/translate.c | |
parent | b55b1afda942306e4e40420aced1524bd83ba16d (diff) | |
download | qemu-b9317a2a69ac78f79ee4965037c8eaa407ed0724.tar.gz |
target/xtensa: mark register windows in the dump
Add arrows that mark beginning of register windows and position of the
current window in the windowed register file.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Diffstat (limited to 'target/xtensa/translate.c')
-rw-r--r-- | target/xtensa/translate.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/target/xtensa/translate.c b/target/xtensa/translate.c index 3ad86d4508..5969d7c3cd 100644 --- a/target/xtensa/translate.c +++ b/target/xtensa/translate.c @@ -1219,8 +1219,13 @@ void xtensa_cpu_dump_state(CPUState *cs, FILE *f, cpu_fprintf(f, "\n"); for (i = 0; i < env->config->nareg; ++i) { - cpu_fprintf(f, "AR%02d=%08x%c", i, env->phys_regs[i], - (i % 4) == 3 ? '\n' : ' '); + cpu_fprintf(f, "AR%02d=%08x ", i, env->phys_regs[i]); + if (i % 4 == 3) { + bool ws = (env->sregs[WINDOW_START] & (1 << (i / 4))) != 0; + bool cw = env->sregs[WINDOW_BASE] == i / 4; + + cpu_fprintf(f, "%c%c\n", ws ? '<' : ' ', cw ? '=' : ' '); + } } if (xtensa_option_enabled(env->config, XTENSA_OPTION_FP_COPROCESSOR)) { |