pan/bi: Move bi_interp_mode_name to bi_print

Instead of open-coding it in the middle of the disassembler.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4061>
This commit is contained in:
Alyssa Rosenzweig 2020-03-04 09:21:25 -05:00 committed by Marge Bot
parent 5d16a8109c
commit aef0f00cbc
3 changed files with 14 additions and 13 deletions

View file

@ -78,6 +78,18 @@ bi_csel_cond_name(enum bifrost_csel_cond cond)
}
}
const char *
bi_interp_mode_name(enum bifrost_interp_mode mode)
{
switch (mode) {
case BIFROST_INTERP_PER_FRAG: return ".per_frag";
case BIFROST_INTERP_CENTROID: return ".centroid";
case BIFROST_INTERP_DEFAULT: return "";
case BIFROST_INTERP_EXPLICIT: return ".explicit";
default: return ".unknown";
}
}
const char *
bi_ldst_type_name(enum bifrost_ldst_type type)
{

View file

@ -33,6 +33,7 @@ const char * bi_output_mod_name(enum bifrost_outmod mod);
const char * bi_minmax_mode_name(enum bifrost_minmax_mode mod);
const char * bi_round_mode_name(enum bifrost_roundmode mod);
const char * bi_csel_cond_name(enum bifrost_csel_cond cond);
const char * bi_interp_mode_name(enum bifrost_interp_mode mode);
const char * bi_ldst_type_name(enum bifrost_ldst_type type);
#endif

View file

@ -1216,19 +1216,7 @@ static void dump_add(FILE *fp, uint64_t word, struct bifrost_regs regs,
fprintf(fp, ".reuse");
if (ADD.op & 0x400)
fprintf(fp, ".flat");
switch ((ADD.op >> 7) & 0x3) {
case BIFROST_INTERP_PER_FRAG:
fprintf(fp, ".per_frag");
break;
case BIFROST_INTERP_CENTROID:
fprintf(fp, ".centroid");
break;
case BIFROST_INTERP_DEFAULT:
break;
case BIFROST_INTERP_EXPLICIT:
fprintf(fp, ".explicit");
break;
}
fprintf(fp, "%s", bi_interp_mode_name((ADD.op >> 7) & 0x3));
fprintf(fp, ".v%d", ((ADD.op >> 5) & 0x3) + 1);
} else if (info.src_type == ADD_BRANCH) {
enum bifrost_branch_code branchCode = (enum bifrost_branch_code) ((ADD.op >> 6) & 0x3f);