diff --git a/src/asahi/compiler/agx_compile.h b/src/asahi/compiler/agx_compile.h index 8df4576c756..4db9b2110a4 100644 --- a/src/asahi/compiler/agx_compile.h +++ b/src/asahi/compiler/agx_compile.h @@ -197,40 +197,36 @@ agx_compile_shader_nir(nir_shader *nir, struct agx_shader_info *out); static const nir_shader_compiler_options agx_nir_options = { - .lower_scmp = true, + .lower_fdiv = true, + .fuse_ffma16 = true, + .fuse_ffma32 = true, .lower_flrp16 = true, .lower_flrp32 = true, - .lower_ffract = true, - .lower_fmod = true, - .lower_fdiv = true, - .lower_isign = true, - .lower_iabs = true, .lower_fpow = true, - .lower_find_lsb = true, + .lower_fmod = true, .lower_ifind_msb = true, - .lower_fdph = true, - .lower_wpos_pntc = true, + .lower_find_lsb = true, + .lower_scmp = true, + .lower_isign = true, .lower_fsign = true, - .lower_rotate = true, + .lower_iabs = true, + .lower_fdph = true, + .lower_ffract = true, .lower_pack_split = true, .lower_insert_byte = true, .lower_insert_word = true, - .lower_uniforms_to_ubo = true, .lower_cs_local_index_to_id = true, - - .lower_doubles_options = nir_lower_dmod, - .lower_int64_options = ~(nir_lower_iadd64 | nir_lower_imul_2x32_64), - - .force_indirect_unrolling = (nir_var_shader_in | nir_var_shader_out | nir_var_function_temp), - + .has_cs_global_id = true, + .lower_wpos_pntc = true, + .vectorize_io = true, + .use_interpolated_input_intrinsics = true, + .lower_rotate = true, .has_fsub = true, .has_isub = true, - .has_cs_global_id = true, - - .vectorize_io = true, - .fuse_ffma16 = true, - .fuse_ffma32 = true, - .use_interpolated_input_intrinsics = true, + .lower_uniforms_to_ubo = true, + .force_indirect_unrolling = (nir_var_shader_in | nir_var_shader_out | nir_var_function_temp), + .lower_int64_options = (nir_lower_int64_options) ~(nir_lower_iadd64 | nir_lower_imul_2x32_64), + .lower_doubles_options = nir_lower_dmod, }; #endif diff --git a/src/asahi/compiler/agx_compiler.h b/src/asahi/compiler/agx_compiler.h index 3c609b2c065..e2cd20db9e9 100644 --- a/src/asahi/compiler/agx_compiler.h +++ b/src/asahi/compiler/agx_compiler.h @@ -98,9 +98,9 @@ static inline agx_index agx_get_index(unsigned value, enum agx_size size) { return (agx_index) { - .type = AGX_INDEX_NORMAL, .value = value, - .size = size + .size = size, + .type = AGX_INDEX_NORMAL, }; } @@ -108,9 +108,9 @@ static inline agx_index agx_immediate(uint16_t imm) { return (agx_index) { - .type = AGX_INDEX_IMMEDIATE, .value = imm, - .size = AGX_SIZE_32 + .size = AGX_SIZE_32, + .type = AGX_INDEX_IMMEDIATE, }; } @@ -126,9 +126,9 @@ static inline agx_index agx_register(uint8_t imm, enum agx_size size) { return (agx_index) { - .type = AGX_INDEX_REGISTER, .value = imm, - .size = size + .size = size, + .type = AGX_INDEX_REGISTER, }; } @@ -136,9 +136,9 @@ static inline agx_index agx_nir_register(unsigned imm, enum agx_size size) { return (agx_index) { - .type = AGX_INDEX_NIR_REGISTER, .value = imm, - .size = size + .size = size, + .type = AGX_INDEX_NIR_REGISTER, }; } @@ -147,9 +147,9 @@ static inline agx_index agx_uniform(uint8_t imm, enum agx_size size) { return (agx_index) { - .type = AGX_INDEX_UNIFORM, .value = imm, - .size = size + .size = size, + .type = AGX_INDEX_UNIFORM, }; }