DirectXShaderCompiler/lib/HLSL/CMakeLists.txt

42 строки
1018 B
CMake
Исходник Обычный вид История

2016-12-28 22:52:27 +03:00
# Copyright (C) Microsoft Corporation. All rights reserved.
# Licensed under the MIT license. See COPYRIGHT in the project root for full license information.
add_llvm_library(LLVMHLSL
DxilCBuffer.cpp
DxilCompType.cpp
DxilCondenseResources.cpp
DxilContainer.cpp
DxilContainerAssembler.cpp
DxilContainerReflection.cpp
DxilGenerationPass.cpp
DxilInterpolationMode.cpp
DxilMetadataHelper.cpp
DxilModule.cpp
DXILOperations.cpp
DxilResource.cpp
DxilResourceBase.cpp
DxilRootSignature.cpp
DxilSampler.cpp
DxilSemantic.cpp
DxilShaderModel.cpp
DxilSignature.cpp
DxilSignatureAllocator.cpp
2016-12-28 22:52:27 +03:00
DxilSignatureElement.cpp
DxilSigPoint.cpp
DxilTypeSystem.cpp
DxilValidation.cpp
DxcOptimizer.cpp
HLMatrixLowerPass.cpp
HLModule.cpp
HLOperations.cpp
HLOperationLower.cpp
Add initial support for extension intrinsics and defines (#5) This commit adds initial support for extension intrinsics and defines, including: -Support for recognizing hlsl extensions as new intrinsic functions. -Support for requesting lowering of extensions. -Support for preserving semantic defines. -Support for validating semantic defines. This commit adds support for hlsl extensions in the form of additional intrisic functions and semantic defines. We now allow a dxcompiler instance to register that it can handle additional intrinsic functions beyond the standard hlsl intrinsics. These new intrinsics are called extensions. For each extension, the compiler supplies a lowering strategy that is used by the dxcompiler to translate from the source level intrinsic to a high-level dxil intrinsic. We initially support the two lowering strategies: replicate and pack. The replicate strategy will scalarize the vector elements in the call and replicate the function call once for each element in the vector. The pack strategy changes the vector arguments into literal struct arguments. We also now include support for "semantic defines". A semantic define is a source level define whose value is preserved in the final dxil as metatdata. The source level define can come as either a #define in the hlsl source or a /D define from the command line. We provide a hook to validate that a semantic define has a legal value (for example to ensure that the value is an integer). Validation failures can produce warnings and errors that will be emitted through the standard clang diagnostic mechanism. This code was originally written by marcelolr and modified by dmpots to support packed lowering of intriniscs and validation of semantic defines.
2017-01-18 04:51:13 +03:00
HLOperationLowerExtension.cpp
2016-12-28 22:52:27 +03:00
HLResource.cpp
ReducibilityAnalysis.cpp
WaveSensitivityAnalysis.cpp
ADDITIONAL_HEADER_DIRS
${LLVM_MAIN_INCLUDE_DIR}/llvm/IR
)
add_dependencies(LLVMHLSL intrinsics_gen)