mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 13:28:06 +02:00
pan/midgard: Expose more typesize helpers
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
This commit is contained in:
parent
2236904f72
commit
34a860b9e3
2 changed files with 21 additions and 1 deletions
|
|
@ -518,7 +518,9 @@ unsigned mir_ubo_shift(midgard_load_store_op op);
|
|||
midgard_reg_mode mir_typesize(midgard_instruction *ins);
|
||||
midgard_reg_mode mir_srcsize(midgard_instruction *ins, unsigned i);
|
||||
unsigned mir_bytes_for_mode(midgard_reg_mode mode);
|
||||
midgard_reg_mode mir_mode_for_destsize(unsigned size);
|
||||
uint16_t mir_from_bytemask(uint16_t bytemask, midgard_reg_mode mode);
|
||||
uint16_t mir_to_bytemask(midgard_reg_mode mode, unsigned mask);
|
||||
uint16_t mir_bytemask(midgard_instruction *ins);
|
||||
uint16_t mir_round_bytemask_down(uint16_t mask, midgard_reg_mode mode);
|
||||
void mir_set_bytemask(midgard_instruction *ins, uint16_t bytemask);
|
||||
|
|
|
|||
|
|
@ -283,9 +283,27 @@ mir_srcsize(midgard_instruction *ins, unsigned i)
|
|||
return mode;
|
||||
}
|
||||
|
||||
midgard_reg_mode
|
||||
mir_mode_for_destsize(unsigned size)
|
||||
{
|
||||
switch (size) {
|
||||
case 8:
|
||||
return midgard_reg_mode_8;
|
||||
case 16:
|
||||
return midgard_reg_mode_16;
|
||||
case 32:
|
||||
return midgard_reg_mode_32;
|
||||
case 64:
|
||||
return midgard_reg_mode_64;
|
||||
default:
|
||||
unreachable("Unknown destination size");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Converts per-component mask to a byte mask */
|
||||
|
||||
static uint16_t
|
||||
uint16_t
|
||||
mir_to_bytemask(midgard_reg_mode mode, unsigned mask)
|
||||
{
|
||||
switch (mode) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue