X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fgallium%2Fauxiliary%2Futil%2Fu_format_parse.py;fp=src%2Fgallium%2Fauxiliary%2Futil%2Fu_format_parse.py;h=7076c676aaf000f50d0362e3865fab397d404d54;hb=948ac631123d814f3223b7fd9a00aa60e3c8bdf0;hp=96e6451d0d259af76ee890e69755d3190609cb6f;hpb=350bbc946a2415c687deaeb600c7effec67d5fdc;p=mesa.git diff --git a/src/gallium/auxiliary/util/u_format_parse.py b/src/gallium/auxiliary/util/u_format_parse.py index 96e6451d0d2..7076c676aaf 100755 --- a/src/gallium/auxiliary/util/u_format_parse.py +++ b/src/gallium/auxiliary/util/u_format_parse.py @@ -138,6 +138,8 @@ class Format: return nr_channels def is_array(self): + if self.layout != PLAIN: + return False ref_channel = self.channels[0] for channel in self.channels[1:]: if channel.size and (channel.size != ref_channel.size or channel.size % 8): @@ -145,6 +147,8 @@ class Format: return True def is_mixed(self): + if self.layout != PLAIN: + return False ref_channel = self.channels[0] if ref_channel.type == VOID: ref_channel = self.channels[1] @@ -160,18 +164,24 @@ class Format: return is_pot(self.block_size()) def is_int(self): + if self.layout != PLAIN: + return False for channel in self.channels: if channel.type not in (VOID, UNSIGNED, SIGNED): return False return True def is_float(self): + if self.layout != PLAIN: + return False for channel in self.channels: if channel.type not in (VOID, FLOAT): return False return True def is_bitmask(self): + if self.layout != PLAIN: + return False if self.block_size() not in (8, 16, 32): return False for channel in self.channels: