[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 0/3] Update capstone module

From: Philippe Mathieu-Daudé
Subject: Re: [PATCH v3 0/3] Update capstone module
Date: Fri, 3 Jan 2020 08:16:37 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2

Hi Richard,

On 10/15/19 7:51 PM, Richard Henderson wrote:
Tested vs centos7, fedora30, and bionic (with and without
system capstone installed).

Change noted while testing:

* Raw byte dumped as hexa

  before: no
  after:  dumped by 16-bit


* Address format

  before: "0x" TARGET_FMT_lx (16 chars)
  after:  "0x%08" PRIx64     (8 chars)

  Shorten this might be OK because we now also dump
  the raw bytes previous to the mnemonic/arguments

  -0x0000000000010014:  mvi       163,1
  -0x0000000000010018:  slr       %r0,%r0
  -0x000000000001001a:  lhi       %r1,2
  +0x00010014:  9201 00a3       mvi      0xa3, 1
  +0x00010018:  1f00            slr      %r0, %r0
  +0x0001001a:  a718 0002       lhi      %r1, 2

* Number argument format

  before: decimal
  after:  hexa

  -0x00010014:  mvi       163,1
  +0x00010014:   mvi      0xa3, 1


* (Priviledged) Instruction missing

  -0x0001001e:  sigp      %r1,%r0,18
  +0x0001001e:   .byte    0xae, 0x10, 0x00, 0x12

  -0x00010066:  lmh       %r0,%r15,0(%r13)
  +0x00010066:   .byte    0xeb, 0x0f, 0xd0, 0x00, 0x00, 0x96

  -0x0001006c:  sam64
  +0x0001006c:   .byte    0x01, 0x0e

  -0x00010088:  lctlg     %c0,%c15,512
  +0x00010088:   .byte    0xeb, 0x0f, 0x02, 0x00, 0x00, 0x2f

  -0x0001008e:  stcke     808
  +0x0001008e:   .byte    0xb2, 0x78, 0x03, 0x28

  -0x00010098:  spt       80(%r13)
  +0x00010098:   .byte    0xb2, 0x08, 0xd0, 0x50

  -0x000149b6:  stfl      0
  +0x000149b6:   .byte    0xb2, 0xb1, 0x00, 0x00

  -0x000149da:  stfle     0(%r1)
  +0x000149da:   .byte    0xb2, 0xb0, 0x10, 0x00

  -0x00011a34:  icm       %r5,3,0(%r1)
  +0x00011a34:   .byte    0xbf, 0x53, 0x10, 0x00

  -0x0010e8f6:  lpswe     160(%r15)
  +0x0010e8f6:   .byte    0xb2, 0xb2, 0xf0, 0xa0

Is it possible to fallback to the older disassembler on a per-instruction basis if Capstone doesn't know about an instruction?

Changes for v3:
   * Work around the various include directory nonsense.
   * Re-add the s390 skipdata callback, as a separate patch.

Changes for v2:
   * Drop the installed directory change.  This does force a
     different include change when building from git.
   * Drop the s390 skipdata callback for now.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]