mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-05 01:50:25 +01:00
mapi/glapi: Generate sizeof() helpers instead of fixed sizes.
Generating a source code with a fixed size leads to issues with plattform dependent types. We either hard code 4 or 8 bytes there, and both are wrong on the other plattform. So this patch solves this issue by generating eg sizeof(GLsizeiptr), which is valid both on 32 and on 64 bit plattforms. Signed-off-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:
parent
e51eda99df
commit
b1156ecdf2
1 changed files with 11 additions and 4 deletions
|
|
@ -565,7 +565,14 @@ class gl_parameter(object):
|
|||
|
||||
|
||||
def size_string(self, use_parens = 1):
|
||||
s = self.size()
|
||||
base_size_str = ""
|
||||
|
||||
count = self.get_element_count()
|
||||
if count:
|
||||
base_size_str = "%d * " % count
|
||||
|
||||
base_size_str += "sizeof(%s)" % ( self.get_base_type_string() )
|
||||
|
||||
if self.counter or self.count_parameter_list:
|
||||
list = [ "compsize" ]
|
||||
|
||||
|
|
@ -574,8 +581,8 @@ class gl_parameter(object):
|
|||
elif self.counter:
|
||||
list = [ self.counter ]
|
||||
|
||||
if s > 1:
|
||||
list.append( str(s) )
|
||||
if self.size() > 1:
|
||||
list.append( base_size_str )
|
||||
|
||||
if len(list) > 1 and use_parens :
|
||||
return "safe_mul(%s)" % ", ".join(list)
|
||||
|
|
@ -585,7 +592,7 @@ class gl_parameter(object):
|
|||
elif self.is_image():
|
||||
return "compsize"
|
||||
else:
|
||||
return str(s)
|
||||
return base_size_str
|
||||
|
||||
|
||||
def format_string(self):
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue