spirv: Drop the constant_as_global as option

Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6379>
This commit is contained in:
Jason Ekstrand
2020-08-19 11:26:53 -05:00
committed by Marge Bot
parent 26a4c8f375
commit 6678f1e81c
4 changed files with 6 additions and 22 deletions

View File

@@ -80,12 +80,6 @@ struct spirv_to_nir_options {
nir_address_format temp_addr_format; nir_address_format temp_addr_format;
nir_address_format constant_addr_format; nir_address_format constant_addr_format;
/* Whether UniformConstant memory should be treated as normal global memory.
* This is usefull for CL 2.0 implementations with fine grain system SVM
* support.
*/
bool constant_as_global;
struct { struct {
void (*func)(void *private_data, void (*func)(void *private_data,
enum nir_spirv_debug_level level, enum nir_spirv_debug_level level,

View File

@@ -137,7 +137,6 @@ int main(int argc, char **argv)
spirv_opts.caps.int16 = true; spirv_opts.caps.int16 = true;
spirv_opts.caps.int64 = true; spirv_opts.caps.int64 = true;
spirv_opts.caps.kernel = true; spirv_opts.caps.kernel = true;
spirv_opts.constant_as_global = true;
} }
nir_shader *nir = spirv_to_nir(map, word_count, NULL, 0, nir_shader *nir = spirv_to_nir(map, word_count, NULL, 0,

View File

@@ -4481,10 +4481,8 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
assert(nir_address_format_num_components(b->options->global_addr_format) == 1); assert(nir_address_format_num_components(b->options->global_addr_format) == 1);
assert(nir_address_format_bit_size(b->options->shared_addr_format) == 32); assert(nir_address_format_bit_size(b->options->shared_addr_format) == 32);
assert(nir_address_format_num_components(b->options->shared_addr_format) == 1); assert(nir_address_format_num_components(b->options->shared_addr_format) == 1);
if (!b->options->constant_as_global) { assert(nir_address_format_bit_size(b->options->constant_addr_format) == 32);
assert(nir_address_format_bit_size(b->options->constant_addr_format) == 32); assert(nir_address_format_num_components(b->options->constant_addr_format) == 1);
assert(nir_address_format_num_components(b->options->constant_addr_format) == 1);
}
break; break;
case SpvAddressingModelPhysical64: case SpvAddressingModelPhysical64:
vtn_fail_if(b->shader->info.stage != MESA_SHADER_KERNEL, vtn_fail_if(b->shader->info.stage != MESA_SHADER_KERNEL,
@@ -4495,10 +4493,8 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
assert(nir_address_format_num_components(b->options->global_addr_format) == 1); assert(nir_address_format_num_components(b->options->global_addr_format) == 1);
assert(nir_address_format_bit_size(b->options->shared_addr_format) == 64); assert(nir_address_format_bit_size(b->options->shared_addr_format) == 64);
assert(nir_address_format_num_components(b->options->shared_addr_format) == 1); assert(nir_address_format_num_components(b->options->shared_addr_format) == 1);
if (!b->options->constant_as_global) { assert(nir_address_format_bit_size(b->options->constant_addr_format) == 64);
assert(nir_address_format_bit_size(b->options->constant_addr_format) == 64); assert(nir_address_format_num_components(b->options->constant_addr_format) == 1);
assert(nir_address_format_num_components(b->options->constant_addr_format) == 1);
}
break; break;
case SpvAddressingModelLogical: case SpvAddressingModelLogical:
vtn_fail_if(b->shader->info.stage == MESA_SHADER_KERNEL, vtn_fail_if(b->shader->info.stage == MESA_SHADER_KERNEL,

View File

@@ -1803,13 +1803,8 @@ vtn_storage_class_to_mode(struct vtn_builder *b,
break; break;
case SpvStorageClassUniformConstant: case SpvStorageClassUniformConstant:
if (b->shader->info.stage == MESA_SHADER_KERNEL) { if (b->shader->info.stage == MESA_SHADER_KERNEL) {
if (b->options->constant_as_global) { mode = vtn_variable_mode_constant;
mode = vtn_variable_mode_cross_workgroup; nir_mode = nir_var_mem_constant;
nir_mode = nir_var_mem_global;
} else {
mode = vtn_variable_mode_constant;
nir_mode = nir_var_mem_constant;
}
} else { } else {
mode = vtn_variable_mode_uniform; mode = vtn_variable_mode_uniform;
nir_mode = nir_var_uniform; nir_mode = nir_var_uniform;