[all-commits] [llvm/llvm-project] b99365: [TableGen] Add a new `encoder` directive into VarL...

Min-Yih Hsu via All-commits all-commits at lists.llvm.org
Mon Feb 14 20:45:01 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b99365a7f4a1c348f1237937e9775b3ce8441e08
      https://github.com/llvm/llvm-project/commit/b99365a7f4a1c348f1237937e9775b3ce8441e08
  Author: Min-Yih Hsu <minyihh at uci.edu>
  Date:   2022-02-14 (Mon, 14 Feb 2022)

  Changed paths:
    M llvm/include/llvm/Target/Target.td
    M llvm/lib/Target/M68k/MCTargetDesc/M68kMCCodeEmitter.cpp
    M llvm/test/TableGen/VarLenEncoder.td
    M llvm/utils/TableGen/VarLenCodeEmitterGen.cpp

  Log Message:
  -----------
  [TableGen] Add a new `encoder` directive into VarLenCodeEmitterGen

The new encoder directive can be used to specify custom encoder for a
single operand or slice. This is different from the EncoderMethod field
within an Operand, which affects every operands in the target.

In addition, this patch also changes the function signature of the
encoder method -- a new argument, InsertPost, is added to both the
default one (i.e. getMachineValue) and the custom one. This argument
provides the bit position where the operand will eventually be inserted.

Differential Revision: https://reviews.llvm.org/D119100




More information about the All-commits mailing list