Hello, List!
I've found that while running Aarch64 assembler programs on QEMU with
"-d in_asm" option enabled I receive not complete logs. For example, on
the following assembler program which contains a loop :
[assembler]
.globl _start
bl _start
_start:
label1:
movz x0, 10
subs x0, x0, 1
b.eq label2
b label1
label2:
hlt #57005
[/assembler]
I receive the following log which does not include "loop unrolling":
[log]
----------------
IN:
0x0000000000000000: 94000001 bl #+0x4 (addr 0x4)
----------------
IN:
0x0000000000000004: d2800140 mov x0, #0xa
----------------
IN:
0x0000000000000008: f1000400 subs x0, x0, #0x1 (1)
----------------
IN:
0x000000000000000c: 54000040 b.eq #+0x8 (addr 0x14)
----------------
IN:
0x0000000000000010: 17fffffd b #-0xc (addr 0x4)
[/log]
It seems that QEMU skips some internal instructions when generates
"in_asm" log. How to eliminate this?
Thanks in advance!
Sincerely yours,
Sergey Smolov