summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/freedreno/rnn/rnndec.c7
-rw-r--r--src/freedreno/rnn/rnndec.h2
2 files changed, 3 insertions, 6 deletions
diff --git a/src/freedreno/rnn/rnndec.c b/src/freedreno/rnn/rnndec.c
index db92de332f6..553c422d054 100644
--- a/src/freedreno/rnn/rnndec.c
+++ b/src/freedreno/rnn/rnndec.c
@@ -137,14 +137,11 @@ static const char *rnndec_decode_enum_val(struct rnndeccontext *ctx,
return NULL;
}
-char *rnndec_decode_enum(struct rnndeccontext *ctx, const char *enumname, uint64_t enumval)
+const char *rnndec_decode_enum(struct rnndeccontext *ctx, const char *enumname, uint64_t enumval)
{
struct rnnenum *en = rnn_findenum (ctx->db, enumname);
if (en) {
- int i;
- for (i = 0; i < en->valsnum; i++)
- if (en->vals[i]->valvalid && en->vals[i]->value == enumval)
- return en->vals[i]->name;
+ return rnndec_decode_enum_val(ctx, en->vals, en->valsnum, enumval);
}
return NULL;
}
diff --git a/src/freedreno/rnn/rnndec.h b/src/freedreno/rnn/rnndec.h
index 1e21d02ba7f..6e90eb9e97d 100644
--- a/src/freedreno/rnn/rnndec.h
+++ b/src/freedreno/rnn/rnndec.h
@@ -50,7 +50,7 @@ struct rnndecaddrinfo {
struct rnndeccontext *rnndec_newcontext(struct rnndb *db);
int rnndec_varadd(struct rnndeccontext *ctx, char *varset, const char *variant);
int rnndec_varmatch(struct rnndeccontext *ctx, struct rnnvarinfo *vi);
-char *rnndec_decode_enum(struct rnndeccontext *ctx, const char *enumname, uint64_t enumval);
+const char *rnndec_decode_enum(struct rnndeccontext *ctx, const char *enumname, uint64_t enumval);
char *rnndec_decodeval(struct rnndeccontext *ctx, struct rnntypeinfo *ti, uint64_t value);
int rnndec_checkaddr(struct rnndeccontext *ctx, struct rnndomain *domain, uint64_t addr, int write);
struct rnndecaddrinfo *rnndec_decodeaddr(struct rnndeccontext *ctx, struct rnndomain *domain, uint64_t addr, int write);