llvm-project/llvm/lib/Target/SPIRV
Ilia Diachkov df8713079b [SPIRV] support capabilities and extensions
This patch supports SPIR-V capabilities and extensions. In addition,
it inserts decorations related to MIFlags and improves support of switches.
Five tests are included to demonstrate the improvement.

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

Co-authored-by: Aleksandr Bezzubikov <zuban32s@gmail.com>
Co-authored-by: Michal Paszkowski <michal.paszkowski@outlook.com>
Co-authored-by: Andrey Tretyakov <andrey1.tretyakov@intel.com>
Co-authored-by: Konrad Trifunovic <konrad.trifunovic@intel.com>
2022-08-12 23:33:15 +03:00
..
MCTargetDesc [SPIRV] use tablegen to create SPIRVBaseInfo* 2022-08-02 01:57:23 +03:00
TargetInfo [SPIR-V](3/6) Add MC layer, object file support, and InstPrinter 2022-04-20 01:10:25 +02:00
CMakeLists.txt [SPIRV] use tablegen to create SPIRVBaseInfo* 2022-08-02 01:57:23 +03:00
SPIRV.h [SPIRV] add SPIRVPrepareFunctions pass and update other passes 2022-07-22 04:00:48 +03:00
SPIRV.td
SPIRVAsmPrinter.cpp [SPIRV] support capabilities and extensions 2022-08-12 23:33:15 +03:00
SPIRVCallLowering.cpp [SPIRV] use tablegen to create SPIRVBaseInfo* 2022-08-02 01:57:23 +03:00
SPIRVCallLowering.h [SPIRV] add SPIRVPrepareFunctions pass and update other passes 2022-07-22 04:00:48 +03:00
SPIRVDuplicatesTracker.cpp SPIRV: Fix compilation in NDEBUG. 2022-08-12 14:00:39 +00:00
SPIRVDuplicatesTracker.h [SPIRV] add SPIRVPrepareFunctions pass and update other passes 2022-07-22 04:00:48 +03:00
SPIRVEmitIntrinsics.cpp [SPIRV] add SPIRVPrepareFunctions pass and update other passes 2022-07-22 04:00:48 +03:00
SPIRVFrameLowering.h [SPIR-V](4/6) Add target lowering, TargetMachine and AsmPrinter 2022-04-20 01:10:25 +02:00
SPIRVGlobalRegistry.cpp [SPIRV] use tablegen to create SPIRVBaseInfo* 2022-08-02 01:57:23 +03:00
SPIRVGlobalRegistry.h [SPIRV] use tablegen to create SPIRVBaseInfo* 2022-08-02 01:57:23 +03:00
SPIRVISelLowering.cpp [SPIR-V](4/6) Add target lowering, TargetMachine and AsmPrinter 2022-04-20 01:10:25 +02:00
SPIRVISelLowering.h [SPIR-V](4/6) Add target lowering, TargetMachine and AsmPrinter 2022-04-20 01:10:25 +02:00
SPIRVInstrFormats.td
SPIRVInstrInfo.cpp [SPIRV] support capabilities and extensions 2022-08-12 23:33:15 +03:00
SPIRVInstrInfo.h [SPIRV] support capabilities and extensions 2022-08-12 23:33:15 +03:00
SPIRVInstrInfo.td [SPIRV] use tablegen to create SPIRVBaseInfo* 2022-08-02 01:57:23 +03:00
SPIRVInstructionSelector.cpp [SPIRV] use tablegen to create SPIRVBaseInfo* 2022-08-02 01:57:23 +03:00
SPIRVLegalizerInfo.cpp [SPIRV] Add SPIR-V specific intrinsics, two passes and tests 2022-05-06 03:02:00 +03:00
SPIRVLegalizerInfo.h [SPIR-V](5/6) Add LegalizerInfo, InstructionSelector and utilities 2022-04-20 01:10:25 +02:00
SPIRVMCInstLower.cpp [SPIRV] add SPIRVPrepareFunctions pass and update other passes 2022-07-22 04:00:48 +03:00
SPIRVMCInstLower.h [SPIRV][NFC] Fix warning on class/struct mismatch 2022-04-26 09:51:46 -05:00
SPIRVModuleAnalysis.cpp [SPIRV] support capabilities and extensions 2022-08-12 23:33:15 +03:00
SPIRVModuleAnalysis.h [SPIRV] support capabilities and extensions 2022-08-12 23:33:15 +03:00
SPIRVPreLegalizer.cpp [SPIRV] support capabilities and extensions 2022-08-12 23:33:15 +03:00
SPIRVPrepareFunctions.cpp [SPIRV] add SPIRVPrepareFunctions pass and update other passes 2022-07-22 04:00:48 +03:00
SPIRVRegisterBankInfo.cpp [SPIR-V](4/6) Add target lowering, TargetMachine and AsmPrinter 2022-04-20 01:10:25 +02:00
SPIRVRegisterBankInfo.h [SPIR-V](4/6) Add target lowering, TargetMachine and AsmPrinter 2022-04-20 01:10:25 +02:00
SPIRVRegisterBanks.td
SPIRVRegisterInfo.cpp [SPIR-V](4/6) Add target lowering, TargetMachine and AsmPrinter 2022-04-20 01:10:25 +02:00
SPIRVRegisterInfo.h [SPIR-V](4/6) Add target lowering, TargetMachine and AsmPrinter 2022-04-20 01:10:25 +02:00
SPIRVRegisterInfo.td
SPIRVSubtarget.cpp [SPIRV] support capabilities and extensions 2022-08-12 23:33:15 +03:00
SPIRVSubtarget.h [SPIRV] support capabilities and extensions 2022-08-12 23:33:15 +03:00
SPIRVSymbolicOperands.td [SPIRV] use tablegen to create SPIRVBaseInfo* 2022-08-02 01:57:23 +03:00
SPIRVTargetMachine.cpp [SPIRV] add SPIRVPrepareFunctions pass and update other passes 2022-07-22 04:00:48 +03:00
SPIRVTargetMachine.h [SPIR-V](4/6) Add target lowering, TargetMachine and AsmPrinter 2022-04-20 01:10:25 +02:00
SPIRVTargetObjectFile.h [SPIR-V](4/6) Add target lowering, TargetMachine and AsmPrinter 2022-04-20 01:10:25 +02:00
SPIRVTargetTransformInfo.h [SPIR-V](4/6) Add target lowering, TargetMachine and AsmPrinter 2022-04-20 01:10:25 +02:00
SPIRVUtils.cpp [SPIRV] use tablegen to create SPIRVBaseInfo* 2022-08-02 01:57:23 +03:00
SPIRVUtils.h [SPIRV] use tablegen to create SPIRVBaseInfo* 2022-08-02 01:57:23 +03:00