ac/nir: make handle_shader_output_decl() non-static
[mesa.git] / src / amd / common / ac_nir_to_llvm.h
index eea393a9c24f9e49bed57514a5dbf7c824476392..7b64ad54fc536071a509a19b99be43810611108c 100644 (file)
@@ -34,6 +34,7 @@
 struct ac_shader_binary;
 struct ac_shader_config;
 struct nir_shader;
+struct nir_variable;
 struct radv_pipeline_layout;
 
 struct ac_llvm_context;
@@ -163,6 +164,7 @@ struct ac_shader_variant_info {
        unsigned num_user_sgprs;
        unsigned num_input_sgprs;
        unsigned num_input_vgprs;
+       unsigned private_mem_vgprs;
        bool need_indirect_descriptor_sets;
        struct {
                struct {
@@ -234,4 +236,13 @@ void ac_lower_indirect_derefs(struct nir_shader *nir, enum chip_class);
 void ac_nir_translate(struct ac_llvm_context *ac, struct ac_shader_abi *abi,
                      struct nir_shader *nir);
 
+void
+ac_handle_shader_output_decl(struct ac_llvm_context *ctx,
+                            struct ac_shader_abi *abi,
+                            struct nir_shader *nir,
+                            struct nir_variable *variable,
+                            gl_shader_stage stage);
+
+bool ac_lower_subgroups(struct nir_shader *shader);
+
 #endif /* AC_NIR_TO_LLVM_H */