diff --git a/src/panfrost/bifrost/bifrost_compile.c b/src/panfrost/bifrost/bifrost_compile.c index 82a40547039..eacddef4c58 100644 --- a/src/panfrost/bifrost/bifrost_compile.c +++ b/src/panfrost/bifrost/bifrost_compile.c @@ -2044,6 +2044,8 @@ bi_optimize_nir(nir_shader *nir) .lower_txd = true, }; + NIR_PASS(progress, nir, nir_lower_int64); + NIR_PASS(progress, nir, nir_lower_tex, &lower_tex_options); NIR_PASS(progress, nir, nir_lower_alu_to_scalar, NULL, NULL); NIR_PASS(progress, nir, nir_lower_load_const_to_scalar); diff --git a/src/panfrost/bifrost/bifrost_compile.h b/src/panfrost/bifrost/bifrost_compile.h index 2c6d6217d93..7aa5a386761 100644 --- a/src/panfrost/bifrost/bifrost_compile.h +++ b/src/panfrost/bifrost/bifrost_compile.h @@ -67,6 +67,8 @@ static const nir_shader_compiler_options bifrost_nir_options = { .lower_pack_split = true, .lower_doubles_options = nir_lower_dmod, + /* TODO: Don't lower supported 64-bit operations */ + .lower_int64_options = ~0, .lower_bitfield_extract_to_shifts = true, .has_fsub = true,