Lines Matching defs:sampler
335 // Translate glslang sampler type to SPIR-V dimensionality.
336 spv::Dim TranslateDimensionality(const glslang::TSampler& sampler)
338 switch (sampler.dim) {
1452 // basically samplerXXX/subpass/sampler/texture are all included
3087 // `samplerBuffer(textureBuffer, sampler)` is a no-op
4318 spv::Id TGlslangToSpvTraverser::getSampledType(const glslang::TSampler& sampler)
4320 switch (sampler.type) {
4500 const glslang::TSampler& sampler = type.getSampler();
4501 if (sampler.isPureSampler()) {
4505 spvType = builder.makeImageType(getSampledType(sampler), TranslateDimensionality(sampler),
4506 sampler.isShadow(), sampler.isArrayed(), sampler.isMultiSample(),
4507 sampler.isImageClass() ? 2 : 1, TranslateImageFormat(type));
4508 if (sampler.isCombined() &&
4509 (!sampler.isBuffer() || glslangIntermediate->getSpv().spv < glslang::EShTargetSpv_1_6)) {
4510 // Already has both image and sampler, make the combined type. Only combine sampler to
5408 return (paramType.containsOpaque() && !glslangIntermediate->getBindlessMode()) || // sampler, etc.
5601 glslang::TSampler sampler = {};
5605 sampler = glslangArguments[0]->getAsTyped()->getType().getSampler();
5606 cubeCompare = sampler.dim == glslang::EsdCube && sampler.arrayed && sampler.shadow;
5607 f16ShadowCompare = sampler.shadow &&
5632 if ((sampler.ms && i == 3) || (! sampler.ms && i == 2))
5649 if ((sampler.dim != glslang::EsdRect && i == 3) || (sampler.dim == glslang::EsdRect && i == 2))
5653 if ((sampler.dim != glslang::EsdRect && i == 4) || (sampler.dim == glslang::EsdRect && i == 3))
5672 if ((sampler.shadow && i == 3) || (! sampler.shadow && i == 2))
5677 if ((sampler.shadow && i == 4) || (! sampler.shadow && i == 3))
5748 const glslang::TSampler sampler = imageType.getSampler();
5749 bool f16ShadowCompare = (sampler.shadow && node->getAsAggregate())
5755 if (sampler.type == glslang::EbtUint)
5757 else if (sampler.type == glslang::EbtInt)
5773 params.sampler = arguments[0];
5776 node->crackTexture(sampler, cracked);
5780 if (builder.isSampledImage(params.sampler) &&
5782 params.sampler = builder.createUnaryOp(spv::OpImage, builder.getImageType(params.sampler), params.sampler);
5784 builder.addDecoration(params.sampler, spv::DecorationNonUniformEXT);
5851 if (sampler.isMultiSample()) {
5856 if (sampler.isMultiSample()) {
5881 if (sampler.isMultiSample()) {
5924 if (sampler.isMultiSample() || cracked.lod) {
5933 if (sampler.isMultiSample()) {
5973 if (sampler.isMultiSample()) {
6020 spv::IdImmediate sample = { true, sampler.isMultiSample() ? *(opIt++) : builder.makeUintConstant(0) };
6050 assert(sampler.ms);
6055 operands.push_back(params.sampler);
6058 if (sampler.isSubpass()) {
6085 bool cubeCompare = sampler.dim == glslang::EsdCube && sampler.isArrayed() && sampler.isShadow();
6133 } else if (sampler.shadow && cracked.gather) {
6136 } else if (sampler.shadow) {
6160 if (sampler.isMultiSample()) {
6192 if (cracked.gather && ! sampler.shadow) {
6282 switch (sampler.dim) {