• P
    disas: arm: QOMify target specific disas setup · 48440620
    Peter Crosthwaite 提交于
    Move the target_disas() ARM specifics to the QOM disas_set_info hook
    and delete the ARM specific code in disas.c.
    
    This has the extra advantage of the more fully featured target_disas()
    implementation now applying to monitor_disas().
    
    Currently, target_disas() has multi-endian, thumb and AArch64
    support whereas the existing monitor_disas() support only has vanilla
    AA32 support.
    
    E.G. Running an AA64 linux kernel the following -d in_asm disas happens
    (taget_disas()):
    
    IN:
    0x0000000040000000:  580000c0      ldr x0, pc+24 (addr 0x40000018)
    0x0000000040000004:  aa1f03e1      mov x1, xzr
    
    However before this patch, disasing the same from the monitor:
    
    (qemu) xp/i 0x40000000
    0x0000000040000000:  580000c0      stmdapl  r0, {r6, r7}
    
    After this patch:
    (qemu) xp/i 0x40000000
    0x0000000040000000:  580000c0      ldr x0, pc+24 (addr 0x40000018)
    Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
    Signed-off-by: NPeter Crosthwaite <crosthwaite.peter@gmail.com>
    Signed-off-by: NAndreas Färber <afaerber@suse.de>
    48440620
cpu.c 45.0 KB