asahi: Add GS lowering pass
The big monster. Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26056>
This commit is contained in:

committed by
Marge Bot

parent
43e134b106
commit
fe7650bcf7
1205
src/asahi/lib/agx_nir_lower_gs.c
Normal file
1205
src/asahi/lib/agx_nir_lower_gs.c
Normal file
File diff suppressed because it is too large
Load Diff
27
src/asahi/lib/agx_nir_lower_gs.h
Normal file
27
src/asahi/lib/agx_nir_lower_gs.h
Normal file
@@ -0,0 +1,27 @@
|
||||
/*
|
||||
* Copyright 2023 Alyssa Rosenzweig
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#ifndef __AGX_NIR_LOWER_GS_H
|
||||
#define __AGX_NIR_LOWER_GS_H
|
||||
|
||||
#include <stdbool.h>
|
||||
|
||||
struct nir_shader;
|
||||
struct agx_ia_key;
|
||||
enum mesa_prim;
|
||||
|
||||
void agx_nir_lower_gs(struct nir_shader *gs, struct nir_shader *vs,
|
||||
const struct nir_shader *libagx, struct agx_ia_key *ia,
|
||||
bool rasterizer_discard, struct nir_shader **gs_count,
|
||||
struct nir_shader **gs_copy, struct nir_shader **pre_gs,
|
||||
enum mesa_prim *out_mode, unsigned *out_count_words);
|
||||
|
||||
struct nir_shader *agx_nir_prefix_sum_gs(const struct nir_shader *libagx,
|
||||
unsigned words);
|
||||
|
||||
struct nir_shader *agx_nir_gs_setup_indirect(const struct nir_shader *libagx,
|
||||
enum mesa_prim prim);
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user