pan/bi: Add BI_GENERIC property
I don't want to have 20 class-specific structures floating around. So let's derive them all from a common generic ALU type. 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:
committed by
Marge Bot
parent
29acd7bd8e
commit
34165c7ec0
@@ -27,12 +27,12 @@
|
||||
#include "compiler.h"
|
||||
|
||||
unsigned bi_class_props[BI_NUM_CLASSES] = {
|
||||
[BI_ADD] = BI_MODS,
|
||||
[BI_ADD] = BI_GENERIC | BI_MODS,
|
||||
[BI_ATEST] = 0,
|
||||
[BI_BRANCH] = 0,
|
||||
[BI_CMP] = BI_MODS,
|
||||
[BI_CMP] = BI_GENERIC | BI_MODS,
|
||||
[BI_BLEND] = 0,
|
||||
[BI_BITWISE] = 0,
|
||||
[BI_BITWISE] = BI_GENERIC,
|
||||
[BI_CONVERT] = 0,
|
||||
[BI_CSEL] = 0,
|
||||
[BI_DISCARD] = 0,
|
||||
@@ -42,12 +42,12 @@ unsigned bi_class_props[BI_NUM_CLASSES] = {
|
||||
[BI_LOAD_ATTR] = 0,
|
||||
[BI_LOAD_VAR] = 0,
|
||||
[BI_LOAD_VAR_ADDRESS] = 0,
|
||||
[BI_MINMAX] = 0,
|
||||
[BI_MINMAX] = BI_GENERIC,
|
||||
[BI_MOV] = BI_MODS,
|
||||
[BI_SHIFT] = 0,
|
||||
[BI_STORE] = 0,
|
||||
[BI_STORE_VAR] = 0,
|
||||
[BI_SPECIAL] = 0,
|
||||
[BI_TEX] = 0,
|
||||
[BI_ROUND] = 0,
|
||||
[BI_ROUND] = BI_GENERIC,
|
||||
};
|
||||
|
||||
@@ -78,6 +78,11 @@ extern unsigned bi_class_props[BI_NUM_CLASSES];
|
||||
/* abs/neg/outmod valid for a float op */
|
||||
#define BI_MODS (1 << 0)
|
||||
|
||||
/* Generic enough that little class-specific information is required. In other
|
||||
* words, it acts as a "normal" ALU op, even if the encoding ends up being
|
||||
* irregular enough to warrant a separate class */
|
||||
#define BI_GENERIC (1 << 1)
|
||||
|
||||
/* It can't get any worse than csel4... can it? */
|
||||
#define BIR_SRC_COUNT 4
|
||||
|
||||
|
||||
Reference in New Issue
Block a user