Run format_all.sh.
This commit is contained in:
Родитель
6a7b95d2d6
Коммит
1079e7930b
|
@ -171,8 +171,9 @@ void CompilerCPP::emit_resources()
|
|||
auto &type = get<SPIRType>(var.basetype);
|
||||
|
||||
if (var.storage != StorageClassFunction && type.pointer && type.storage == StorageClassUniform &&
|
||||
!is_hidden_variable(var) && (meta[type.self].decoration.decoration_flags &
|
||||
((1ull << DecorationBlock) | (1ull << DecorationBufferBlock))))
|
||||
!is_hidden_variable(var) &&
|
||||
(meta[type.self].decoration.decoration_flags &
|
||||
((1ull << DecorationBlock) | (1ull << DecorationBufferBlock))))
|
||||
{
|
||||
emit_buffer_block(var);
|
||||
}
|
||||
|
|
|
@ -154,7 +154,7 @@ bool Compiler::block_is_pure(const SPIRBlock &block)
|
|||
case OpMemoryBarrier:
|
||||
return false;
|
||||
|
||||
// OpExtInst is potentially impure depending on extension, but GLSL builtins are at least pure.
|
||||
// OpExtInst is potentially impure depending on extension, but GLSL builtins are at least pure.
|
||||
|
||||
default:
|
||||
break;
|
||||
|
@ -443,7 +443,7 @@ bool Compiler::is_hidden_variable(const SPIRVariable &var, bool include_builtins
|
|||
// Combined image samplers are always considered active as they are "magic" variables.
|
||||
if (find_if(begin(combined_image_samplers), end(combined_image_samplers), [&var](const CombinedImageSampler &samp) {
|
||||
return samp.combined_id == var.self;
|
||||
}) != end(combined_image_samplers))
|
||||
}) != end(combined_image_samplers))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
@ -2699,7 +2699,7 @@ void Compiler::CombinedImageSamplerHandler::register_combined_image_sampler(SPIR
|
|||
[¶m](const SPIRFunction::CombinedImageSamplerParameter &p) {
|
||||
return param.image_id == p.image_id && param.sampler_id == p.sampler_id &&
|
||||
param.global_image == p.global_image && param.global_sampler == p.global_sampler;
|
||||
});
|
||||
});
|
||||
|
||||
if (itr == end(caller.combined_parameters))
|
||||
{
|
||||
|
@ -2836,7 +2836,7 @@ bool Compiler::CombinedImageSamplerHandler::handle(Op opcode, const uint32_t *ar
|
|||
auto itr = find_if(begin(compiler.combined_image_samplers), end(compiler.combined_image_samplers),
|
||||
[image_id, sampler_id](const CombinedImageSampler &combined) {
|
||||
return combined.image_id == image_id && combined.sampler_id == sampler_id;
|
||||
});
|
||||
});
|
||||
|
||||
if (itr == end(compiler.combined_image_samplers))
|
||||
{
|
||||
|
@ -3153,8 +3153,8 @@ void Compiler::analyze_variable_scope(SPIRFunction &entry)
|
|||
break;
|
||||
}
|
||||
|
||||
// Atomics shouldn't be able to access function-local variables.
|
||||
// Some GLSL builtins access a pointer.
|
||||
// Atomics shouldn't be able to access function-local variables.
|
||||
// Some GLSL builtins access a pointer.
|
||||
|
||||
default:
|
||||
break;
|
||||
|
|
|
@ -809,7 +809,8 @@ uint32_t CompilerGLSL::type_to_packed_alignment(const SPIRType &type, uint64_t f
|
|||
for (uint32_t i = 0; i < type.member_types.size(); i++)
|
||||
{
|
||||
auto member_flags = meta[type.self].members.at(i).decoration_flags;
|
||||
alignment = max(alignment, type_to_packed_alignment(get<SPIRType>(type.member_types[i]), member_flags, packing));
|
||||
alignment =
|
||||
max(alignment, type_to_packed_alignment(get<SPIRType>(type.member_types[i]), member_flags, packing));
|
||||
}
|
||||
|
||||
// In std140, struct alignment is rounded up to 16.
|
||||
|
@ -881,7 +882,8 @@ uint32_t CompilerGLSL::type_to_packed_array_stride(const SPIRType &type, uint64_
|
|||
uint32_t CompilerGLSL::type_to_packed_size(const SPIRType &type, uint64_t flags, BufferPackingStandard packing)
|
||||
{
|
||||
if (!type.array.empty())
|
||||
return to_array_size_literal(type, uint32_t(type.array.size()) - 1) * type_to_packed_array_stride(type, flags, packing);
|
||||
return to_array_size_literal(type, uint32_t(type.array.size()) - 1) *
|
||||
type_to_packed_array_stride(type, flags, packing);
|
||||
|
||||
const uint32_t base_alignment = type_to_packed_base_size(type, packing);
|
||||
uint32_t size = 0;
|
||||
|
@ -1078,7 +1080,8 @@ string CompilerGLSL::layout_for_variable(const SPIRVariable &var)
|
|||
if (ssbo_is_packing_standard(type, BufferPackingStd140))
|
||||
attr.push_back("std140");
|
||||
else
|
||||
SPIRV_CROSS_THROW("Uniform buffer cannot be expressed as std140. You can try flattening this block to support a more flexible layout.");
|
||||
SPIRV_CROSS_THROW("Uniform buffer cannot be expressed as std140. You can try flattening this block to "
|
||||
"support a more flexible layout.");
|
||||
}
|
||||
else if (var.storage == StorageClassStorageBuffer ||
|
||||
(var.storage == StorageClassUniform && (typeflags & (1ull << DecorationBufferBlock))))
|
||||
|
@ -2528,7 +2531,7 @@ string CompilerGLSL::declare_temporary(uint32_t result_type, uint32_t result_id)
|
|||
if (find_if(begin(header.declare_temporary), end(header.declare_temporary),
|
||||
[result_type, result_id](const pair<uint32_t, uint32_t> &tmp) {
|
||||
return tmp.first == result_type && tmp.second == result_id;
|
||||
}) == end(header.declare_temporary))
|
||||
}) == end(header.declare_temporary))
|
||||
{
|
||||
header.declare_temporary.emplace_back(result_type, result_id);
|
||||
force_recompile = true;
|
||||
|
@ -2755,8 +2758,9 @@ void CompilerGLSL::emit_quaternary_func_op(uint32_t result_type, uint32_t result
|
|||
uint32_t op2, uint32_t op3, const char *op)
|
||||
{
|
||||
bool forward = should_forward(op0) && should_forward(op1) && should_forward(op2) && should_forward(op3);
|
||||
emit_op(result_type, result_id, join(op, "(", to_expression(op0), ", ", to_expression(op1), ", ",
|
||||
to_expression(op2), ", ", to_expression(op3), ")"),
|
||||
emit_op(result_type, result_id,
|
||||
join(op, "(", to_expression(op0), ", ", to_expression(op1), ", ", to_expression(op2), ", ",
|
||||
to_expression(op3), ")"),
|
||||
forward);
|
||||
|
||||
inherit_expression_dependencies(result_id, op0);
|
||||
|
@ -5689,8 +5693,8 @@ void CompilerGLSL::emit_instruction(const Instruction &instruction)
|
|||
register_read(ops[1], ops[2], should_forward(ops[2]));
|
||||
break;
|
||||
|
||||
// OpAtomicStore unimplemented. Not sure what would use that.
|
||||
// OpAtomicLoad seems to only be relevant for atomic counters.
|
||||
// OpAtomicStore unimplemented. Not sure what would use that.
|
||||
// OpAtomicLoad seems to only be relevant for atomic counters.
|
||||
|
||||
case OpAtomicIIncrement:
|
||||
forced_temporaries.insert(ops[1]);
|
||||
|
|
|
@ -906,7 +906,10 @@ void CompilerHLSL::emit_resources()
|
|||
if (requires_op_fmod)
|
||||
{
|
||||
static const char *types[] = {
|
||||
"float", "float2", "float3", "float4",
|
||||
"float",
|
||||
"float2",
|
||||
"float3",
|
||||
"float4",
|
||||
};
|
||||
|
||||
for (auto &type : types)
|
||||
|
|
|
@ -1441,7 +1441,7 @@ void CompilerMSL::emit_instruction(const Instruction &instruction)
|
|||
break;
|
||||
}
|
||||
|
||||
// OpOuterProduct
|
||||
// OpOuterProduct
|
||||
|
||||
default:
|
||||
CompilerGLSL::emit_instruction(instruction);
|
||||
|
@ -1650,10 +1650,10 @@ void CompilerMSL::emit_glsl_op(uint32_t result_type, uint32_t id, uint32_t eop,
|
|||
break;
|
||||
}
|
||||
|
||||
// TODO:
|
||||
// GLSLstd450InterpolateAtCentroid (centroid_no_perspective qualifier)
|
||||
// GLSLstd450InterpolateAtSample (sample_no_perspective qualifier)
|
||||
// GLSLstd450InterpolateAtOffset
|
||||
// TODO:
|
||||
// GLSLstd450InterpolateAtCentroid (centroid_no_perspective qualifier)
|
||||
// GLSLstd450InterpolateAtSample (sample_no_perspective qualifier)
|
||||
// GLSLstd450InterpolateAtOffset
|
||||
|
||||
default:
|
||||
CompilerGLSL::emit_glsl_op(result_type, id, eop, args, count);
|
||||
|
|
Загрузка…
Ссылка в новой задаче