llvm-project/llvm/test/CodeGen/SPIRV/llvm-intrinsics
Ilia Diachkov 3544d200d9 [SPIRV] add IR regularization pass
The patch adds the regularization pass that prepare LLVM IR for
the IR translation. It also contains following changes:
- reduce indentation, make getNonParametrizedType, getSamplerType,
getPipeType, getImageType, getSampledImageType static in SPIRVBuiltins,
- rename mayBeOclOrSpirvBuiltin to getOclOrSpirvBuiltinDemangledName,
- move isOpenCLBuiltinType, isSPIRVBuiltinType, isSpecialType from
SPIRVGlobalRegistry.cpp to SPIRVUtils.cpp, renaming isSpecialType to
isSpecialOpaqueType,
- implment getTgtMemIntrinsic() in SPIRVISelLowering,
- add hasSideEffects = 0 in Pseudo (SPIRVInstrFormats.td),
- add legalization rule for G_MEMSET, correct G_BRCOND rule,
- add capability processing for OpBuildNDRange in SPIRVModuleAnalysis,
- don't correct types of registers holding constants and used in
G_ADDRSPACE_CAST (SPIRVPreLegalizer.cpp),
- lower memset/bswap intrinsics to functions in SPIRVPrepareFunctions,
- change TargetLoweringObjectFileELF to SPIRVTargetObjectFile
in SPIRVTargetMachine.cpp,
- correct comments.
5 LIT tests are added to show the improvement.

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

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-09-15 15:53:44 +03:00
..
abs.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
assume.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
bswap.ll [SPIRV] add IR regularization pass 2022-09-15 15:53:44 +03:00
ceil.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
ctlz.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
ctpop.ll [SPIRV] Fix style of LIT tests and remove metadata 2022-08-03 02:33:24 +03:00
cttz.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
expect.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
fabs.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
fp-intrinsics.ll [SPIRV] support builtin types and ExtInsts selection 2022-09-01 16:44:54 +03:00
fshl.ll [SPIRV] Fix style of LIT tests and remove metadata 2022-08-03 02:33:24 +03:00
fshr.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
invariant.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
maxnum.ll [SPIRV] support builtin types and ExtInsts selection 2022-09-01 16:44:54 +03:00
memset.ll [SPIRV] add IR regularization pass 2022-09-15 15:53:44 +03:00
nearbyint.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
sqrt.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
umul.with.overflow.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00