[PATCH] D18315: [mips] MIPSR6 Compact jump support

Simon Dardis via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 21 07:21:02 PDT 2016


sdardis created this revision.
sdardis added a reviewer: vkalintiris.
sdardis added subscribers: dsanders, llvm-commits.

This patch adds support for compact jumps similiar to the previous compact
branch support for MIPSR6. Unlike compact branches, compact jumps do not
have a forbidden slot.

As MipsInstrInfo::getEquivalentCompactForm can determine the correct
expansion for jumps and branches for both microMIPS and MIPSR6, simplify
the delay slot filler when producing compact CTIs in cases where a delay slot
can be filled.


http://reviews.llvm.org/D18315

Files:
  lib/Target/Mips/Mips32r6InstrInfo.td
  lib/Target/Mips/Mips64r6InstrInfo.td
  lib/Target/Mips/MipsDelaySlotFiller.cpp
  lib/Target/Mips/MipsInstrInfo.cpp
  lib/Target/Mips/MipsInstrInfo.h
  test/CodeGen/Mips/compactbranches/compact-branches.ll
  test/CodeGen/Mips/llvm-ir/call.ll
  test/CodeGen/Mips/llvm-ir/indirectbr.ll
  test/CodeGen/Mips/llvm-ir/ret.ll
  test/CodeGen/Mips/mips64-f128.ll
  test/MC/Mips/mips32r6/valid.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D18315.51162.patch
Type: text/x-patch
Size: 31616 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160321/097be951/attachment.bin>


More information about the llvm-commits mailing list