[PATCH] D20237: Use printAliasInstr in ARM target

Roger Ferrer Ibanez via llvm-commits llvm-commits at lists.llvm.org
Fri May 13 07:04:58 PDT 2016


rogfer01 created this revision.
rogfer01 added a reviewer: t.p.northover.
rogfer01 added a subscriber: llvm-commits.
Herald added subscribers: rengolin, aemerson.

ARM target does not use printAliasInstr machinery which
forces having special checks in ArmInstPrinter::printInstruction. This
patch addresses this issue.

Not all special checks could be removed: either they involve elaborated
conditions under which the alias is emitted (e.g. ldm/stm on sp may be
pop/push but only if the number of registers is >= 2) or the number
of registers is multivalued (like happens again with ldm/stm) and they
do not match the InstAlias pattern which assumes single-valued operands
in the pattern.

http://reviews.llvm.org/D20237

Files:
  lib/Target/ARM/ARMInstrFormats.td
  lib/Target/ARM/ARMInstrInfo.td
  lib/Target/ARM/ARMInstrThumb.td
  lib/Target/ARM/ARMInstrThumb2.td
  lib/Target/ARM/ARMInstrVFP.td
  lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp
  lib/Target/ARM/InstPrinter/ARMInstPrinter.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20237.57164.patch
Type: text/x-patch
Size: 22266 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160513/81417a8c/attachment.bin>


More information about the llvm-commits mailing list