| 28 | } |
| 29 | |
| 30 | void HLSLReflection::SetDescription(D3D_SHADER_DESC const& desc) |
| 31 | { |
| 32 | mDesc.creator = std::string(desc.Creator); |
| 33 | mDesc.shaderType = static_cast<D3D_SHADER_VERSION_TYPE>(D3D_SHVER_GET_TYPE(desc.Version)); |
| 34 | mDesc.majorVersion = D3D11_SHVER_GET_MAJOR(desc.Version); |
| 35 | mDesc.minorVersion = D3D11_SHVER_GET_MINOR(desc.Version); |
| 36 | mDesc.flags = desc.Flags; |
| 37 | mDesc.numConstantBuffers = desc.ConstantBuffers; |
| 38 | mDesc.numBoundResources = desc.BoundResources; |
| 39 | mDesc.numInputParameters = desc.InputParameters; |
| 40 | mDesc.numOutputParameters = desc.OutputParameters; |
| 41 | |
| 42 | mDesc.instructions.numInstructions = desc.InstructionCount; |
| 43 | mDesc.instructions.numTemporaryRegisters = desc.TempRegisterCount; |
| 44 | mDesc.instructions.numTemporaryArrays = desc.TempArrayCount; |
| 45 | mDesc.instructions.numDefines = desc.DefCount; |
| 46 | mDesc.instructions.numDeclarations = desc.DclCount; |
| 47 | mDesc.instructions.numTextureNormal = desc.TextureNormalInstructions; |
| 48 | mDesc.instructions.numTextureLoad = desc.TextureLoadInstructions; |
| 49 | mDesc.instructions.numTextureComparison = desc.TextureCompInstructions; |
| 50 | mDesc.instructions.numTextureBias = desc.TextureBiasInstructions; |
| 51 | mDesc.instructions.numTextureGradient = desc.TextureGradientInstructions; |
| 52 | mDesc.instructions.numFloatArithmetic = desc.FloatInstructionCount; |
| 53 | mDesc.instructions.numSIntArithmetic = desc.IntInstructionCount; |
| 54 | mDesc.instructions.numUIntArithmetic = desc.UintInstructionCount; |
| 55 | mDesc.instructions.numStaticFlowControl = desc.StaticFlowControlCount; |
| 56 | mDesc.instructions.numDynamicFlowControl = desc.DynamicFlowControlCount; |
| 57 | mDesc.instructions.numMacro = desc.MacroInstructionCount; |
| 58 | mDesc.instructions.numArray = desc.ArrayInstructionCount; |
| 59 | |
| 60 | mDesc.gs.numCutInstructions = desc.CutInstructionCount; |
| 61 | mDesc.gs.numEmitInstructions = desc.EmitInstructionCount; |
| 62 | mDesc.gs.inputPrimitive = desc.InputPrimitive; |
| 63 | mDesc.gs.outputTopology = desc.GSOutputTopology; |
| 64 | mDesc.gs.maxOutputVertices = desc.GSMaxOutputVertexCount; |
| 65 | |
| 66 | mDesc.ts.numPatchConstants = desc.PatchConstantParameters; |
| 67 | mDesc.ts.numGSInstances = desc.cGSInstanceCount; |
| 68 | mDesc.ts.numControlPoints = desc.cControlPoints; |
| 69 | mDesc.ts.inputPrimitive = desc.InputPrimitive; |
| 70 | mDesc.ts.outputPrimitive = desc.HSOutputPrimitive; |
| 71 | mDesc.ts.partitioning = desc.HSPartitioning; |
| 72 | mDesc.ts.domain = desc.TessellatorDomain; |
| 73 | |
| 74 | mDesc.cs.numBarrierInstructions = desc.cBarrierInstructions; |
| 75 | mDesc.cs.numInterlockedInstructions = desc.cInterlockedInstructions; |
| 76 | mDesc.cs.numTextureStoreInstructions = desc.cTextureStoreInstructions; |
| 77 | } |
| 78 | |
| 79 | void HLSLReflection::SetCompiledCode(size_t numBytes, void const* buffer) |
| 80 | { |
no outgoing calls
no test coverage detected