- 
                Notifications
    
You must be signed in to change notification settings  - Fork 2
 
riscv_dis_nonalias
        Tsukasa OI edited this page Oct 3, 2022 
        ·
        3 revisions
      
    - Status: WITHDRAWN
(Jan worked on a similar patch and that is upstreamed) - Based on
 - Branch: 
riscv-dis-nonalias - Tracking PR: #16 (view Pull Request and Diff)
 - Mailing List:
- PATCH v1 (2022-07-09)
 
 
- Upcoming (Pending): Disassembler: Support special (non-standard) encodings
It also touches the definition offence.tso. 
Certain instructions are defined as aliases (with INSN_ALIAS) but some of them have no "parent" instructions (without INSN_ALIAS).
As a result, if the disassembler has given an option of no-aliases, they will be printed as .4byte meaning not recognized.
With following assembler file with -march=rv32i_zbkb,
_start:
    zip a0, a1
    unzip a2, a3
The output with objdump -d is like this:
80000028 <_start>:
80000028:   08f59513      zip     a0,a1
8000002c:   08f6d613      unzip   a2,a3
However, output with objdump -d -M no-aliases looks like this:
80000028 <_start>:
80000028:   08f59513      .4byte  0x8f59513
8000002c:   08f6d613      .4byte  0x8f6d613
- 
zip(RV32_Zbkb) - 
unzip(RV32_Zbkb) - 
fence.tso(RV{32,64}I) 
Note that zip and unzip fix is based on my previous patchset.