[all-commits] [llvm/llvm-project] 9ee96a: [CSKY] Add CK800 series ProcessorModel and complet...

Zi Xuan Wu (Zeson) via All-commits all-commits at lists.llvm.org
Tue Feb 8 00:03:25 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9ee96aaab2aa6043accf7937f8b2c9158283fa5d
      https://github.com/llvm/llvm-project/commit/9ee96aaab2aa6043accf7937f8b2c9158283fa5d
  Author: Zi Xuan Wu <zixuan.wu at linux.alibaba.com>
  Date:   2022-02-08 (Tue, 08 Feb 2022)

  Changed paths:
    M llvm/lib/Target/CSKY/CSKY.td
    M llvm/lib/Target/CSKY/CSKYSubtarget.cpp
    M llvm/lib/Target/CSKY/CSKYSubtarget.h

  Log Message:
  -----------
  [CSKY] Add CK800 series ProcessorModel and complete related SubtargetFeatures

Now we only support CSKY 800 series cpus and newer cpus in the future undering CSKYv2 ABI specification.
There are 11 processor family enums for CK series cpus such as CK801, CK802, CK803, CK803S, CK804, CK805,
CK807, CK810, CK810V, CK860, CK860V.

The SchedMachineModels are not ready for different cpus, so only NoSchedModel is used.


  Commit: ec642ceebc1aacc8b16249df7734b8cf90ae2963
      https://github.com/llvm/llvm-project/commit/ec642ceebc1aacc8b16249df7734b8cf90ae2963
  Author: Zi Xuan Wu <zixuan.wu at linux.alibaba.com>
  Date:   2022-02-08 (Tue, 08 Feb 2022)

  Changed paths:
    M llvm/lib/Target/CSKY/CMakeLists.txt
    M llvm/lib/Target/CSKY/CSKYRegisterInfo.td
    A llvm/lib/Target/CSKY/Disassembler/CMakeLists.txt
    A llvm/lib/Target/CSKY/Disassembler/CSKYDisassembler.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYInstPrinter.cpp
    M llvm/test/MC/CSKY/basic-16bit.s
    M llvm/test/MC/CSKY/basic.s
    M llvm/test/MC/CSKY/fpuv2.s
    M llvm/test/MC/CSKY/fpuv3.s

  Log Message:
  -----------
  [CSKY] Add CSKYDisassembler.cpp to construct objdump

CSKYDisassembler tries to disassemble register MC operand from register num for different register class, and
also handles immediate num and carry flag operand which is not encoded in instruction binary.

Also enhance the printer of instruction to accept sub-option to control the print format. Sometimes, it prefers to
print number in hex, especially when immediate number represents symbol address.


Compare: https://github.com/llvm/llvm-project/compare/a1f3f1d2c929...ec642ceebc1a


More information about the All-commits mailing list