[PATCH] D105560: Add disassembly for the conditioned move immediate instruction for the ARC backend

Thomas Johnson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 7 09:50:06 PDT 2021


thomasjohns created this revision.
thomasjohns added reviewers: marksl, gyiu.
Herald added a subscriber: hiraditya.
thomasjohns requested review of this revision.
Herald added a project: LLVM.

This adds and entry for `MOVcc_ru6` (e.g. `mov.eq  %r0, 32`) in `ARCInstrInfo.td`, its associated dependencies, and the ability to decode this instruction from an object file.

For example, when disassembling the object file derived from compiling:

  int f(int x) {
    return __builtin_clz(x);
  }

we used to have:

  00000000 <f>:
         0: 2f 28 13 80   <unknown>
         4: ca 20 21 08   <unknown>
         8: e0 7f         j_s.d   [%blink]
         a: ce 20 e2 07   <unknown>

but now we have:

  00000000 <f>:
         0: 2f 28 13 80   <unknown>
         4: ca 20 21 08   mov.eq  %r0, 32
         8: e0 7f         j_s.d   [%blink]
         a: ce 20 e2 07   <unknown>


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D105560

Files:
  llvm/lib/Target/ARC/ARCInstrFormats.td
  llvm/lib/Target/ARC/ARCInstrInfo.td
  llvm/lib/Target/ARC/Disassembler/ARCDisassembler.cpp
  llvm/lib/Target/ARC/MCTargetDesc/ARCInstPrinter.cpp
  llvm/lib/Target/ARC/MCTargetDesc/ARCInstPrinter.h
  llvm/test/MC/Disassembler/ARC/misc.txt

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D105560.356983.patch
Type: text/x-patch
Size: 7815 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210707/8e668e7c/attachment.bin>


More information about the llvm-commits mailing list