[PATCH] D67320: [mips] Fix decoding of microMIPS JALX instruction

Simon Atanasyan via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Sep 7 09:46:50 PDT 2019


atanasyan created this revision.
atanasyan added a reviewer: Petar.Avramovic.
Herald added subscribers: MaskRay, jrtc27, hiraditya, arichardson, sdardis, emaste.
Herald added a reviewer: espindola.
Herald added a project: LLVM.

microMIPS jump and link exchange instruction stores a target in a 26-bits field. Despite other microMIPS JAL instructions these bits are target address shifted right 2 bits [1]. The patch fixes the JALX instruction decoding and uses 2-bit shift.

[1] MIPS Architecture for Programmers Volume II-B: The microMIPS32 Instruction Set


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D67320

Files:
  lld/test/ELF/mips-micro-cross-calls.s
  llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp
  llvm/lib/Target/Mips/MicroMipsInstrInfo.td
  llvm/test/MC/Disassembler/Mips/micromips32r3/valid-el.txt
  llvm/test/MC/Disassembler/Mips/micromips32r3/valid.txt

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D67320.219247.patch
Type: text/x-patch
Size: 4531 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190907/cddb1dbe/attachment.bin>


More information about the llvm-commits mailing list