mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-21 21:40:22 +01:00
panfrost/midgard/disasm: include textureGather()
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
This commit is contained in:
parent
6c18ae33bc
commit
4e9e42cc56
2 changed files with 16 additions and 5 deletions
|
|
@ -1048,10 +1048,23 @@ print_texture_format(int format)
|
|||
}
|
||||
|
||||
static void
|
||||
print_texture_op(unsigned op)
|
||||
print_texture_op(unsigned op, bool gather)
|
||||
{
|
||||
/* Act like a bare name, like ESSL functions */
|
||||
|
||||
if (gather) {
|
||||
printf("textureGather");
|
||||
|
||||
unsigned component = op >> 4;
|
||||
unsigned bottom = op & 0xF;
|
||||
|
||||
if (bottom != 0x2)
|
||||
printf("_unk%d", bottom);
|
||||
|
||||
printf(".%c", components[component]);
|
||||
return;
|
||||
}
|
||||
|
||||
switch (op) {
|
||||
DEFINE_CASE(TEXTURE_OP_NORMAL, "texture");
|
||||
DEFINE_CASE(TEXTURE_OP_LOD, "textureLod");
|
||||
|
|
@ -1077,7 +1090,7 @@ print_texture_word(uint32_t *word, unsigned tabs)
|
|||
midgard_texture_word *texture = (midgard_texture_word *) word;
|
||||
|
||||
/* Broad category of texture operation in question */
|
||||
print_texture_op(texture->op);
|
||||
print_texture_op(texture->op, texture->is_gather);
|
||||
|
||||
/* Specific format in question */
|
||||
print_texture_format(texture->format);
|
||||
|
|
@ -1180,12 +1193,10 @@ print_texture_word(uint32_t *word, unsigned tabs)
|
|||
* following unknowns are zero, so we don't include them */
|
||||
|
||||
if (texture->unknown2 ||
|
||||
texture->unknown3 ||
|
||||
texture->unknown4 ||
|
||||
texture->unknownA ||
|
||||
texture->unknown8) {
|
||||
printf("// unknown2 = 0x%x\n", texture->unknown2);
|
||||
printf("// unknown3 = 0x%x\n", texture->unknown3);
|
||||
printf("// unknown4 = 0x%x\n", texture->unknown4);
|
||||
printf("// unknownA = 0x%x\n", texture->unknownA);
|
||||
printf("// unknown8 = 0x%x\n", texture->unknown8);
|
||||
|
|
|
|||
|
|
@ -510,7 +510,7 @@ __attribute__((__packed__))
|
|||
|
||||
unsigned op : 6;
|
||||
unsigned shadow : 1;
|
||||
unsigned unknown3 : 1;
|
||||
unsigned is_gather : 1;
|
||||
|
||||
/* A little obscure, but last is set for the last texture operation in
|
||||
* a shader. cont appears to just be last's opposite (?). Yeah, I know,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue