pvr: Add support for generating NOP program

Signed-off-by: Simon Perretta <simon.perretta@imgtec.com>
Acked-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21474>
This commit is contained in:
Simon Perretta 2023-02-14 00:48:57 +00:00 committed by Marge Bot
parent 4ddcda8369
commit 73d07bbb52
2 changed files with 19 additions and 0 deletions

View file

@ -61,3 +61,18 @@ void pvr_uscgen_per_job_eot(uint32_t state0,
ralloc_free(shader);
}
void pvr_uscgen_nop(struct util_dynarray *binary)
{
rogue_builder b;
rogue_shader *shader = rogue_shader_create(NULL, MESA_SHADER_NONE);
rogue_set_shader_name(shader, "NOP");
rogue_builder_init(&b, shader);
rogue_push_block(&b);
rogue_END(&b);
rogue_shader_passes(shader);
rogue_encode_shader(NULL, shader, binary);
ralloc_free(shader);
}

View file

@ -28,9 +28,13 @@
#include <stdint.h>
/* TODO: Shader caching (not pipeline caching) support. */
void pvr_uscgen_per_job_eot(uint32_t state0,
uint32_t state1,
unsigned *temps_used,
struct util_dynarray *binary);
void pvr_uscgen_nop(struct util_dynarray *binary);
#endif /* PVR_USCGEN_H */