[all-commits] [llvm/llvm-project] f61eb4: [SPIRV] support builtin functions

Ilia Diachkov via All-commits all-commits at lists.llvm.org
Wed Aug 24 13:48:24 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f61eb416238fd581c3823a0d372febaed4e27f26
      https://github.com/llvm/llvm-project/commit/f61eb416238fd581c3823a0d372febaed4e27f26
  Author: Ilia Diachkov <ilia.diachkov at gmail.com>
  Date:   2022-08-25 (Thu, 25 Aug 2022)

  Changed paths:
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.cpp
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.h
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.h
    M llvm/lib/Target/SPIRV/SPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    A llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    A llvm/lib/Target/SPIRV/SPIRVBuiltins.h
    A llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp
    M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.h
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.h
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    A llvm/test/CodeGen/SPIRV/builtin_vars-decorate.ll
    A llvm/test/CodeGen/SPIRV/capability-Int64Atomics.ll
    A llvm/test/CodeGen/SPIRV/empty-module.ll
    A llvm/test/CodeGen/SPIRV/spirv-tools-dis.ll
    A llvm/test/CodeGen/SPIRV/transcoding/builtin_calls.ll

  Log Message:
  -----------
  [SPIRV] support builtin functions

The patch adds support for OpenCL and SPIR-V built-in functions.
Their detection and properties are implemented using TableGen.
Five tests are added to demonstrate the improvement.

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

Co-authored-by: Aleksandr Bezzubikov <zuban32s at gmail.com>
Co-authored-by: Michal Paszkowski <michal.paszkowski at outlook.com>
Co-authored-by: Andrey Tretyakov <andrey1.tretyakov at intel.com>
Co-authored-by: Konrad Trifunovic <konrad.trifunovic at intel.com>




More information about the All-commits mailing list