[all-commits] [llvm/llvm-project] fc02ee: [RISCV] Add vendor-defined XTheadBb (basic bit-man...

Philipp Tomsich via All-commits all-commits at lists.llvm.org
Mon Feb 13 08:02:29 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: fc02eeb24fc024aa05fc2d58b73b713dc5bfd166
      https://github.com/llvm/llvm-project/commit/fc02eeb24fc024aa05fc2d58b73b713dc5bfd166
  Author: Philipp Tomsich <philipp.tomsich at vrull.eu>
  Date:   2023-02-13 (Mon, 13 Feb 2023)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsRISCV.def
    A clang/test/CodeGen/RISCV/rvb-intrinsics/riscv32-xtheadbb.c
    A clang/test/CodeGen/RISCV/rvb-intrinsics/riscv64-xtheadbb.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/lib/Support/RISCVISAInfo.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/RISCV/imm.ll
    M llvm/test/CodeGen/RISCV/rotl-rotr.ll
    A llvm/test/CodeGen/RISCV/rv32xtheadbb.ll
    A llvm/test/CodeGen/RISCV/rv64xtheadbb.ll

  Log Message:
  -----------
  [RISCV] Add vendor-defined XTheadBb (basic bit-manipulation) extension

The vendor-defined XTHeadBb (predating the standard Zbb extension)
extension adds some bit-manipulation extensions with somewhat similar
semantics as some of the Zbb instructions.

It is supported by the C9xx cores (e.g., found in the wild in the
Allwinner D1) by Alibaba T-Head.

The current (as of this commit) public documentation for XTHeadBb is
available from:
  https://github.com/T-head-Semi/thead-extension-spec/releases/download/2.2.2/xthead-2023-01-30-2.2.2.pdf

Support for these instructions has already landed in GNU Binutils:
  https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=8254c3d2c94ae5458095ea6c25446ba89134b9da

Depends on D143036

Reviewed By: craig.topper

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




More information about the All-commits mailing list