[all-commits] [llvm/llvm-project] b3dac4: [TableGen] Treat reg as isolated in reg$foo (but n...

Jay Foad via All-commits all-commits at lists.llvm.org
Wed Oct 28 14:49:01 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: b3dac4ee240897194a5167aaae2aabbfba76da85
      https://github.com/llvm/llvm-project/commit/b3dac4ee240897194a5167aaae2aabbfba76da85
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp

  Log Message:
  -----------
  [TableGen] Treat reg as isolated in reg$foo (but not in ${foo}reg)

D9844 fixed a problem where the ss suffix in the AsmString "cmp${cc}ss"
was recognised as the X86 SS register, by only recognising a token as a
register name if it is "isolated", i.e. surrounded by separator
characters.

In the AMDGPU backend there are many operands like $clamp which expand
to an optional string " clamp" including the preceding space, so we want
to have AsmStrings including sequences like "vcc$clamp" where vcc is a
register name.

This patch relaxes the rules for an isolated token, to say that it's OK
if the token is immediately followed by a '$'.

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


  Commit: 50ee22d791864fb3243e4a022fd6e78d38102a64
      https://github.com/llvm/llvm-project/commit/50ee22d791864fb3243e4a022fd6e78d38102a64
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_dasm_all.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_dasm_all.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_dasm_all.txt

  Log Message:
  -----------
  [AMDGPU] Fix double space in disassembly of SDWA instructions with vcc

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


Compare: https://github.com/llvm/llvm-project/compare/772aaa602383...50ee22d79186


More information about the All-commits mailing list