llvm-project/llvm/test/CodeGen/SPIRV/transcoding
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
..
OpenCL [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
AtomicCompareExchangeExplicit_cl20.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
BitReversePref.ll [SPIRV] Add tests to improve test coverage 2022-09-05 15:52:01 +03:00
BuildNDRange.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
BuildNDRange_2.ll [SPIRV] Add tests to improve test coverage 2022-09-05 15:52:01 +03:00
ConvertPtr.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
DecorationAlignment.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
DecorationMaxByteOffset.ll [SPIRV] Fix style of LIT tests and remove metadata 2022-08-03 02:33:24 +03:00
DivRem.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
ExecutionMode_SPIR_to_SPIRV.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
GlobalFunAnnotate.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
NoSignedUnsignedWrap.ll [SPIRV] Add tests to improve test coverage 2022-08-28 22:18:11 +03:00
OpAllAny.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
OpBitReverse_i32.ll [SPIRV] Fix style of LIT tests and remove metadata 2022-08-03 02:33:24 +03:00
OpBitReverse_v2i16.ll [SPIRV] Fix style of LIT tests and remove metadata 2022-08-03 02:33:24 +03:00
OpConstantBool.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
OpConstantSampler.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
OpDot.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
OpGroupAllAny.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
OpGroupAsyncCopy.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
OpImageQuerySize.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
OpImageReadMS.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
OpImageSampleExplicitLod.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
OpImageWrite.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
OpMin.ll [SPIRV] add IR regularization pass 2022-09-15 15:53:44 +03:00
OpPhi_ArgumentsPlaceholders.ll [SPIRV] Fix style of LIT tests and remove metadata 2022-08-03 02:33:24 +03:00
OpSwitch32.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
OpSwitch64.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
OpSwitchChar.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
OpSwitchEmpty.ll [SPIRV] Fix style of LIT tests and remove metadata 2022-08-03 02:33:24 +03:00
OpSwitchUnreachable.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
OpVectorExtractDynamic.ll [SPIRV] Fix style of LIT tests and remove metadata 2022-08-03 02:33:24 +03:00
OpVectorInsertDynamic_i16.ll [SPIRV] Add tests to improve test coverage 2022-09-05 15:52:01 +03:00
RelationalOperators.ll [SPIRV] Fix style of LIT tests and remove metadata 2022-08-03 02:33:24 +03:00
RelationalOperatorsFUnord.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
ReqdSubgroupSize.ll [SPIRV] Add tests to improve test coverage 2022-08-28 22:18:11 +03:00
SampledImage.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
SpecConstantComposite.ll [SPIRV] Add tests to improve test coverage 2022-09-05 15:52:01 +03:00
TransFNeg.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
atomic_load_store.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
bitcast.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
block_w_struct_return.ll [SPIRV] Add tests to improve test coverage 2022-09-05 15:52:01 +03:00
builtin_calls.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
builtin_vars.ll [SPIRV] Add tests to improve test coverage 2022-09-05 15:52:01 +03:00
builtin_vars_arithmetics.ll [SPIRV] Add tests to improve test coverage 2022-09-05 15:52:01 +03:00
builtin_vars_opt.ll [SPIRV] Add tests to improve test coverage 2022-09-05 15:52:01 +03:00
check_ro_qualifier.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
cl-types.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
clk_event_t.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
explicit-conversions.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
extract_insert_value.ll [SPIRV] Add tests to improve test coverage 2022-09-05 15:52:01 +03:00
fadd.ll [SPIRV] Add tests to improve test coverage 2022-08-28 22:18:11 +03:00
fclamp.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
fcmp.ll [SPIRV] Fix style of LIT tests and remove metadata 2022-08-03 02:33:24 +03:00
fdiv.ll [SPIRV] Add tests to improve test coverage 2022-08-28 22:18:11 +03:00
fmod.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
fmul.ll [SPIRV] Add tests to improve test coverage 2022-08-28 22:18:11 +03:00
fneg.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
fp_contract_reassoc_fast_mode.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
frem.ll [SPIRV] Add tests to improve test coverage 2022-08-28 22:18:11 +03:00
fsub.ll [SPIRV] Add tests to improve test coverage 2022-08-28 22:18:11 +03:00
global_block.ll [SPIRV] Add tests to improve test coverage 2022-09-05 15:52:01 +03:00
group_ops.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
image_get_size_with_access_qualifiers.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
image_with_access_qualifiers.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
isequal.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
ldexp.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
memory_access.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
non32.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00
optional-core-features-multiple.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
readonly.ll [SPIRV] Fix style of LIT tests and remove metadata 2022-08-03 02:33:24 +03:00
relationals_double.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
relationals_float.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
relationals_half.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
spec_const.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
spirv-private-array-initialization.ll [SPIRV] Add tests to improve test coverage 2022-09-05 15:52:01 +03:00
spirv-types.ll [SPIRV] Add tests to improve test coverage 2022-09-02 13:19:28 +03:00
sub_group_ballot.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
sub_group_clustered_reduce.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
sub_group_extended_types.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
sub_group_non_uniform_arithmetic.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
sub_group_non_uniform_vote.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
sub_group_shuffle.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
sub_group_shuffle_relative.ll [SPIRV] Add tests to improve test coverage 2022-09-02 11:59:18 +03:00
vec8.ll [SPIRV] Add tests to improve test coverage 2022-08-28 22:18:11 +03:00
vec_type_hint.ll [SPIRV] Add tests to improve test coverage 2022-08-02 20:22:40 +03:00