diff options
-rw-r--r-- | src/compiler/glsl/link_varyings.h | 28 | ||||
-rw-r--r-- | src/mesa/program/prog_parameter.h | 31 |
2 files changed, 33 insertions, 26 deletions
diff --git a/src/compiler/glsl/link_varyings.h b/src/compiler/glsl/link_varyings.h index e052a2b3e56..16bf1668a4c 100644 --- a/src/compiler/glsl/link_varyings.h +++ b/src/compiler/glsl/link_varyings.h @@ -33,6 +33,7 @@ #include "main/glheader.h" +#include "program/prog_parameter.h" struct gl_shader_program; @@ -161,32 +162,7 @@ private: bool is_64bit() const { - switch (this->type) { - case GL_DOUBLE: - case GL_DOUBLE_VEC2: - case GL_DOUBLE_VEC3: - case GL_DOUBLE_VEC4: - case GL_DOUBLE_MAT2: - case GL_DOUBLE_MAT2x3: - case GL_DOUBLE_MAT2x4: - case GL_DOUBLE_MAT3: - case GL_DOUBLE_MAT3x2: - case GL_DOUBLE_MAT3x4: - case GL_DOUBLE_MAT4: - case GL_DOUBLE_MAT4x2: - case GL_DOUBLE_MAT4x3: - case GL_INT64_ARB: - case GL_INT64_VEC2_ARB: - case GL_INT64_VEC3_ARB: - case GL_INT64_VEC4_ARB: - case GL_UNSIGNED_INT64_ARB: - case GL_UNSIGNED_INT64_VEC2_ARB: - case GL_UNSIGNED_INT64_VEC3_ARB: - case GL_UNSIGNED_INT64_VEC4_ARB: - return true; - default: - return false; - } + return _mesa_gl_datatype_is_64bit(this->type); } /** diff --git a/src/mesa/program/prog_parameter.h b/src/mesa/program/prog_parameter.h index cc551c18910..78c9909f5cc 100644 --- a/src/mesa/program/prog_parameter.h +++ b/src/mesa/program/prog_parameter.h @@ -185,6 +185,37 @@ _mesa_lookup_parameter_index(const struct gl_program_parameter_list *paramList, return -1; } +static inline bool +_mesa_gl_datatype_is_64bit(GLenum datatype) +{ + switch (datatype) { + case GL_DOUBLE: + case GL_DOUBLE_VEC2: + case GL_DOUBLE_VEC3: + case GL_DOUBLE_VEC4: + case GL_DOUBLE_MAT2: + case GL_DOUBLE_MAT2x3: + case GL_DOUBLE_MAT2x4: + case GL_DOUBLE_MAT3: + case GL_DOUBLE_MAT3x2: + case GL_DOUBLE_MAT3x4: + case GL_DOUBLE_MAT4: + case GL_DOUBLE_MAT4x2: + case GL_DOUBLE_MAT4x3: + case GL_INT64_ARB: + case GL_INT64_VEC2_ARB: + case GL_INT64_VEC3_ARB: + case GL_INT64_VEC4_ARB: + case GL_UNSIGNED_INT64_ARB: + case GL_UNSIGNED_INT64_VEC2_ARB: + case GL_UNSIGNED_INT64_VEC3_ARB: + case GL_UNSIGNED_INT64_VEC4_ARB: + return true; + default: + return false; + } +} + #ifdef __cplusplus } #endif |