From 8d5747aa54b88812ef4060328e3befdb13f3f45a Mon Sep 17 00:00:00 2001 From: Cedric Nugteren Date: Wed, 5 Oct 2016 08:23:54 +0200 Subject: Made non-standard types void-pointers in the Netlib BLAS interface --- scripts/generator/generator/datatype.py | 7 +++---- scripts/generator/generator/routine.py | 6 +++--- 2 files changed, 6 insertions(+), 7 deletions(-) (limited to 'scripts') diff --git a/scripts/generator/generator/datatype.py b/scripts/generator/generator/datatype.py index 29acc744..01f32dd8 100644 --- a/scripts/generator/generator/datatype.py +++ b/scripts/generator/generator/datatype.py @@ -65,10 +65,9 @@ class DataType: return ((scalar == "alpha" and self.alpha_cpp in [D_FLOAT2, D_DOUBLE2]) or (scalar == "beta" and self.beta_cpp in [D_FLOAT2, D_DOUBLE2])) - def is_non_standard(self, scalar): - """Current scalar is of a non-standard type""" - return ((scalar == "alpha" and self.alpha_cpp in [D_HALF, D_FLOAT2, D_DOUBLE2]) or - (scalar == "beta" and self.beta_cpp in [D_HALF, D_FLOAT2, D_DOUBLE2])) + def is_non_standard(self): + """Current type is of a non-standard type""" + return self.buffer_type in [D_HALF, D_FLOAT2, D_DOUBLE2] # Regular data-types diff --git a/scripts/generator/generator/routine.py b/scripts/generator/generator/routine.py index 4870b861..126d64ce 100644 --- a/scripts/generator/generator/routine.py +++ b/scripts/generator/generator/routine.py @@ -182,7 +182,7 @@ class Routine: """As above but as plain C pointer""" prefix = "const " if name in self.inputs else "" if name in self.inputs or name in self.outputs: - data_type = "void" if flavour.is_non_standard(name) else flavour.buffer_type + data_type = "void" if flavour.is_non_standard() else flavour.buffer_type a = [prefix + data_type + "* " + name + ""] c = ["const int " + name + "_" + self.postfix(name)] if name not in self.buffers_without_ld_inc() else [] return [", ".join(a + c)] @@ -317,9 +317,9 @@ class Routine: """Retrieves the definition of a scalar (alpha/beta) but make it a void pointer in case of non-standard types""" if name in self.scalars: if name == "alpha": - data_type = "void*" if flavour.is_non_standard(name) else flavour.alpha_cpp + data_type = "void*" if flavour.is_non_standard() else flavour.alpha_cpp return ["const " + data_type + " " + name] - data_type = "void*" if flavour.is_non_standard(name) else flavour.beta_cpp + data_type = "void*" if flavour.is_non_standard() else flavour.beta_cpp return ["const " + data_type + " " + name] return [] -- cgit v1.2.3