Lines Matching refs:Utils
70 namespace Utils namespace
1017 …const std::string& name = Utils::Variable::GetReference(parent_name, desc, Utils::Variable::BASIC,… in verifyVarying()
1066 Utils::Interface* interface = variable.m_descriptor.m_interface; in checkVarying()
1091 Utils::Interface* interface = variable.m_descriptor.m_interface; in checkVarying()
1156 bool checkUniform(Program& program, const Utils::Variable& variable, std::stringstream& stream) in checkUniform()
1166 Utils::Interface* interface = variable.m_descriptor.m_interface; in checkUniform()
1186 …Utils::Variable::GetReference(interface->m_name, interface->m_members[i], Utils::Variable::BASIC, … in checkUniform()
1188 if (Utils::Variable::INTERFACE == interface->m_members[i].m_type) in checkUniform()
1190 const std::string& member_name = Utils::Variable::GetReference( in checkUniform()
1191 name, interface->m_members[i].m_interface->m_members[0], Utils::Variable::BASIC, 0); in checkUniform()
1218 Utils::Variable::Descriptor& desc = interface->m_members[i]; in checkUniform()
1240 bool checkSSB(Program& program, const Utils::Variable& variable, std::stringstream& stream) in checkSSB()
1250 Utils::Interface* interface = variable.m_descriptor.m_interface; in checkSSB()
1261 …Utils::Variable::GetReference(interface->m_name, interface->m_members[i], Utils::Variable::BASIC, … in checkSSB()
1263 if (Utils::Variable::INTERFACE == interface->m_members[i].m_type) in checkSSB()
1265 const std::string& member_name = Utils::Variable::GetReference( in checkSSB()
1266 name, interface->m_members[i].m_interface->m_members[0], Utils::Variable::BASIC, 0); in checkSSB()
1289 Utils::Variable::Descriptor& desc = interface->m_members[i]; in checkSSB()
1316 bool checkProgramStage(Program& program, const ProgramInterface& program_interface, Utils::Shader::… in checkProgramStage()
1438 Utils::Shader::STAGES stage, std::stringstream& stream) in checkSeparableDrawProgramInterface()
3878 case Utils::Variable::BASIC: in GetReference()
3881 case Utils::Variable::ARRAY: in GetReference()
3885 case Utils::Variable::INDEXED_BY_INVOCATION_ID: in GetReference()
4041 if (m_interface->m_members[0].m_builtin.m_basic_type == Utils::Type::Int || in GetDefinition()
4042 m_interface->m_members[0].m_builtin.m_basic_type == Utils::Type::Uint || in GetDefinition()
4043 m_interface->m_members[0].m_builtin.m_basic_type == Utils::Type::Double) in GetDefinition()
4121 std::string list = Utils::g_list; in GetDefinitions()
4126 Utils::insertElementOfList(vector[i]->GetDefinition(flavour).c_str(), "\n", position, list); in GetDefinitions()
4129 Utils::endList("", position, list); in GetDefinitions()
4142 std::string list = Utils::g_list; in GetDefinitions()
4147 Utils::insertElementOfList(vector[i]->GetDefinition().c_str(), "\n", position, list); in GetDefinitions()
4150 Utils::endList("", position, list); in GetDefinitions()
4668 Utils::replaceToken(prefix, position, stage_prefix, name); in cloneVariableForStage()
4743 Utils::replaceToken(prefix, position, stage_prefix, name); in CloneBlockForStage()
5081 GLint TestBase::getLastInputLocation(Utils::Shader::STAGES stage, const Utils::Type& type, GLuint a… in getLastInputLocation()
5092 case Utils::Shader::FRAGMENT: in getLastInputLocation()
5096 case Utils::Shader::GEOMETRY: in getLastInputLocation()
5100 case Utils::Shader::TESS_CTRL: in getLastInputLocation()
5104 case Utils::Shader::TESS_EVAL: in getLastInputLocation()
5108 case Utils::Shader::VERTEX: in getLastInputLocation()
5148 const GLuint n_req_location = type.GetLocations(stage == Utils::Shader::VERTEX) * array_length; in getLastInputLocation()
5161 GLint TestBase::getLastOutputLocation(Utils::Shader::STAGES stage, const Utils::Type& type, GLuint … in getLastOutputLocation()
5171 case Utils::Shader::GEOMETRY: in getLastOutputLocation()
5175 case Utils::Shader::TESS_CTRL: in getLastOutputLocation()
5179 case Utils::Shader::TESS_EVAL: in getLastOutputLocation()
5183 case Utils::Shader::VERTEX: in getLastOutputLocation()
5259 bool TestBase::isFlatRequired(Utils::Shader::STAGES stage, const Utils::Type& type, in isFlatRequired()
5260 Utils::Variable::STORAGE storage) const in isFlatRequired()
5263 if (Utils::Type::Float == type.m_basic_type) in isFlatRequired()
5269 if ((Utils::Shader::FRAGMENT == stage) && (Utils::Variable::VARYING_INPUT == storage)) in isFlatRequired()
5275 if ((Utils::Shader::FRAGMENT == stage) && (Utils::Variable::VARYING_OUTPUT == storage)) in isFlatRequired()
5296 GLuint TestBase::calculateStride(const Utils::Interface& interface) const in calculateStride()
5304 const Utils::Variable::Descriptor& member = interface.m_members[i]; in calculateStride()
5321 void TestBase::generateData(const Utils::Interface& interface, GLuint offset, std::vector<GLubyte>&… in generateData()
5328 const Utils::Variable::Descriptor& member = interface.m_members[i]; in generateData()
5337 if (Utils::Variable::BUILTIN == member.m_type) in generateData()
5357 Utils::Type TestBase::getType(GLuint index) const in getType()
5359 Utils::Type type; in getType()
5364 type = Utils::Type::_double; in getType()
5367 type = Utils::Type::dmat2; in getType()
5370 type = Utils::Type::dmat2x3; in getType()
5373 type = Utils::Type::dmat2x4; in getType()
5376 type = Utils::Type::dmat3; in getType()
5379 type = Utils::Type::dmat3x2; in getType()
5382 type = Utils::Type::dmat3x4; in getType()
5385 type = Utils::Type::dmat4; in getType()
5388 type = Utils::Type::dmat4x2; in getType()
5391 type = Utils::Type::dmat4x3; in getType()
5394 type = Utils::Type::dvec2; in getType()
5397 type = Utils::Type::dvec3; in getType()
5400 type = Utils::Type::dvec4; in getType()
5403 type = Utils::Type::_float; in getType()
5406 type = Utils::Type::mat2; in getType()
5409 type = Utils::Type::mat2x3; in getType()
5412 type = Utils::Type::mat2x4; in getType()
5415 type = Utils::Type::mat3; in getType()
5418 type = Utils::Type::mat3x2; in getType()
5421 type = Utils::Type::mat3x4; in getType()
5424 type = Utils::Type::mat4; in getType()
5427 type = Utils::Type::mat4x2; in getType()
5430 type = Utils::Type::mat4x3; in getType()
5433 type = Utils::Type::vec2; in getType()
5436 type = Utils::Type::vec3; in getType()
5439 type = Utils::Type::vec4; in getType()
5442 type = Utils::Type::_int; in getType()
5445 type = Utils::Type::ivec2; in getType()
5448 type = Utils::Type::ivec3; in getType()
5451 type = Utils::Type::ivec4; in getType()
5454 type = Utils::Type::uint; in getType()
5457 type = Utils::Type::uvec2; in getType()
5460 type = Utils::Type::uvec3; in getType()
5463 type = Utils::Type::uvec4; in getType()
5625 Utils::Program::NameVector& /* captured_varyings */, in test()
5638 void BufferTestBase::getShaderBody(glw::GLuint /* test_case_index */, Utils::Shader::STAGES /* stag… in test()
5651 void BufferTestBase::getShaderInterface(glw::GLuint /* test_case_index */, Utils::Shader::STAGES /*… in test()
5664 std::string BufferTestBase::getShaderSource(glw::GLuint test_case_index, Utils::Shader::STAGES stag… in test()
5679 Utils::replaceToken("INTERFACE", position, interface.c_str(), source); in test()
5680 Utils::replaceToken("CALCULATIONS", position, calculations.c_str(), source); in test()
5681 Utils::replaceToken("ASSIGNMENTS", position, assignments.c_str(), source); in test()
5695 bool BufferTestBase::inspectProgram(GLuint /* test_case_index */, Utils::Program& /* program */, in test()
5712 Utils::Program::NameVector captured_varyings; in test()
5714 Utils::Program program(m_context); in test()
5715 Utils::VertexArray vao(m_context); in test()
5735 const std::string& fragment_shader = getShaderSource(test_case_index, Utils::Shader::FRAGMENT); in test()
5736 const std::string& geometry_shader = getShaderSource(test_case_index, Utils::Shader::GEOMETRY); in test()
5737 const std::string& tess_ctrl_shader = getShaderSource(test_case_index, Utils::Shader::TESS_CTRL); in test()
5738 const std::string& tess_eval_shader = getShaderSource(test_case_index, Utils::Shader::TESS_EVAL); in test()
5739 const std::string& vertex_shader = getShaderSource(test_case_index, Utils::Shader::VERTEX); in test()
5801 catch (Utils::Shader::InvalidSourceException& exc) in test()
5806 catch (Utils::Program::BuildException& exc) in test()
5830 Utils::Buffer* buffer = pair.m_buffer; in test()
5842 GLvoid* buffer_data = buffer->Map(Utils::Buffer::ReadOnly); in test()
5854 << "Invalid result. Buffer: " << Utils::Buffer::GetBufferName(descriptor->m_target) in test()
5883 Utils::Buffer::BindBase(gl, 0, Utils::Buffer::Uniform, i); in test()
5888 Utils::Buffer::BindBase(gl, 0, Utils::Buffer::Transform_feedback, i); in test()
5898 std::string BufferTestBase::getShaderTemplate(Utils::Shader::STAGES stage) in test()
6005 case Utils::Shader::COMPUTE: in test()
6008 case Utils::Shader::FRAGMENT: in test()
6011 case Utils::Shader::GEOMETRY: in test()
6014 case Utils::Shader::TESS_CTRL: in test()
6017 case Utils::Shader::TESS_EVAL: in test()
6020 case Utils::Shader::VERTEX: in test()
6035 void BufferTestBase::prepareBuffer(Utils::Buffer& buffer, bufferDescriptor& desc) in test()
6050 buffer.Init(desc.m_target, Utils::Buffer::StaticDraw, size, data); in test()
6073 pair.m_buffer = new Utils::Buffer(m_context); in test()
6148 const std::string& cs_source = getShaderSource(test_case_index, Utils::Shader::COMPUTE); in test()
6151 Utils::Program program(m_context); in test()
6158 catch (Utils::Shader::InvalidSourceException& exc) in test()
6181 catch (Utils::Program::BuildException& exc) in test()
6211 Utils::Shader::LogSource(m_context, cs_source, Utils::Shader::COMPUTE); in test()
6218 const std::string& fs_source = getShaderSource(test_case_index, Utils::Shader::FRAGMENT); in test()
6219 const std::string& gs_source = getShaderSource(test_case_index, Utils::Shader::GEOMETRY); in test()
6222 Utils::Program program(m_context); in test()
6223 const std::string& tcs_source = getShaderSource(test_case_index, Utils::Shader::TESS_CTRL); in test()
6224 const std::string& tes_source = getShaderSource(test_case_index, Utils::Shader::TESS_EVAL); in test()
6225 const std::string& vs_source = getShaderSource(test_case_index, Utils::Shader::VERTEX); in test()
6231 catch (Utils::Shader::InvalidSourceException& exc) in test()
6254 catch (Utils::Program::BuildException& exc) in test()
6284 Utils::Shader::LogSource(m_context, vs_source, Utils::Shader::VERTEX); in test()
6285 Utils::Shader::LogSource(m_context, tcs_source, Utils::Shader::TESS_CTRL); in test()
6286 Utils::Shader::LogSource(m_context, tes_source, Utils::Shader::TESS_EVAL); in test()
6287 Utils::Shader::LogSource(m_context, gs_source, Utils::Shader::GEOMETRY); in test()
6288 Utils::Shader::LogSource(m_context, fs_source, Utils::Shader::FRAGMENT); in test()
6317 void TextureTestBase::prepareAttribLocation(Utils::Program& program, Utils::ProgramInterface& progr… in test()
6319 Utils::ShaderInterface& si = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
6321 Utils::Variable::PtrVector& inputs = si.m_inputs; in test()
6323 for (Utils::Variable::PtrVector::iterator it = inputs.begin(); inputs.end() != it; ++it) in test()
6326 if (Utils::Variable::m_automatic_location == (*it)->m_descriptor.m_expected_location) in test()
6345 bool TextureTestBase::checkResults(glw::GLuint /* test_case_index */, Utils::Texture& color_0) in test()
6403 Utils::VaryingPassthrough& varying_passthrough, Utils::Shader::STAGES stage) in test()
6408 if (Utils::Shader::COMPUTE == stage) in test()
6413 Utils::VaryingConnection::Vector& vector = varying_passthrough.Get(stage); in test()
6415 std::string result = Utils::g_list; in test()
6421 Utils::VaryingConnection& connection = vector[i]; in test()
6423 Utils::Variable* in = connection.m_in; in test()
6424 Utils::Variable* out = connection.m_out; in test()
6426 Utils::Variable::FLAVOUR in_flavour = Utils::Variable::GetFlavour(stage, Utils::Variable::INPUT); in test()
6427 …Utils::Variable::FLAVOUR out_flavour = Utils::Variable::GetFlavour(stage, Utils::Variable::OUTPUT); in test()
6432 Utils::insertElementOfList(passthrough.c_str(), separator, position, result); in test()
6435 Utils::endList("", position, result); in test()
6447 Utils::ProgramInterface& /* program_interface */, in test()
6448 Utils::VaryingPassthrough& /* varying_passthrough */) in test()
6461 Utils::ProgramInterface& program_interface, in test()
6462 Utils::Shader::STAGES stage) in test()
6472 Utils::Variable::FLAVOUR in_flavour = Utils::Variable::GetFlavour(stage, Utils::Variable::INPUT); in test()
6475 Utils::ShaderInterface& si = program_interface.GetShaderInterface(stage); in test()
6488 const Utils::Variable& var = *si.m_inputs[i]; in test()
6491 Utils::insertElementOfList(var_verification.c_str(), separator, position, verification); in test()
6497 const Utils::Variable& var = *si.m_uniforms[i]; in test()
6499 getVariableVerification("", var.m_data, var.m_descriptor, Utils::Variable::BASIC); in test()
6501 Utils::insertElementOfList(var_verification.c_str(), separator, position, verification); in test()
6507 const Utils::Variable& var = *si.m_ssb_blocks[i]; in test()
6509 getVariableVerification("", var.m_data, var.m_descriptor, Utils::Variable::BASIC); in test()
6511 Utils::insertElementOfList(var_verification.c_str(), separator, position, verification); in test()
6514 Utils::endList("", position, verification); in test()
6521 Utils::replaceToken("0u", position, buffer, verification); in test()
6526 if (Utils::Shader::VERTEX == stage) in test()
6528 Utils::replaceToken("0u", position, "in_vs_first.x", verification); in test()
6532 Utils::replaceToken("0u", position, "31u", verification); in test()
6575 const Utils::Variable::Descriptor& in_variable, in test()
6576 Utils::Variable::FLAVOUR in_flavour, in test()
6578 const Utils::Variable::Descriptor& out_variable, in test()
6579 Utils::Variable::FLAVOUR out_flavour) in test()
6585 std::string result = Utils::g_list; in test()
6591 …const std::string in_name = Utils::Variable::GetReference(in_parent_name, in_variable, in_flavour… in test()
6592 …const std::string out_name = Utils::Variable::GetReference(out_parent_name, out_variable, out_flav… in test()
6596 if (Utils::Variable::BUILTIN == in_variable.m_type) in test()
6602 Utils::replaceToken("OUT", pass_position, out_name.c_str(), passthrough); in test()
6603 Utils::replaceToken("IN", pass_position, in_name.c_str(), passthrough); in test()
6610 const Utils::Interface* in_interface = in_variable.m_interface; in test()
6611 const Utils::Interface* out_interface = out_variable.m_interface; in test()
6618 const Utils::Variable::Descriptor& in_member = in_interface->m_members[member_index]; in test()
6619 const Utils::Variable::Descriptor& out_member = out_interface->m_members[member_index]; in test()
6621 …passthrough = getVariablePassthrough(in_name, in_member, Utils::Variable::BASIC, out_name, out_mem… in test()
6622 Utils::Variable::BASIC); in test()
6641 Utils::insertElementOfList(passthrough.c_str(), separator, position, result); in test()
6645 Utils::endList("", position, result); in test()
6661 const Utils::Variable::Descriptor& variable, in test()
6662 Utils::Variable::FLAVOUR flavour) in test()
6667 std::string result = Utils::g_list; in test()
6673 const std::string name = Utils::Variable::GetReference(parent_name, variable, flavour, element); in test()
6679 if (Utils::Variable::BUILTIN == variable.m_type) in test()
6687 Utils::replaceToken("EXPECTED", verification_position, expected.c_str(), verification); in test()
6688 Utils::replaceToken("NAME", verification_position, name.c_str(), verification); in test()
6690 Utils::insertElementOfList(verification.c_str(), logic_op, position, result); in test()
6694 const Utils::Interface* interface = variable.m_interface; in test()
6706 const Utils::Variable::Descriptor& member = interface->m_members[member_index]; in test()
6710 …getVariableVerification(name, (GLubyte*)data_ptr + member.m_offset, member, Utils::Variable::BASIC… in test()
6712 Utils::insertElementOfList(verification.c_str(), logic_op, position, result); in test()
6717 Utils::endList("", position, result); in test()
6729 void TextureTestBase::prepareAttributes(GLuint test_case_index, Utils::ProgramInterface& program_in… in test()
6730 Utils::Buffer& buffer, Utils::VertexArray& vao) in test()
6735 Utils::ShaderInterface& si = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
6763 Utils::Variable& variable = *si.m_inputs[i]; in test()
6798 Utils::Variable& variable = *si.m_inputs[i]; in test()
6818 const Utils::Type& type = in test()
6819 …Utils::Type::GetType(variable.m_descriptor.m_builtin.m_basic_type, 1 /* n_columns */, 4 /* n_rows … in test()
6828 buffer.Data(Utils::Buffer::StaticDraw, buffer_size, ptr); in test()
6836 void TextureTestBase::prepareFragmentDataLoc(Utils::Program& program, Utils::ProgramInterface& prog… in test()
6838 Utils::ShaderInterface& si = program_interface.GetShaderInterface(Utils::Shader::FRAGMENT); in test()
6839 Utils::Variable::PtrVector& outputs = si.m_outputs; in test()
6841 for (Utils::Variable::PtrVector::iterator it = outputs.begin(); outputs.end() != it; ++it) in test()
6844 if (Utils::Variable::m_automatic_location == (*it)->m_descriptor.m_expected_location) in test()
6861 void TextureTestBase::prepareFramebuffer(Utils::Framebuffer& framebuffer, Utils::Texture& color_0_t… in test()
6873 …color_0_texture.Init(Utils::Texture::TEX_2D, m_width, m_height, 0, GL_R32UI, GL_RED_INTEGER, GL_UN… in test()
6890 void TextureTestBase::prepareImage(GLint location, Utils::Texture& image_texture) const in test()
6902 …image_texture.Init(Utils::Texture::TEX_2D, m_width, m_height, 0, GL_R32UI, GL_RED_INTEGER, GL_UNSI… in test()
6911 Utils::Program::Uniform(gl, Utils::Type::_int, 1 /* count */, location, &image_unit); in test()
6921 void TextureTestBase::prepareSSBs(GLuint /* test_case_index */, Utils::ShaderInterface& si, Utils::… in test()
6922 Utils::Buffer& buffer) in test()
6935 Utils::Variable& variable = *si.m_ssb_blocks[i]; in test()
6954 buffer.Data(Utils::Buffer::StaticDraw, ssbs_stride, 0); in test()
6959 Utils::Variable& variable = *si.m_ssb_blocks[i]; in test()
6973 void TextureTestBase::prepareSSBs(GLuint test_case_index, Utils::ProgramInterface& program_interfac… in test()
6974 Utils::Program& program, Utils::Buffer& cs_buffer) in test()
6976 cs_buffer.Init(Utils::Buffer::Shader_Storage, Utils::Buffer::StaticDraw, 0, 0); in test()
6978 Utils::ShaderInterface& cs = program_interface.GetShaderInterface(Utils::Shader::COMPUTE); in test()
6982 cs_buffer.BindBase(Utils::Shader::COMPUTE); in test()
6996 void TextureTestBase::prepareSSBs(GLuint test_case_index, Utils::ProgramInterface& program_interfac… in test()
6997 Utils::Program& program, Utils::Buffer& fs_buffer, Utils::Buffer& gs_buffer, in test()
6998 Utils::Buffer& tcs_buffer, Utils::Buffer& tes_buffer, Utils::Buffer& vs_buffer) in test()
7000 fs_buffer.Init(Utils::Buffer::Shader_Storage, Utils::Buffer::StaticDraw, 0, 0); in test()
7001 gs_buffer.Init(Utils::Buffer::Shader_Storage, Utils::Buffer::StaticDraw, 0, 0); in test()
7002 tcs_buffer.Init(Utils::Buffer::Shader_Storage, Utils::Buffer::StaticDraw, 0, 0); in test()
7003 tes_buffer.Init(Utils::Buffer::Shader_Storage, Utils::Buffer::StaticDraw, 0, 0); in test()
7004 vs_buffer.Init(Utils::Buffer::Shader_Storage, Utils::Buffer::StaticDraw, 0, 0); in test()
7006 Utils::ShaderInterface& fs = program_interface.GetShaderInterface(Utils::Shader::FRAGMENT); in test()
7007 Utils::ShaderInterface& gs = program_interface.GetShaderInterface(Utils::Shader::GEOMETRY); in test()
7008 Utils::ShaderInterface& tcs = program_interface.GetShaderInterface(Utils::Shader::TESS_CTRL); in test()
7009 Utils::ShaderInterface& tes = program_interface.GetShaderInterface(Utils::Shader::TESS_EVAL); in test()
7010 Utils::ShaderInterface& vs = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
7018 fs_buffer.BindBase(Utils::Shader::FRAGMENT); in test()
7019 gs_buffer.BindBase(Utils::Shader::GEOMETRY); in test()
7020 tcs_buffer.BindBase(Utils::Shader::TESS_CTRL); in test()
7021 tes_buffer.BindBase(Utils::Shader::TESS_EVAL); in test()
7022 vs_buffer.BindBase(Utils::Shader::VERTEX); in test()
7031 void TextureTestBase::prepareUniform(Utils::Program& program, Utils::Variable& variable, Utils::Buf… in test()
7041 if (Utils::Variable::BUILTIN == variable.m_descriptor.m_type) in test()
7069 …tureTestBase::prepareUniforms(GLuint /* test_case_index */, Utils::ShaderInterface& si, Utils::Pro… in test()
7070 Utils::Buffer& buffer) in test()
7083 Utils::Variable& variable = *si.m_uniforms[i]; in test()
7102 buffer.Data(Utils::Buffer::StaticDraw, uniforms_stride, 0); in test()
7107 Utils::Variable& variable = *si.m_uniforms[i]; in test()
7120 void TextureTestBase::prepareUniforms(GLuint test_case_index, Utils::ProgramInterface& program_inte… in test()
7121 Utils::Program& program, Utils::Buffer& cs_buffer) in test()
7123 cs_buffer.Init(Utils::Buffer::Uniform, Utils::Buffer::StaticDraw, 0, 0); in test()
7125 Utils::ShaderInterface& cs = program_interface.GetShaderInterface(Utils::Shader::COMPUTE); in test()
7129 cs_buffer.BindBase(Utils::Shader::COMPUTE); in test()
7143 void TextureTestBase::prepareUniforms(GLuint test_case_index, Utils::ProgramInterface& program_inte… in test()
7144 Utils::Program& program, Utils::Buffer& fs_buffer, Utils::Buffer& gs_buffer, in test()
7145 Utils::Buffer& tcs_buffer, Utils::Buffer& tes_buffer, Utils::Buffer& vs_buffer) in test()
7147 fs_buffer.Init(Utils::Buffer::Uniform, Utils::Buffer::StaticDraw, 0, 0); in test()
7148 gs_buffer.Init(Utils::Buffer::Uniform, Utils::Buffer::StaticDraw, 0, 0); in test()
7149 tcs_buffer.Init(Utils::Buffer::Uniform, Utils::Buffer::StaticDraw, 0, 0); in test()
7150 tes_buffer.Init(Utils::Buffer::Uniform, Utils::Buffer::StaticDraw, 0, 0); in test()
7151 vs_buffer.Init(Utils::Buffer::Uniform, Utils::Buffer::StaticDraw, 0, 0); in test()
7153 Utils::ShaderInterface& fs = program_interface.GetShaderInterface(Utils::Shader::FRAGMENT); in test()
7154 Utils::ShaderInterface& gs = program_interface.GetShaderInterface(Utils::Shader::GEOMETRY); in test()
7155 Utils::ShaderInterface& tcs = program_interface.GetShaderInterface(Utils::Shader::TESS_CTRL); in test()
7156 Utils::ShaderInterface& tes = program_interface.GetShaderInterface(Utils::Shader::TESS_EVAL); in test()
7157 Utils::ShaderInterface& vs = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
7165 fs_buffer.BindBase(Utils::Shader::FRAGMENT); in test()
7166 gs_buffer.BindBase(Utils::Shader::GEOMETRY); in test()
7167 tcs_buffer.BindBase(Utils::Shader::TESS_CTRL); in test()
7168 tes_buffer.BindBase(Utils::Shader::TESS_EVAL); in test()
7169 vs_buffer.BindBase(Utils::Shader::VERTEX); in test()
7183 void TextureTestBase::prepareUniforms(GLuint test_case_index, Utils::ProgramInterface& program_inte… in test()
7184 Utils::Program& fs_program, Utils::Program& gs_program, in test()
7185 Utils::Program& tcs_program, Utils::Program& tes_program, in test()
7186 Utils::Program& vs_program, Utils::Buffer& fs_buffer, Utils::Buffer& gs_buffer, in test()
7187 Utils::Buffer& tcs_buffer, Utils::Buffer& tes_buffer, Utils::Buffer& vs_buffer) in test()
7189 fs_buffer.Init(Utils::Buffer::Uniform, Utils::Buffer::StaticDraw, 0, 0); in test()
7190 gs_buffer.Init(Utils::Buffer::Uniform, Utils::Buffer::StaticDraw, 0, 0); in test()
7191 tcs_buffer.Init(Utils::Buffer::Uniform, Utils::Buffer::StaticDraw, 0, 0); in test()
7192 tes_buffer.Init(Utils::Buffer::Uniform, Utils::Buffer::StaticDraw, 0, 0); in test()
7193 vs_buffer.Init(Utils::Buffer::Uniform, Utils::Buffer::StaticDraw, 0, 0); in test()
7195 Utils::ShaderInterface& fs = program_interface.GetShaderInterface(Utils::Shader::FRAGMENT); in test()
7196 Utils::ShaderInterface& gs = program_interface.GetShaderInterface(Utils::Shader::GEOMETRY); in test()
7197 Utils::ShaderInterface& tcs = program_interface.GetShaderInterface(Utils::Shader::TESS_CTRL); in test()
7198 Utils::ShaderInterface& tes = program_interface.GetShaderInterface(Utils::Shader::TESS_EVAL); in test()
7199 Utils::ShaderInterface& vs = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
7202 fs_buffer.BindBase(Utils::Shader::FRAGMENT); in test()
7205 gs_buffer.BindBase(Utils::Shader::GEOMETRY); in test()
7208 tcs_buffer.BindBase(Utils::Shader::TESS_CTRL); in test()
7211 tes_buffer.BindBase(Utils::Shader::TESS_EVAL); in test()
7214 vs_buffer.BindBase(Utils::Shader::VERTEX); in test()
7226 std::string TextureTestBase::getShaderSource(GLuint test_case_index, Utils::ProgramInterface& progr… in test()
7227 Utils::VaryingPassthrough& varying_passthrough, in test()
7228 Utils::Shader::STAGES stage) in test()
7244 if (Utils::Shader::GEOMETRY == stage) in test()
7254 Utils::replaceToken("PERVERTEX", position, per_vertex, source); in test()
7257 Utils::replaceToken("INTERFACE", position, shader_interface.c_str(), source); in test()
7258 Utils::replaceToken("VERIFICATION", position, verification.c_str(), source); in test()
7262 Utils::replaceAllTokens("ELSE", " else ", source); in test()
7266 Utils::replaceAllTokens("ELSE", "", source); in test()
7269 Utils::replaceAllTokens("PASSTHROUGH", passthrough.c_str(), source); in test()
7281 const GLchar* TextureTestBase::getShaderTemplate(Utils::Shader::STAGES stage) in test()
7451 case Utils::Shader::COMPUTE: in test()
7454 case Utils::Shader::FRAGMENT: in test()
7457 case Utils::Shader::GEOMETRY: in test()
7460 case Utils::Shader::TESS_CTRL: in test()
7463 case Utils::Shader::TESS_EVAL: in test()
7466 case Utils::Shader::VERTEX: in test()
7495 catch (Utils::Shader::InvalidSourceException& exc) in test()
7500 catch (Utils::Program::BuildException& exc) in test()
7512 Utils::ProgramInterface program_interface; in test()
7513 Utils::VaryingPassthrough varying_passthrough; in test()
7525 Utils::Buffer buffer_attr(m_context); in test()
7526 Utils::Buffer buffer_ssb_fs(m_context); in test()
7527 Utils::Buffer buffer_ssb_gs(m_context); in test()
7528 Utils::Buffer buffer_ssb_tcs(m_context); in test()
7529 Utils::Buffer buffer_ssb_tes(m_context); in test()
7530 Utils::Buffer buffer_ssb_vs(m_context); in test()
7531 Utils::Buffer buffer_u_fs(m_context); in test()
7532 Utils::Buffer buffer_u_gs(m_context); in test()
7533 Utils::Buffer buffer_u_tcs(m_context); in test()
7534 Utils::Buffer buffer_u_tes(m_context); in test()
7535 Utils::Buffer buffer_u_vs(m_context); in test()
7536 Utils::Framebuffer framebuffer(m_context); in test()
7537 Utils::Program program(m_context); in test()
7538 Utils::Texture texture_fb(m_context); in test()
7539 Utils::VertexArray vao(m_context); in test()
7543 … getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::FRAGMENT); in test()
7545 … getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::GEOMETRY); in test()
7547 …getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::TESS_CTRL); in test()
7549 …getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::TESS_EVAL); in test()
7551 getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::VERTEX); in test()
7562 if (false == Utils::checkMonolithicDrawProgramInterface(program, program_interface, stream)) in test()
7578 buffer_attr.Init(Utils::Buffer::Array, Utils::Buffer::StaticDraw, 0, 0); in test()
7615 Utils::Buffer buffer_ssb_cs(m_context); in test()
7616 Utils::Buffer buffer_u_cs(m_context); in test()
7617 Utils::Program program(m_context); in test()
7618 Utils::Texture texture_im(m_context); in test()
7619 Utils::VertexArray vao(m_context); in test()
7623 getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::COMPUTE); in test()
7632 if (false == Utils::checkMonolithicComputeProgramInterface(program, program_interface, stream)) in test()
7685 Utils::ProgramInterface program_interface; in test()
7686 Utils::VaryingPassthrough varying_passthrough; in test()
7698 Utils::Buffer buffer_attr(m_context); in test()
7699 Utils::Buffer buffer_u_fs(m_context); in test()
7700 Utils::Buffer buffer_u_gs(m_context); in test()
7701 Utils::Buffer buffer_u_tcs(m_context); in test()
7702 Utils::Buffer buffer_u_tes(m_context); in test()
7703 Utils::Buffer buffer_u_vs(m_context); in test()
7704 Utils::Framebuffer framebuffer(m_context); in test()
7705 Utils::Pipeline pipeline(m_context); in test()
7706 Utils::Program program_fs(m_context); in test()
7707 Utils::Program program_gs(m_context); in test()
7708 Utils::Program program_tcs(m_context); in test()
7709 Utils::Program program_tes(m_context); in test()
7710 Utils::Program program_vs(m_context); in test()
7711 Utils::Texture texture_fb(m_context); in test()
7712 Utils::VertexArray vao(m_context); in test()
7716 … getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::FRAGMENT); in test()
7718 … getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::GEOMETRY); in test()
7720 …getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::TESS_CTRL); in test()
7722 …getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::TESS_EVAL); in test()
7724 getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::VERTEX); in test()
7739 …Utils::checkSeparableDrawProgramInterface(program_vs, program_interface, Utils::Shader::VERTEX, st… in test()
7740 …(false == Utils::checkSeparableDrawProgramInterface(program_fs, program_interface, Utils::Shader::… in test()
7742 …(false == Utils::checkSeparableDrawProgramInterface(program_gs, program_interface, Utils::Shader::… in test()
7744 (false == Utils::checkSeparableDrawProgramInterface(program_tcs, program_interface, in test()
7745 Utils::Shader::TESS_CTRL, stream)) || in test()
7746 (false == Utils::checkSeparableDrawProgramInterface(program_tes, program_interface, in test()
7747 Utils::Shader::TESS_EVAL, stream))) in test()
7770 buffer_attr.Init(Utils::Buffer::Array, Utils::Buffer::StaticDraw, 0, 0); in test()
7778 Utils::Program::Use(m_context.getRenderContext().getFunctions(), Utils::Program::m_invalid_id); in test()
7805 Utils::Buffer buffer_u_cs(m_context); in test()
7806 Utils::Program program(m_context); in test()
7807 Utils::Texture texture_im(m_context); in test()
7808 Utils::VertexArray vao(m_context); in test()
7812 getShaderSource(test_case_index, program_interface, varying_passthrough, Utils::Shader::COMPUTE); in test()
7821 if (false == Utils::checkMonolithicComputeProgramInterface(program, program_interface, stream)) in test()
7981 Utils::Program program(m_context); in test()
8012 catch (Utils::Shader::InvalidSourceException& exc) in test()
8017 catch (Utils::Program::BuildException& exc) in test()
8100 std::string GLSLContantImmutablityTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAG… in test()
8207 if (Utils::Shader::COMPUTE == test_case.m_stage) in test()
8213 Utils::replaceToken("CONSTANT", position, getConstantName(test_case.m_constant), source); in test()
8222 case Utils::Shader::FRAGMENT: in test()
8225 case Utils::Shader::GEOMETRY: in test()
8228 case Utils::Shader::TESS_CTRL: in test()
8231 case Utils::Shader::TESS_EVAL: in test()
8234 case Utils::Shader::VERTEX: in test()
8243 Utils::replaceToken("CONSTANT", position, getConstantName(test_case.m_constant), assignment); in test()
8251 Utils::replaceToken("ASSIGNMENT", position, assignment.c_str(), source); in test()
8287 return (Utils::Shader::COMPUTE == m_test_cases[test_case_index].m_stage); in test()
8297 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
8299 testCase test_case = { (CONSTANTS)constant, (Utils::Shader::STAGES)stage }; in test()
8363 Utils::ProgramInterface& /* program_interface */, in test()
8364 Utils::Shader::STAGES stage) in test()
8379 if (Utils::Shader::VERTEX == stage) in test()
8400 Utils::replaceToken("MAX_TRANSFORM_FEEDBACK_BUFFERS", position, buffer, verification); in test()
8403 …Utils::replaceToken("MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS", position, buffer, verificatio… in test()
8430 Utils::ProgramInterface& program_interface, in test()
8431 Utils::VaryingPassthrough& /* varying_passthrough */) in test()
8459 Utils::replaceToken("GOHAN_DIV", position, buffer, globals); in test()
8462 Utils::replaceToken("GOTEN_DIV", position, buffer, globals); in test()
8481 Utils::ProgramInterface& /* program_interface */, in test()
8482 Utils::Shader::STAGES /* stage */) in test()
8516 Utils::replaceToken("EXPECTED_GOHAN_SUM", position, buffer, verification); in test()
8519 Utils::replaceToken("EXPECTED_GOTEN_SUM", position, buffer, verification); in test()
8532 Utils::ProgramInterface& /* program_interface */, in test()
8533 Utils::Program& program, Utils::Buffer& /* cs_buffer */) in test()
8543 program.Uniform(gl, Utils::Type::uint, 1 /* count */, goku_location, uniform_data); in test()
8544 program.Uniform(gl, Utils::Type::uint, m_gohan_length, gohan_location, uniform_data); in test()
8545 program.Uniform(gl, Utils::Type::uint, m_goten_length, goten_location, uniform_data); in test()
8560 Utils::ProgramInterface& program_interface, in test()
8561 Utils::Program& program, Utils::Buffer& /* fs_buffer */, in test()
8562 Utils::Buffer& /* gs_buffer */, in test()
8563 Utils::Buffer& /* tcs_buffer */, in test()
8564 Utils::Buffer& /* tes_buffer */, Utils::Buffer& vs_buffer) in test()
8587 Utils::ProgramInterface& program_interface, in test()
8588 Utils::VaryingPassthrough& varying_passthrough) in test()
8594 Utils::Type type = getType(test_case_index); in test()
8595 GLuint basic_size = Utils::Type::GetTypeSize(type.m_basic_type); in test()
8598 const GLuint base_stride = Utils::Type::CalculateStd140Stride(base_align, type.m_n_columns, 0); in test()
8599 const GLuint type_align = Utils::roundUpToPowerOf2(base_stride); in test()
8647 Utils::replaceToken("BASIC_SIZE", position, buffer, globals); in test()
8650 Utils::replaceToken("TYPE_ALIGN", position, buffer, globals); in test()
8653 Utils::replaceToken("TYPE_SIZE", position, buffer, globals); in test()
8656 Utils::Interface* vs_uni_block = program_interface.Block("vs_uni_Block"); in test()
8684 Utils::ShaderInterface& vs_si = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
8726 …GLuint /* test_case_index */, Utils::ProgramInterface& /* program_interface */, Utils::Shader::STA… in test()
8736 const GLchar* prefix = Utils::ProgramInterface::GetStagePrefix(stage, Utils::Variable::UNIFORM); in test()
8738 Utils::replaceAllTokens("PREFIX", prefix, verification); in test()
8763 Utils::Shader::STAGES stage) in test()
8904 Utils::replaceToken("QUALIFIER", layout_position, qualifier, layout); in test()
8909 case Utils::Shader::COMPUTE: in test()
8912 case Utils::Shader::FRAGMENT: in test()
8915 case Utils::Shader::GEOMETRY: in test()
8918 case Utils::Shader::TESS_CTRL: in test()
8921 case Utils::Shader::TESS_EVAL: in test()
8924 case Utils::Shader::VERTEX: in test()
8933 Utils::replaceToken("LAYOUT", position, layout.c_str(), source); in test()
8937 Utils::replaceToken("LAYOUT", position, "layout (std140) ", source); in test()
8973 return (Utils::Shader::COMPUTE == m_test_cases[test_case_index].m_stage); in test()
8994 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
8996 testCase test_case = { (QUALIFIERS)qualifier, (Utils::Shader::STAGES)stage }; in test()
9066 Utils::Shader::STAGES stage) in test()
9307 const Utils::Type& type = test_case.m_type; in test()
9314 case Utils::Shader::COMPUTE: in test()
9317 case Utils::Shader::FRAGMENT: in test()
9320 case Utils::Shader::GEOMETRY: in test()
9323 case Utils::Shader::TESS_CTRL: in test()
9326 case Utils::Shader::TESS_EVAL: in test()
9329 case Utils::Shader::VERTEX: in test()
9336 Utils::replaceToken("OFFSET", position, buffer, source); in test()
9337 Utils::replaceToken("TYPE", position, type_name, source); in test()
9338 Utils::replaceToken("TYPE", position, type_name, source); in test()
9344 case Utils::Shader::FRAGMENT: in test()
9347 case Utils::Shader::GEOMETRY: in test()
9350 case Utils::Shader::TESS_CTRL: in test()
9353 case Utils::Shader::TESS_EVAL: in test()
9356 case Utils::Shader::VERTEX: in test()
9415 return (Utils::Shader::COMPUTE == m_test_cases[test_case_index].m_stage); in test()
9435 bool UniformBlockMemberInvalidOffsetAlignmentTest::isStageSupported(Utils::Shader::STAGES /* stage … in test()
9446 bool stage_support[Utils::Shader::STAGE_MAX]; in test()
9448 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
9450 stage_support[stage] = isStageSupported((Utils::Shader::STAGES)stage); in test()
9455 const Utils::Type& type = getType(i); in test()
9460 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
9473 testCase test_case = { offset, should_fail, (Utils::Shader::STAGES)stage, type }; in test()
9484 testCase test_case = { offset, should_fail, (Utils::Shader::STAGES)stage, type }; in test()
9525 Utils::Shader::STAGES stage) in test()
9777 const Utils::Type& boy_type = test_case.m_boy_type; in test()
9780 const Utils::Type& man_type = test_case.m_man_type; in test()
9786 case Utils::Shader::COMPUTE: in test()
9789 case Utils::Shader::FRAGMENT: in test()
9792 case Utils::Shader::GEOMETRY: in test()
9795 case Utils::Shader::TESS_CTRL: in test()
9798 case Utils::Shader::TESS_EVAL: in test()
9801 case Utils::Shader::VERTEX: in test()
9809 Utils::replaceToken("BOY_OFFSET", position, buffer, source); in test()
9810 Utils::replaceToken("BOY_TYPE", position, boy_type_name, source); in test()
9812 Utils::replaceToken("MAN_OFFSET", position, buffer, source); in test()
9813 Utils::replaceToken("MAN_TYPE", position, man_type_name, source); in test()
9814 Utils::replaceToken("BOY_TYPE", position, boy_type_name, source); in test()
9815 Utils::replaceToken("MAN_TYPE", position, man_type_name, source); in test()
9821 case Utils::Shader::FRAGMENT: in test()
9824 case Utils::Shader::GEOMETRY: in test()
9827 case Utils::Shader::TESS_CTRL: in test()
9830 case Utils::Shader::TESS_EVAL: in test()
9833 case Utils::Shader::VERTEX: in test()
9878 return (Utils::Shader::COMPUTE == m_test_cases[test_case_index].m_stage); in test()
9887 bool UniformBlockMemberOverlappingOffsetsTest::isStageSupported(Utils::Shader::STAGES /* stage */) in test()
9898 bool stage_support[Utils::Shader::STAGE_MAX]; in test()
9900 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
9902 stage_support[stage] = isStageSupported((Utils::Shader::STAGES)stage); in test()
9907 const Utils::Type& boy_type = getType(i); in test()
9912 const Utils::Type& man_type = getType(j); in test()
9922 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
9932 (Utils::Shader::STAGES)stage }; in test()
9940 (Utils::Shader::STAGES)stage }; in test()
9946 … testCase test_case = { boy_offset, boy_type, boy_offset, man_type, (Utils::Shader::STAGES)stage }; in test()
10020 std::string UniformBlockMemberAlignNonPowerOf2Test::getShaderSource(GLuint test_case_index, Utils::… in test()
10266 const Utils::Type& type = test_case.m_type; in test()
10272 case Utils::Shader::COMPUTE: in test()
10275 case Utils::Shader::FRAGMENT: in test()
10278 case Utils::Shader::GEOMETRY: in test()
10281 case Utils::Shader::TESS_CTRL: in test()
10284 case Utils::Shader::TESS_EVAL: in test()
10287 case Utils::Shader::VERTEX: in test()
10295 Utils::replaceToken("ALIGN", position, buffer, source); in test()
10296 Utils::replaceToken("TYPE", position, type_name, source); in test()
10297 Utils::replaceToken("TYPE", position, type_name, source); in test()
10303 case Utils::Shader::FRAGMENT: in test()
10306 case Utils::Shader::GEOMETRY: in test()
10309 case Utils::Shader::TESS_CTRL: in test()
10312 case Utils::Shader::TESS_EVAL: in test()
10315 case Utils::Shader::VERTEX: in test()
10359 return (Utils::Shader::COMPUTE == m_test_cases[test_case_index].m_stage); in test()
10368 bool UniformBlockMemberAlignNonPowerOf2Test::isStageSupported(Utils::Shader::STAGES /* stage */) in test()
10391 bool stage_support[Utils::Shader::STAGE_MAX]; in test()
10393 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
10395 stage_support[stage] = isStageSupported((Utils::Shader::STAGES)stage); in test()
10400 const Utils::Type& type = getType(j); in test()
10415 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
10422 testCase test_case = { align, type, should_fail, (Utils::Shader::STAGES)stage }; in test()
10462 Utils::ProgramInterface& program_interface, in test()
10463 Utils::VaryingPassthrough& varying_passthrough) in test()
10465 static const Utils::Type vec4 = Utils::Type::vec4; in test()
10484 …const GLuint second_offset = Utils::Type::GetActualOffset(first_offset + vec4_stride, block_align)… in test()
10486 Utils::Type::GetActualOffset(second_offset + data_stride, block_align); /* Data[2] at 64 */ in test()
10488 Utils::Type::GetActualOffset(third_offset + data_stride * 2, block_align); /* vec4[3] at 96 */ in test()
10490 Utils::Type::GetActualOffset(fourth_offset + vec4_stride * 3, block_align); /* vec4[2] at 160 */ in test()
10492 Utils::Type::GetActualOffset(fifth_offset + vec4_stride * 2, block_align); /* Data at 192 */ in test()
10494 Utils::Interface* structure = program_interface.Structure("Data"); in test()
10496 …structure->Member("vector", "", 0 /* expected_component */, 0 /* expected_location */, Utils::Type… in test()
10497 … false /* normalized */, 0 /* n_array_elements */, Utils::Type::vec4.GetSize(), 0 /* offset */); in test()
10499 …structure->Member("scalar", "", 0 /* expected_component */, 0 /* expected_location */, Utils::Type… in test()
10500 false /* normalized */, 0 /* n_array_elements */, Utils::Type::_float.GetSize(), in test()
10501 Utils::Type::vec4.GetSize() /* offset */); in test()
10504 Utils::Interface* vs_uni_block = program_interface.Block("vs_uni_Block"); in test()
10506 …vs_uni_block->Member("first", "", 0 /* expected_component */, 0 /* expected_location */, Utils::Ty… in test()
10528 Utils::ShaderInterface& vs_si = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
10559 Utils::ProgramInterface& program_interface, in test()
10560 Utils::VaryingPassthrough& varying_passthrough) in test()
10566 Utils::Type type = getType(test_case_index); in test()
10567 GLuint basic_size = Utils::Type::GetTypeSize(type.m_basic_type); in test()
10570 const GLuint base_stride = Utils::Type::CalculateStd140Stride(base_align, type.m_n_columns, 0); in test()
10571 const GLuint type_align = Utils::roundUpToPowerOf2(base_stride); in test()
10619 Utils::replaceToken("BASIC_SIZE", position, buffer, globals); in test()
10622 Utils::replaceToken("TYPE_ALIGN", position, buffer, globals); in test()
10625 Utils::replaceToken("TYPE_SIZE", position, buffer, globals); in test()
10628 Utils::Interface* vs_buf_block = program_interface.Block("vs_buf_Block"); in test()
10656 Utils::ShaderInterface& vs_si = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
10698 Utils::ProgramInterface& /* program_interface */, in test()
10699 Utils::Shader::STAGES stage) in test()
10709 const GLchar* prefix = Utils::ProgramInterface::GetStagePrefix(stage, Utils::Variable::SSB); in test()
10711 Utils::replaceAllTokens("PREFIX", prefix, verification); in test()
10760 std::string SSBLayoutQualifierConflictTest::getShaderSource(GLuint test_case_index, Utils::Shader::… in test()
10904 case Utils::Shader::COMPUTE: in test()
10907 case Utils::Shader::FRAGMENT: in test()
10910 case Utils::Shader::GEOMETRY: in test()
10913 case Utils::Shader::TESS_CTRL: in test()
10916 case Utils::Shader::TESS_EVAL: in test()
10919 case Utils::Shader::VERTEX: in test()
10928 Utils::replaceToken("QUALIFIER", position, qualifier.c_str(), source); in test()
10932 Utils::replaceToken("QUALIFIER", position, "std140, ", source); in test()
10935 Utils::replaceToken("BINDING", position, buffer, source); in test()
10970 return (Utils::Shader::COMPUTE == m_test_cases[test_case_index].m_stage); in test()
10992 bool SSBLayoutQualifierConflictTest::isStageSupported(Utils::Shader::STAGES stage) in test()
11000 case Utils::Shader::COMPUTE: in test()
11003 case Utils::Shader::FRAGMENT: in test()
11006 case Utils::Shader::GEOMETRY: in test()
11009 case Utils::Shader::TESS_CTRL: in test()
11012 case Utils::Shader::TESS_EVAL: in test()
11015 case Utils::Shader::VERTEX: in test()
11033 bool stage_support[Utils::Shader::STAGE_MAX]; in test()
11035 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
11037 stage_support[stage] = isStageSupported((Utils::Shader::STAGES)stage); in test()
11042 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
11049 testCase test_case = { (QUALIFIERS)qualifier, (Utils::Shader::STAGES)stage }; in test()
11124 std::string SSBMemberInvalidOffsetAlignmentTest::getShaderSource(GLuint test_case_index, Utils::Sha… in test()
11365 const Utils::Type& type = test_case.m_type; in test()
11372 case Utils::Shader::COMPUTE: in test()
11375 case Utils::Shader::FRAGMENT: in test()
11378 case Utils::Shader::GEOMETRY: in test()
11381 case Utils::Shader::TESS_CTRL: in test()
11384 case Utils::Shader::TESS_EVAL: in test()
11387 case Utils::Shader::VERTEX: in test()
11394 Utils::replaceToken("OFFSET", position, buffer, source); in test()
11395 Utils::replaceToken("TYPE", position, type_name, source); in test()
11396 Utils::replaceToken("TYPE", position, type_name, source); in test()
11402 case Utils::Shader::FRAGMENT: in test()
11405 case Utils::Shader::GEOMETRY: in test()
11408 case Utils::Shader::TESS_CTRL: in test()
11411 case Utils::Shader::TESS_EVAL: in test()
11414 case Utils::Shader::VERTEX: in test()
11431 bool SSBMemberInvalidOffsetAlignmentTest::isStageSupported(Utils::Shader::STAGES stage) in test()
11439 case Utils::Shader::COMPUTE: in test()
11442 case Utils::Shader::FRAGMENT: in test()
11445 case Utils::Shader::GEOMETRY: in test()
11448 case Utils::Shader::TESS_CTRL: in test()
11451 case Utils::Shader::TESS_EVAL: in test()
11454 case Utils::Shader::VERTEX: in test()
11486 std::string SSBMemberOverlappingOffsetsTest::getShaderSource(GLuint test_case_index, Utils::Shader:… in test()
11738 const Utils::Type& boy_type = test_case.m_boy_type; in test()
11741 const Utils::Type& man_type = test_case.m_man_type; in test()
11747 case Utils::Shader::COMPUTE: in test()
11750 case Utils::Shader::FRAGMENT: in test()
11753 case Utils::Shader::GEOMETRY: in test()
11756 case Utils::Shader::TESS_CTRL: in test()
11759 case Utils::Shader::TESS_EVAL: in test()
11762 case Utils::Shader::VERTEX: in test()
11770 Utils::replaceToken("BOY_OFFSET", position, buffer, source); in test()
11771 Utils::replaceToken("BOY_TYPE", position, boy_type_name, source); in test()
11773 Utils::replaceToken("MAN_OFFSET", position, buffer, source); in test()
11774 Utils::replaceToken("MAN_TYPE", position, man_type_name, source); in test()
11775 Utils::replaceToken("BOY_TYPE", position, boy_type_name, source); in test()
11776 Utils::replaceToken("MAN_TYPE", position, man_type_name, source); in test()
11782 case Utils::Shader::FRAGMENT: in test()
11785 case Utils::Shader::GEOMETRY: in test()
11788 case Utils::Shader::TESS_CTRL: in test()
11791 case Utils::Shader::TESS_EVAL: in test()
11794 case Utils::Shader::VERTEX: in test()
11811 bool SSBMemberOverlappingOffsetsTest::isStageSupported(Utils::Shader::STAGES stage) in test()
11819 case Utils::Shader::COMPUTE: in test()
11822 case Utils::Shader::FRAGMENT: in test()
11825 case Utils::Shader::GEOMETRY: in test()
11828 case Utils::Shader::TESS_CTRL: in test()
11831 case Utils::Shader::TESS_EVAL: in test()
11834 case Utils::Shader::VERTEX: in test()
11865 std::string SSBMemberAlignNonPowerOf2Test::getShaderSource(GLuint test_case_index, Utils::Shader::S… in test()
12111 const Utils::Type& type = test_case.m_type; in test()
12117 case Utils::Shader::COMPUTE: in test()
12120 case Utils::Shader::FRAGMENT: in test()
12123 case Utils::Shader::GEOMETRY: in test()
12126 case Utils::Shader::TESS_CTRL: in test()
12129 case Utils::Shader::TESS_EVAL: in test()
12132 case Utils::Shader::VERTEX: in test()
12140 Utils::replaceToken("ALIGN", position, buffer, source); in test()
12141 Utils::replaceToken("TYPE", position, type_name, source); in test()
12142 Utils::replaceToken("TYPE", position, type_name, source); in test()
12148 case Utils::Shader::FRAGMENT: in test()
12151 case Utils::Shader::GEOMETRY: in test()
12154 case Utils::Shader::TESS_CTRL: in test()
12157 case Utils::Shader::TESS_EVAL: in test()
12160 case Utils::Shader::VERTEX: in test()
12177 bool SSBMemberAlignNonPowerOf2Test::isStageSupported(Utils::Shader::STAGES stage) in test()
12185 case Utils::Shader::COMPUTE: in test()
12188 case Utils::Shader::FRAGMENT: in test()
12191 case Utils::Shader::GEOMETRY: in test()
12194 case Utils::Shader::TESS_CTRL: in test()
12197 case Utils::Shader::TESS_EVAL: in test()
12200 case Utils::Shader::VERTEX: in test()
12228 void SSBAlignmentTest::getProgramInterface(GLuint /* test_case_index */, Utils::ProgramInterface& p… in test()
12229 Utils::VaryingPassthrough& varying_passthrough) in test()
12231 static const Utils::Type vec4 = Utils::Type::vec4; in test()
12248 …const GLuint second_offset = Utils::Type::GetActualOffset(first_offset + vec4_stride, block_align)… in test()
12250 Utils::Type::GetActualOffset(second_offset + data_stride, block_align); /* Data[2] at 64 */ in test()
12252 Utils::Type::GetActualOffset(third_offset + data_stride * 2, block_align); /* vec4[3] at 96 */ in test()
12254 Utils::Type::GetActualOffset(fourth_offset + vec4_stride * 3, fifth_align); /* vec4[2] at 160 */ in test()
12256 Utils::Type::GetActualOffset(fifth_offset + vec4_stride * 2, block_align); /* Data at 192 */ in test()
12258 Utils::Interface* structure = program_interface.Structure("Data"); in test()
12260 …structure->Member("vector", "", 0 /* expected_component */, 0 /* expected_location */, Utils::Type… in test()
12261 … false /* normalized */, 0 /* n_array_elements */, Utils::Type::vec4.GetSize(), 0 /* offset */); in test()
12263 …structure->Member("scalar", "", 0 /* expected_component */, 0 /* expected_location */, Utils::Type… in test()
12264 false /* normalized */, 0 /* n_array_elements */, Utils::Type::_float.GetSize(), in test()
12265 Utils::Type::vec4.GetSize() /* offset */); in test()
12268 Utils::Interface* vs_buf_Block = program_interface.Block("vs_buf_Block"); in test()
12270 …vs_buf_Block->Member("first", "", 0 /* expected_component */, 0 /* expected_location */, Utils::Ty… in test()
12292 Utils::ShaderInterface& vs_si = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
12358 void VaryingLocationsTest::getProgramInterface(GLuint test_case_index, Utils::ProgramInterface& pro… in test()
12359 Utils::VaryingPassthrough& varying_passthrough) in test()
12361 const Utils::Type type = getType(test_case_index); in test()
12366 prepareShaderStage(Utils::Shader::FRAGMENT, type, program_interface, varying_passthrough); in test()
12367 prepareShaderStage(Utils::Shader::GEOMETRY, type, program_interface, varying_passthrough); in test()
12368 prepareShaderStage(Utils::Shader::TESS_CTRL, type, program_interface, varying_passthrough); in test()
12369 prepareShaderStage(Utils::Shader::TESS_EVAL, type, program_interface, varying_passthrough); in test()
12370 prepareShaderStage(Utils::Shader::VERTEX, type, program_interface, varying_passthrough); in test()
12418 Utils::replaceToken("LAST_INPUT", position, buffer, globals); in test()
12421 Utils::replaceToken("LAST_OUTPUT", position, buffer, globals); in test()
12429 void VaryingLocationsTest::prepareShaderStage(Utils::Shader::STAGES stage, const Utils::Type& type, in test()
12430 Utils::ProgramInterface& program_interface, in test()
12431 Utils::VaryingPassthrough& varying_passthrough) in test()
12439 …const GLchar* prefix_in = Utils::ProgramInterface::GetStagePrefix(stage, Utils::Variable::VARYING_… in test()
12441 …const GLchar* prefix_out = Utils::ProgramInterface::GetStagePrefix(stage, Utils::Variable::VARYING… in test()
12448 Utils::ShaderInterface& si = program_interface.GetShaderInterface(stage); in test()
12456 Utils::replaceToken("PREFIX", position, prefix_in, first_in_name); in test()
12458 Utils::replaceToken("PREFIX", position, prefix_out, first_out_name); in test()
12460 Utils::replaceToken("PREFIX", position, prefix_in, last_in_name); in test()
12462 Utils::replaceToken("PREFIX", position, prefix_out, last_out_name); in test()
12464 if (Utils::Shader::FRAGMENT == stage) in test()
12469 if (Utils::Shader::GEOMETRY == stage) in test()
12475 Utils::Variable* first_in = si.Input( in test()
12480 Utils::Variable* last_in = in test()
12486 if (Utils::Shader::FRAGMENT != stage) in test()
12490 Utils::Variable* first_out = in test()
12496 Utils::Variable* last_out = si.Output( in test()
12598 Utils::ProgramInterface& program_interface, in test()
12599 Utils::VaryingPassthrough& /* varying_passthrough */) in test()
12601 Utils::ShaderInterface& si = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
12609 0 /* expected_componenet */, m_loc_vertex /* expected_location */, Utils::Type::uint /* type */, in test()
12613 … 0 /* expected_componenet */, m_loc_instance /* expected_location */, Utils::Type::uint /* type */, in test()
12679 Utils::ProgramInterface& /* program_interface */, in test()
12680 Utils::Shader::STAGES stage) in test()
12684 if (Utils::Shader::VERTEX == stage) in test()
12735 Utils::ProgramInterface& /* program_interface */, in test()
12736 Utils::Buffer& buffer, Utils::VertexArray& vao) in test()
12752 buffer.m_buffer = Utils::Buffer::Element; in test()
12757 …vao.Attribute(m_loc_vertex /* vertex_index */, Utils::Type::uint, 0 /* array_elements */, false /*… in test()
12760 vao.Attribute(m_loc_instance /* instance_index */, Utils::Type::uint, 0 /* array_elements */, in test()
12772 buffer.Data(Utils::Buffer::StaticDraw, buffer_data.size() * sizeof(GLuint), ptr); in test()
12799 void VaryingArrayLocationsTest::prepareShaderStage(Utils::Shader::STAGES stage, const Utils::Type& … in test()
12800 Utils::ProgramInterface& program_interface, in test()
12801 Utils::VaryingPassthrough& varying_passthrough) in test()
12809 …const GLchar* prefix_in = Utils::ProgramInterface::GetStagePrefix(stage, Utils::Variable::VARYING_… in test()
12811 …const GLchar* prefix_out = Utils::ProgramInterface::GetStagePrefix(stage, Utils::Variable::VARYING… in test()
12818 Utils::ShaderInterface& si = program_interface.GetShaderInterface(stage); in test()
12826 Utils::replaceToken("PREFIX", position, prefix_in, first_in_name); in test()
12828 Utils::replaceToken("PREFIX", position, prefix_out, first_out_name); in test()
12830 Utils::replaceToken("PREFIX", position, prefix_in, last_in_name); in test()
12832 Utils::replaceToken("PREFIX", position, prefix_out, last_out_name); in test()
12834 if (Utils::Shader::FRAGMENT == stage) in test()
12839 if (Utils::Shader::GEOMETRY == stage) in test()
12845 Utils::Variable* first_in = in test()
12851 Utils::Variable* last_in = in test()
12857 if (Utils::Shader::FRAGMENT != stage) in test()
12861 Utils::Variable* first_out = in test()
12867 Utils::Variable* last_out = in test()
12904 Utils::VaryingPassthrough& varying_passthrough, in test()
12905 Utils::Shader::STAGES stage) in test()
12909 if (Utils::Shader::VERTEX != stage) in test()
12929 Utils::ProgramInterface& program_interface, in test()
12930 Utils::VaryingPassthrough& varying_passthrough) in test()
12932 Utils::ShaderInterface& si = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
12933 const Utils::Type type = getType(test_case_index); in test()
12945 Utils::Interface* structure = program_interface.Structure("Data"); in test()
13030 std::string VaryingStructureMemberLocationTest::getShaderSource(GLuint test_case_index, Utils::Shad… in test()
13265 case Utils::Shader::FRAGMENT: in test()
13268 case Utils::Shader::GEOMETRY: in test()
13271 case Utils::Shader::TESS_CTRL: in test()
13274 case Utils::Shader::TESS_EVAL: in test()
13277 case Utils::Shader::VERTEX: in test()
13284 Utils::replaceToken("STRUCT_DEFINITION", position, struct_definition, source); in test()
13285 Utils::replaceToken("VARIABLE_DEFINITION", position, var_definition, source); in test()
13286 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
13292 case Utils::Shader::FRAGMENT: in test()
13295 case Utils::Shader::GEOMETRY: in test()
13298 case Utils::Shader::TESS_CTRL: in test()
13301 case Utils::Shader::TESS_EVAL: in test()
13304 case Utils::Shader::VERTEX: in test()
13326 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) << ", direction: "; in test()
13365 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
13367 if (Utils::Shader::COMPUTE == stage) in test()
13372 testCase test_case_in = { true, (Utils::Shader::STAGES)stage }; in test()
13373 testCase test_case_out = { false, (Utils::Shader::STAGES)stage }; in test()
13377 if (Utils::Shader::FRAGMENT != stage) in test()
13403 Utils::VaryingPassthrough& varying_passthrough, in test()
13404 Utils::Shader::STAGES stage) in test()
13408 if (Utils::Shader::VERTEX != stage) in test()
13429 Utils::ProgramInterface& program_interface, in test()
13430 Utils::VaryingPassthrough& varying_passthrough) in test()
13432 Utils::ShaderInterface& si = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
13433 const Utils::Type vec4 = Utils::Type::vec4; in test()
13451 Utils::Interface* block = program_interface.Block("vs_tcs_Block"); in test()
13521 std::string VaryingBlockMemberLocationsTest::getShaderSource(GLuint test_case_index, Utils::Shader:… in test()
13816 case Utils::Shader::FRAGMENT: in test()
13818 case Utils::Shader::TESS_CTRL: in test()
13824 case Utils::Shader::GEOMETRY: in test()
13825 case Utils::Shader::TESS_EVAL: in test()
13839 case Utils::Shader::VERTEX: in test()
13850 Utils::replaceToken("DIRECTION", position, direction, source); in test()
13852 Utils::replaceToken("BLOCK_DEFINITION", position, definition, source); in test()
13854 Utils::replaceToken("ARRAY", position, array, source); in test()
13855 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
13857 Utils::replaceAllTokens("INDEX", index, source); in test()
13863 case Utils::Shader::FRAGMENT: in test()
13866 case Utils::Shader::GEOMETRY: in test()
13869 case Utils::Shader::TESS_CTRL: in test()
13872 case Utils::Shader::TESS_EVAL: in test()
13875 case Utils::Shader::VERTEX: in test()
13897 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) << ", direction: "; in test()
13956 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
13958 if (Utils::Shader::COMPUTE == stage) in test()
13963 testCase test_case_in_all = { true, true, (Utils::Shader::STAGES)stage }; in test()
13964 testCase test_case_in_one = { true, false, (Utils::Shader::STAGES)stage }; in test()
13965 testCase test_case_out_all = { false, true, (Utils::Shader::STAGES)stage }; in test()
13966 testCase test_case_out_one = { false, false, (Utils::Shader::STAGES)stage }; in test()
13968 if (Utils::Shader::VERTEX != stage) in test()
13974 if (Utils::Shader::FRAGMENT != stage) in test()
14001 Utils::Shader::STAGES stage) in test()
14234 case Utils::Shader::FRAGMENT: in test()
14237 case Utils::Shader::GEOMETRY: in test()
14242 case Utils::Shader::TESS_CTRL: in test()
14247 case Utils::Shader::TESS_EVAL: in test()
14252 case Utils::Shader::VERTEX: in test()
14260 Utils::replaceToken("BLOCK_DEFINITION", position, block_definition, source); in test()
14262 Utils::replaceToken("DIRECTION", position, direction, source); in test()
14263 Utils::replaceToken("ARRAY", position, array, source); in test()
14264 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
14266 Utils::replaceAllTokens("INDEX", index, source); in test()
14272 case Utils::Shader::FRAGMENT: in test()
14275 case Utils::Shader::GEOMETRY: in test()
14278 case Utils::Shader::TESS_CTRL: in test()
14281 case Utils::Shader::TESS_EVAL: in test()
14284 case Utils::Shader::VERTEX: in test()
14306 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) << ", direction: "; in test()
14345 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
14347 if (Utils::Shader::COMPUTE == stage) in test()
14352 testCase test_case_in = { true, (Utils::Shader::STAGES)stage }; in test()
14353 testCase test_case_out = { false, (Utils::Shader::STAGES)stage }; in test()
14355 if (Utils::Shader::VERTEX != stage) in test()
14360 if (Utils::Shader::FRAGMENT != stage) in test()
14384 std::string VaryingLocationLimitTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES… in test()
14602 Utils::Variable::STORAGE storage = Utils::Variable::VARYING_INPUT; in test()
14609 storage = Utils::Variable::VARYING_OUTPUT; in test()
14622 case Utils::Shader::FRAGMENT: in test()
14625 case Utils::Shader::GEOMETRY: in test()
14630 case Utils::Shader::TESS_CTRL: in test()
14635 case Utils::Shader::TESS_EVAL: in test()
14640 case Utils::Shader::VERTEX: in test()
14648 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
14650 Utils::replaceToken("LAST", position, buffer, source); in test()
14651 Utils::replaceToken("FLAT", position, flat, source); in test()
14652 Utils::replaceToken("DIRECTION", position, direction, source); in test()
14653 Utils::replaceToken("ARRAY", position, array, source); in test()
14654 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
14656 Utils::replaceAllTokens("TYPE", type_name, source); in test()
14657 Utils::replaceAllTokens("INDEX", index, source); in test()
14663 case Utils::Shader::FRAGMENT: in test()
14666 case Utils::Shader::GEOMETRY: in test()
14669 case Utils::Shader::TESS_CTRL: in test()
14672 case Utils::Shader::TESS_EVAL: in test()
14675 case Utils::Shader::VERTEX: in test()
14697 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) in test()
14741 const Utils::Type& type = getType(i); in test()
14743 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
14745 if (Utils::Shader::COMPUTE == stage) in test()
14750 testCase test_case_in = { true, type, (Utils::Shader::STAGES)stage }; in test()
14751 testCase test_case_out = { false, type, (Utils::Shader::STAGES)stage }; in test()
14755 if (Utils::Shader::FRAGMENT != stage) in test()
14791 void VaryingComponentsTest::getProgramInterface(GLuint test_case_index, Utils::ProgramInterface& pr… in test()
14792 Utils::VaryingPassthrough& varying_passthrough) in test()
14796 const Utils::Type vector_type = Utils::Type::GetType(test_case.m_type, 1, 4); in test()
14797 Utils::ShaderInterface si = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
14821 …prepareShaderStage(Utils::Shader::FRAGMENT, vector_type, program_interface, test_case, varying_pas… in test()
14822 …prepareShaderStage(Utils::Shader::GEOMETRY, vector_type, program_interface, test_case, varying_pas… in test()
14823 …prepareShaderStage(Utils::Shader::TESS_CTRL, vector_type, program_interface, test_case, varying_pa… in test()
14824 …prepareShaderStage(Utils::Shader::TESS_EVAL, vector_type, program_interface, test_case, varying_pa… in test()
14825 …prepareShaderStage(Utils::Shader::VERTEX, vector_type, program_interface, test_case, varying_passt… in test()
14844 case Utils::Type::Double: in test()
14845 name.append(Utils::Type::_double.GetGLSLTypeName()); in test()
14847 case Utils::Type::Float: in test()
14848 name.append(Utils::Type::_float.GetGLSLTypeName()); in test()
14850 case Utils::Type::Int: in test()
14851 name.append(Utils::Type::_int.GetGLSLTypeName()); in test()
14853 case Utils::Type::Uint: in test()
14854 name.append(Utils::Type::uint.GetGLSLTypeName()); in test()
14905 m_test_cases.push_back(testCase(GVEC4, Utils::Type::Float)); in test()
14906 m_test_cases.push_back(testCase(SCALAR_GVEC3, Utils::Type::Float)); in test()
14907 m_test_cases.push_back(testCase(GVEC3_SCALAR, Utils::Type::Float)); in test()
14908 m_test_cases.push_back(testCase(GVEC2_GVEC2, Utils::Type::Float)); in test()
14909 m_test_cases.push_back(testCase(GVEC2_SCALAR_SCALAR, Utils::Type::Float)); in test()
14910 m_test_cases.push_back(testCase(SCALAR_GVEC2_SCALAR, Utils::Type::Float)); in test()
14911 m_test_cases.push_back(testCase(SCALAR_SCALAR_GVEC2, Utils::Type::Float)); in test()
14912 m_test_cases.push_back(testCase(SCALAR_SCALAR_SCALAR_SCALAR, Utils::Type::Float)); in test()
14914 m_test_cases.push_back(testCase(GVEC4, Utils::Type::Int)); in test()
14915 m_test_cases.push_back(testCase(SCALAR_GVEC3, Utils::Type::Int)); in test()
14916 m_test_cases.push_back(testCase(GVEC3_SCALAR, Utils::Type::Int)); in test()
14917 m_test_cases.push_back(testCase(GVEC2_GVEC2, Utils::Type::Int)); in test()
14918 m_test_cases.push_back(testCase(GVEC2_SCALAR_SCALAR, Utils::Type::Int)); in test()
14919 m_test_cases.push_back(testCase(SCALAR_GVEC2_SCALAR, Utils::Type::Int)); in test()
14920 m_test_cases.push_back(testCase(SCALAR_SCALAR_GVEC2, Utils::Type::Int)); in test()
14921 m_test_cases.push_back(testCase(SCALAR_SCALAR_SCALAR_SCALAR, Utils::Type::Int)); in test()
14923 m_test_cases.push_back(testCase(GVEC4, Utils::Type::Uint)); in test()
14924 m_test_cases.push_back(testCase(SCALAR_GVEC3, Utils::Type::Uint)); in test()
14925 m_test_cases.push_back(testCase(GVEC3_SCALAR, Utils::Type::Uint)); in test()
14926 m_test_cases.push_back(testCase(GVEC2_GVEC2, Utils::Type::Uint)); in test()
14927 m_test_cases.push_back(testCase(GVEC2_SCALAR_SCALAR, Utils::Type::Uint)); in test()
14928 m_test_cases.push_back(testCase(SCALAR_GVEC2_SCALAR, Utils::Type::Uint)); in test()
14929 m_test_cases.push_back(testCase(SCALAR_SCALAR_GVEC2, Utils::Type::Uint)); in test()
14930 m_test_cases.push_back(testCase(SCALAR_SCALAR_SCALAR_SCALAR, Utils::Type::Uint)); in test()
14969 Utils::Shader::STAGES stage, Utils::Variable::STORAGE storage) in test()
14974 const GLchar* prefix = Utils::ProgramInterface::GetStagePrefix(stage, storage); in test()
14976 Utils::replaceToken("PREFIX", position, prefix, result); in test()
14977 Utils::replaceToken("NAME", position, name, result); in test()
14980 Utils::replaceToken("LOCATION", position, buffer, result); in test()
14983 Utils::replaceToken("COMPONENT", position, buffer, result); in test()
14994 Utils::replaceToken("LOCATION", position, location, qualifiers); in test()
14995 Utils::replaceToken("COMPONENT", position, component, qualifiers); in test()
14996 Utils::replaceToken("INTERPOLATION", position, interpolation, qualifiers); in test()
15004 void VaryingComponentsTest::prepareShaderStage(Utils::Shader::STAGES stage, const Utils::Type& vect… in test()
15005 Utils::ProgramInterface& program_interface, const testCase& test_case, in test()
15006 Utils::VaryingPassthrough& varying_passthrough) in test()
15009 …const Utils::Type& basic_type = Utils::Type::GetType(vector_type.m_basic_type, 1 /* n_cols */, 1 … in test()
15018 Utils::ShaderInterface& si = program_interface.GetShaderInterface(stage); in test()
15021 if ((Utils::Shader::FRAGMENT == stage) || (Utils::Shader::GEOMETRY == stage)) in test()
15026 if (Utils::Shader::FRAGMENT != stage) in test()
15151 Utils::Variable* in = in test()
15152 prepareVarying(basic_type, in_desc, interpolation, si, stage, Utils::Variable::VARYING_INPUT); in test()
15154 if (Utils::Shader::FRAGMENT != stage) in test()
15158 Utils::Variable* out = in test()
15159 prepareVarying(basic_type, out_desc, interpolation, si, stage, Utils::Variable::VARYING_OUTPUT); in test()
15171 Utils::Variable* VaryingComponentsTest::prepareVarying(const Utils::Type& basic_type, const descrip… in test()
15172 const GLchar* interpolation, Utils::ShaderInterface& si, in test()
15173 Utils::Shader::STAGES stage, Utils::Variable::STORAGE storage) in test()
15181 …const Utils::Type& type = Utils::Type::GetType(basic_type.m_basic_type, 1 /* n_columns */, des… in test()
15182 Utils::Variable* var = 0; in test()
15184 if (Utils::Variable::VARYING_INPUT == storage) in test()
15214 VaryingComponentsTest::testCase::testCase(COMPONENTS_LAYOUT layout, Utils::Type::TYPES type) in test()
15255 std::string VaryingExceedingComponentsTest::getShaderSource(GLuint test_case_index, Utils::Shader::… in test()
15519 case Utils::Shader::FRAGMENT: in test()
15522 case Utils::Shader::GEOMETRY: in test()
15527 case Utils::Shader::TESS_CTRL: in test()
15532 case Utils::Shader::TESS_EVAL: in test()
15537 case Utils::Shader::VERTEX: in test()
15545 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
15547 Utils::replaceToken("COMPONENT", position, buffer, source); in test()
15548 Utils::replaceToken("DIRECTION", position, direction, source); in test()
15549 Utils::replaceToken("ARRAY", position, array, source); in test()
15550 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
15552 Utils::replaceAllTokens("TYPE", type_name, source); in test()
15553 Utils::replaceAllTokens("INDEX", index, source); in test()
15559 case Utils::Shader::FRAGMENT: in test()
15562 case Utils::Shader::GEOMETRY: in test()
15565 case Utils::Shader::TESS_CTRL: in test()
15568 case Utils::Shader::TESS_EVAL: in test()
15571 case Utils::Shader::VERTEX: in test()
15593 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) in test()
15647 const Utils::Type& type = getType(i); in test()
15652 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
15654 if (Utils::Shader::COMPUTE == stage) in test()
15665 …testCase test_case_in_arr = { invalid_component, true, true, (Utils::Shader::STAGES)stage, type }; in test()
15666 …testCase test_case_in_one = { invalid_component, true, false, (Utils::Shader::STAGES)stage, type … in test()
15667 …testCase test_case_out_arr = { invalid_component, false, true, (Utils::Shader::STAGES)stage, type … in test()
15668 …testCase test_case_out_one = { invalid_component, false, false, (Utils::Shader::STAGES)stage, type… in test()
15673 if (Utils::Shader::FRAGMENT != stage) in test()
15699 std::string VaryingComponentWithoutLocationTest::getShaderSource(GLuint test_case_index, Utils::Sha… in test()
15928 case Utils::Shader::FRAGMENT: in test()
15931 case Utils::Shader::GEOMETRY: in test()
15936 case Utils::Shader::TESS_CTRL: in test()
15941 case Utils::Shader::TESS_EVAL: in test()
15946 case Utils::Shader::VERTEX: in test()
15955 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
15957 Utils::replaceToken("COMPONENT", position, buffer, source); in test()
15958 Utils::replaceToken("FLAT", position, flat, source); in test()
15959 Utils::replaceToken("DIRECTION", position, direction, source); in test()
15960 Utils::replaceToken("ARRAY", position, array, source); in test()
15961 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
15963 Utils::replaceAllTokens("TYPE", type_name, source); in test()
15964 Utils::replaceAllTokens("INDEX", index, source); in test()
15970 case Utils::Shader::FRAGMENT: in test()
15973 case Utils::Shader::GEOMETRY: in test()
15976 case Utils::Shader::TESS_CTRL: in test()
15979 case Utils::Shader::TESS_EVAL: in test()
15982 case Utils::Shader::VERTEX: in test()
16004 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) in test()
16051 const Utils::Type& type = getType(i); in test()
16055 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
16057 if (Utils::Shader::COMPUTE == stage) in test()
16068 testCase test_case_in = { valid_component, true, (Utils::Shader::STAGES)stage, type }; in test()
16069 testCase test_case_out = { valid_component, false, (Utils::Shader::STAGES)stage, type }; in test()
16073 if (Utils::Shader::FRAGMENT != stage) in test()
16098 std::string VaryingComponentOfInvalidTypeTest::getShaderSource(GLuint test_case_index, Utils::Shade… in test()
16458 case Utils::Shader::FRAGMENT: in test()
16461 case Utils::Shader::GEOMETRY: in test()
16466 case Utils::Shader::TESS_CTRL: in test()
16471 case Utils::Shader::TESS_EVAL: in test()
16476 case Utils::Shader::VERTEX: in test()
16484 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
16486 Utils::replaceToken("COMPONENT", position, buffer, source); in test()
16487 Utils::replaceToken("DIRECTION", position, direction, source); in test()
16488 Utils::replaceToken("ARRAY", position, array, source); in test()
16489 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
16491 Utils::replaceAllTokens("TYPE", type_name, source); in test()
16492 Utils::replaceAllTokens("INDEX", index, source); in test()
16498 case Utils::Shader::FRAGMENT: in test()
16501 case Utils::Shader::GEOMETRY: in test()
16504 case Utils::Shader::TESS_CTRL: in test()
16507 case Utils::Shader::TESS_EVAL: in test()
16510 case Utils::Shader::VERTEX: in test()
16532 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) in test()
16586 const Utils::Type& type = getType(i); in test()
16590 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
16592 if (Utils::Shader::COMPUTE == stage) in test()
16600 …testCase test_case_in_arr = { MATRIX, valid_component, true, true, (Utils::Shader::STAGES)stage, t… in test()
16602 MATRIX, valid_component, false, true, (Utils::Shader::STAGES)stage, type in test()
16605 MATRIX, valid_component, true, false, (Utils::Shader::STAGES)stage, type in test()
16608 MATRIX, valid_component, false, false, (Utils::Shader::STAGES)stage, type in test()
16614 if (Utils::Shader::FRAGMENT != stage) in test()
16624 … testCase test_case_in_arr = { (CASES)c, valid_component, true, true, (Utils::Shader::STAGES)stage, in test()
16626 …testCase test_case_in_one = { (CASES)c, valid_component, false, true, (Utils::Shader::STAGES)stage, in test()
16628 …testCase test_case_out_arr = { (CASES)c, valid_component, true, false, (Utils::Shader::STAGES)stag… in test()
16631 (CASES)c, valid_component, false, false, (Utils::Shader::STAGES)stage, type in test()
16634 if (Utils::Shader::VERTEX != stage) in test()
16640 if (Utils::Shader::FRAGMENT != stage) in test()
16668 std::string InputComponentAliasingTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAG… in test()
16878 const bool is_flat_req = isFlatRequired(stage, test_case.m_type, Utils::Variable::VARYING_INPUT); in test()
16894 case Utils::Shader::FRAGMENT: in test()
16897 case Utils::Shader::GEOMETRY: in test()
16902 case Utils::Shader::TESS_CTRL: in test()
16907 case Utils::Shader::TESS_EVAL: in test()
16912 case Utils::Shader::VERTEX: in test()
16920 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
16922 Utils::replaceToken("COMPONENT", position, buffer_gohan, source); in test()
16923 Utils::replaceToken("ARRAY", position, array, source); in test()
16924 Utils::replaceToken("COMPONENT", position, buffer_goten, source); in test()
16925 Utils::replaceToken("ARRAY", position, array, source); in test()
16926 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
16928 Utils::replaceAllTokens("FLAT", flat, source); in test()
16929 Utils::replaceAllTokens("TYPE", type_name, source); in test()
16930 Utils::replaceAllTokens("INDEX", index, source); in test()
16936 case Utils::Shader::FRAGMENT: in test()
16939 case Utils::Shader::GEOMETRY: in test()
16942 case Utils::Shader::TESS_CTRL: in test()
16945 case Utils::Shader::TESS_EVAL: in test()
16948 case Utils::Shader::VERTEX: in test()
16970 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) in test()
17007 return (Utils::Shader::VERTEX != test_case.m_stage); in test()
17019 const Utils::Type& type = getType(i); in test()
17020 const bool use_double = (Utils::Type::Double == type.m_basic_type); in test()
17036 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
17038 if (Utils::Shader::COMPUTE == stage) in test()
17053 …testCase test_case = { gohan * component_size, goten * component_size, (Utils::Shader::STAGES)stag… in test()
17080 std::string OutputComponentAliasingTest::getShaderSource(GLuint test_case_index, Utils::Shader::STA… in test()
17296 case Utils::Shader::FRAGMENT: in test()
17299 case Utils::Shader::GEOMETRY: in test()
17304 case Utils::Shader::TESS_CTRL: in test()
17309 case Utils::Shader::TESS_EVAL: in test()
17314 case Utils::Shader::VERTEX: in test()
17322 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
17324 Utils::replaceToken("COMPONENT", position, buffer_gohan, source); in test()
17325 Utils::replaceToken("ARRAY", position, array, source); in test()
17326 Utils::replaceToken("COMPONENT", position, buffer_goten, source); in test()
17327 Utils::replaceToken("ARRAY", position, array, source); in test()
17328 Utils::replaceToken("VARIABLE_USE", position, l_test, source); in test()
17330 Utils::replaceAllTokens("TYPE", type_name, source); in test()
17331 Utils::replaceAllTokens("INDEX", index, source); in test()
17337 case Utils::Shader::FRAGMENT: in test()
17340 case Utils::Shader::GEOMETRY: in test()
17343 case Utils::Shader::TESS_CTRL: in test()
17346 case Utils::Shader::TESS_EVAL: in test()
17349 case Utils::Shader::VERTEX: in test()
17371 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) in test()
17408 const Utils::Type& type = getType(i); in test()
17418 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
17420 if (Utils::Shader::COMPUTE == stage) in test()
17425 if ((Utils::Shader::FRAGMENT == stage) && (Utils::Type::Double == type.m_basic_type)) in test()
17440 testCase test_case = { gohan, goten, (Utils::Shader::STAGES)stage, type }; in test()
17467 Utils::Shader::STAGES stage) in test()
17692 Utils::Variable::STORAGE storage = Utils::Variable::VARYING_INPUT; in test()
17698 storage = Utils::Variable::VARYING_OUTPUT; in test()
17717 case Utils::Shader::FRAGMENT: in test()
17720 case Utils::Shader::GEOMETRY: in test()
17725 case Utils::Shader::TESS_CTRL: in test()
17730 case Utils::Shader::TESS_EVAL: in test()
17735 case Utils::Shader::VERTEX: in test()
17743 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
17745 Utils::replaceToken("COMPONENT", position, buffer_gohan, source); in test()
17746 Utils::replaceToken("FLAT", position, flat_gohan, source); in test()
17747 Utils::replaceToken("DIRECTION", position, direction, source); in test()
17748 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
17749 Utils::replaceToken("ARRAY", position, array, source); in test()
17750 Utils::replaceToken("COMPONENT", position, buffer_goten, source); in test()
17751 Utils::replaceToken("FLAT", position, flat_goten, source); in test()
17752 Utils::replaceToken("DIRECTION", position, direction, source); in test()
17753 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
17754 Utils::replaceToken("ARRAY", position, array, source); in test()
17757 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
17761 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
17762 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
17766 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
17767 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
17768 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
17769 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
17772 Utils::replaceAllTokens("INDEX", index, source); in test()
17778 case Utils::Shader::FRAGMENT: in test()
17781 case Utils::Shader::GEOMETRY: in test()
17784 case Utils::Shader::TESS_CTRL: in test()
17787 case Utils::Shader::TESS_EVAL: in test()
17790 case Utils::Shader::VERTEX: in test()
17812 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) << ", " in test()
17858 const Utils::Type& type_gohan = getType(i); in test()
17869 const Utils::Type& type_goten = getType(j); in test()
17895 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
17898 if (Utils::Shader::COMPUTE == stage) in test()
17914 testCase test_case_in = { gohan, goten, true, (Utils::Shader::STAGES)stage, in test()
17916 testCase test_case_out = { gohan, goten, false, (Utils::Shader::STAGES)stage, in test()
17919 if (Utils::Shader::VERTEX != stage) in test()
17923 if ((Utils::Shader::FRAGMENT != stage) || ((Utils::Type::Double != type_gohan.m_basic_type) && in test()
17924 (Utils::Type::Double != type_goten.m_basic_type))) in test()
17933 testCase test_case_in = { gohan, goten, true, (Utils::Shader::STAGES)stage, in test()
17935 testCase test_case_out = { gohan, goten, false, (Utils::Shader::STAGES)stage, in test()
17938 if (Utils::Shader::VERTEX != stage) in test()
17942 if ((Utils::Shader::FRAGMENT != stage) || ((Utils::Type::Double != type_gohan.m_basic_type) && in test()
17943 (Utils::Type::Double != type_goten.m_basic_type))) in test()
17960 bool VaryingLocationAliasingWithMixedTypesTest::isFloatType(const Utils::Type& type) in test()
17964 if ((Utils::Type::Double == type.m_basic_type) || (Utils::Type::Float == type.m_basic_type)) in test()
17992 Utils::Shader::STAGES stage) in test()
18231 case Utils::Shader::FRAGMENT: in test()
18234 case Utils::Shader::GEOMETRY: in test()
18239 case Utils::Shader::TESS_CTRL: in test()
18244 case Utils::Shader::TESS_EVAL: in test()
18249 case Utils::Shader::VERTEX: in test()
18257 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
18259 Utils::replaceToken("COMPONENT", position, buffer_gohan, source); in test()
18260 Utils::replaceToken("INTERPOLATION", position, int_gohan, source); in test()
18261 Utils::replaceToken("DIRECTION", position, direction, source); in test()
18262 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
18263 Utils::replaceToken("ARRAY", position, array, source); in test()
18264 Utils::replaceToken("COMPONENT", position, buffer_goten, source); in test()
18265 Utils::replaceToken("INTERPOLATION", position, int_goten, source); in test()
18266 Utils::replaceToken("DIRECTION", position, direction, source); in test()
18267 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
18268 Utils::replaceToken("ARRAY", position, array, source); in test()
18271 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
18275 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
18276 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
18280 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
18281 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
18282 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
18283 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
18286 Utils::replaceAllTokens("INDEX", index, source); in test()
18292 case Utils::Shader::FRAGMENT: in test()
18295 case Utils::Shader::GEOMETRY: in test()
18298 case Utils::Shader::TESS_CTRL: in test()
18301 case Utils::Shader::TESS_EVAL: in test()
18304 case Utils::Shader::VERTEX: in test()
18326 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) << ", " in test()
18374 const Utils::Type& type_gohan = getType(i); in test()
18385 const Utils::Type& type_goten = getType(j); in test()
18409 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
18412 if (Utils::Shader::COMPUTE == stage) in test()
18424 const bool is_gohan_double = (Utils::Type::Double == type_gohan.m_basic_type) ? true : false; in test()
18425 const bool is_goten_double = (Utils::Type::Double == type_goten.m_basic_type) ? true : false; in test()
18445 (Utils::Shader::STAGES)stage, in test()
18454 (Utils::Shader::STAGES)stage, in test()
18462 if ((Utils::Shader::VERTEX != stage) && in test()
18463 ((Utils::Shader::FRAGMENT != stage) || (true == is_comb_accepted_as_fs_in))) in test()
18469 if (Utils::Shader::FRAGMENT != stage) in test()
18514 bool VaryingLocationAliasingWithMixedInterpolationTest::isFloatType(const Utils::Type& type) in test()
18518 if ((Utils::Type::Double == type.m_basic_type) || (Utils::Type::Float == type.m_basic_type)) in test()
18546 Utils::Shader::STAGES stage) in test()
18789 case Utils::Shader::FRAGMENT: in test()
18792 case Utils::Shader::GEOMETRY: in test()
18799 case Utils::Shader::TESS_CTRL: in test()
18812 case Utils::Shader::TESS_EVAL: in test()
18819 case Utils::Shader::VERTEX: in test()
18827 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
18829 Utils::replaceToken("COMPONENT", position, buffer_gohan, source); in test()
18830 Utils::replaceToken("AUX", position, aux_gohan, source); in test()
18831 Utils::replaceToken("INTERPOLATION", position, int_gohan, source); in test()
18832 Utils::replaceToken("DIRECTION", position, direction, source); in test()
18833 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
18834 Utils::replaceToken("ARRAY", position, array_gohan, source); in test()
18835 Utils::replaceToken("COMPONENT", position, buffer_goten, source); in test()
18836 Utils::replaceToken("AUX", position, aux_goten, source); in test()
18837 Utils::replaceToken("INTERPOLATION", position, int_goten, source); in test()
18838 Utils::replaceToken("DIRECTION", position, direction, source); in test()
18839 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
18840 Utils::replaceToken("ARRAY", position, array_goten, source); in test()
18843 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
18847 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
18848 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
18852 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
18853 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
18854 Utils::replaceToken("TYPE", position, type_gohan_name, source); in test()
18855 Utils::replaceToken("TYPE", position, type_goten_name, source); in test()
18858 Utils::replaceAllTokens("INDEX_GOHAN", index_gohan, source); in test()
18859 Utils::replaceAllTokens("INDEX_GOTEN", index_goten, source); in test()
18865 case Utils::Shader::FRAGMENT: in test()
18868 case Utils::Shader::GEOMETRY: in test()
18871 case Utils::Shader::TESS_CTRL: in test()
18874 case Utils::Shader::TESS_EVAL: in test()
18877 case Utils::Shader::VERTEX: in test()
18899 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) << ", " in test()
18946 const Utils::Type& type_gohan = getType(i); in test()
18957 const Utils::Type& type_goten = getType(j); in test()
18958 …const bool is_flat_req_gohan = (Utils::Type::Float == type_gohan.m_basic_type) ? false : tru… in test()
18959 …const bool is_flat_req_goten = (Utils::Type::Float == type_goten.m_basic_type) ? false : tru… in test()
18989 …testCase test_case_tcs_np = { gohan, goten, NONE, PATCH, "", "", false, Utils::Shader::TESS_CTR… in test()
18992 …testCase test_case_tcs_pn = { gohan, goten, PATCH, NONE, "", "", false, Utils::Shader::TESS_CTR… in test()
18995 …testCase test_case_tes_np = { gohan, goten, NONE, PATCH, "", "", true, Utils::Shader::TESS_EVAL, in test()
18998 …testCase test_case_tes_pn = { gohan, goten, PATCH, NONE, "", "", true, Utils::Shader::TESS_EVAL, in test()
19002 fs_int_gohan, fs_int_goten, true, Utils::Shader::FRAGMENT, in test()
19006 fs_int_gohan, fs_int_goten, true, Utils::Shader::FRAGMENT, in test()
19010 fs_int_gohan, fs_int_goten, true, Utils::Shader::FRAGMENT, in test()
19014 fs_int_gohan, fs_int_goten, true, Utils::Shader::FRAGMENT, in test()
19018 fs_int_gohan, fs_int_goten, true, Utils::Shader::FRAGMENT, in test()
19022 fs_int_gohan, fs_int_goten, true, Utils::Shader::FRAGMENT, in test()
19076 bool VaryingLocationAliasingWithMixedAuxiliaryStorageTest::isFloatType(const Utils::Type& type) in test()
19080 if ((Utils::Type::Double == type.m_basic_type) || (Utils::Type::Float == type.m_basic_type)) in test()
19106 void VertexAttribLocationAPITest::prepareAttribLocation(Utils::Program& program, in test()
19107 Utils::ProgramInterface& program_interface) in test()
19127 Utils::ProgramInterface& program_interface, in test()
19128 Utils::VaryingPassthrough& /* varying_passthrough */) in test()
19130 Utils::ShaderInterface& si = program_interface.GetShaderInterface(Utils::Shader::VERTEX); in test()
19131 const Utils::Type& type = Utils::Type::vec4; in test()
19160 …Utils::Variable::m_automatic_location /* expected_location */, type /* type */, GL_FALSE /* normal… in test()
19170 …Utils::Variable::m_automatic_location /* expected_location */, type /* type */, GL_FALSE /* normal… in test()
19210 bool FragmentDataLocationAPITest::checkResults(glw::GLuint /* test_case_index */, Utils::Texture& /… in test()
19289 Utils::VaryingPassthrough& /* varying_passthrough */, in test()
19290 Utils::Shader::STAGES stage) in test()
19295 if (Utils::Shader::FRAGMENT != stage) in test()
19317 Utils::ProgramInterface& program_interface, in test()
19318 Utils::VaryingPassthrough& /* varying_passthrough */) in test()
19320 Utils::ShaderInterface& si = program_interface.GetShaderInterface(Utils::Shader::FRAGMENT); in test()
19321 const Utils::Type& type = Utils::Type::vec4; in test()
19335 …Utils::Variable::m_automatic_location /* expected_location */, type /* type */, GL_FALSE /* normal… in test()
19343 …Utils::Variable::m_automatic_location /* expected_location */, type /* type */, GL_FALSE /* normal… in test()
19363 void FragmentDataLocationAPITest::prepareFragmentDataLoc(Utils::Program& program, in test()
19364 Utils::ProgramInterface& program_interface) in test()
19378 Utils::ShaderInterface& si = program_interface.GetShaderInterface(Utils::Shader::FRAGMENT); in test()
19380 Utils::Variable::PtrVector& outputs = si.m_outputs; in test()
19382 for (Utils::Variable::PtrVector::iterator it = outputs.begin(); outputs.end() != it; ++it) in test()
19384 const Utils::Variable::Descriptor& desc = (*it)->m_descriptor; in test()
19404 void FragmentDataLocationAPITest::prepareFramebuffer(Utils::Framebuffer& framebuffer, Utils::Textur… in test()
19419 …m_goku.Init(Utils::Texture::TEX_2D, m_width, m_height, 0, GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE, &te… in test()
19421 …m_gohan.Init(Utils::Texture::TEX_2D, m_width, m_height, 0, GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE, &t… in test()
19423 …m_goten.Init(Utils::Texture::TEX_2D, m_width, m_height, 0, GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE, &t… in test()
19425 …m_chichi.Init(Utils::Texture::TEX_2D, m_width, m_height, 0, GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE, &… in test()
19468 std::string XFBInputTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES stage) in test()
19695 case Utils::Shader::FRAGMENT: in test()
19698 case Utils::Shader::GEOMETRY: in test()
19703 case Utils::Shader::TESS_CTRL: in test()
19708 case Utils::Shader::TESS_EVAL: in test()
19713 case Utils::Shader::VERTEX: in test()
19721 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
19723 Utils::replaceToken("ARRAY", position, array, source); in test()
19724 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
19726 Utils::replaceAllTokens("INDEX", index, source); in test()
19732 case Utils::Shader::FRAGMENT: in test()
19735 case Utils::Shader::GEOMETRY: in test()
19738 case Utils::Shader::TESS_CTRL: in test()
19741 case Utils::Shader::TESS_EVAL: in test()
19744 case Utils::Shader::VERTEX: in test()
19766 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) << ", qualifier: "; in test()
19813 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
19815 if (Utils::Shader::COMPUTE == stage) in test()
19820 testCase test_case = { (QUALIFIERS)qualifier, (Utils::Shader::STAGES)stage }; in test()
19850 const Utils::Type& vec4 = Utils::Type::vec4; in test()
19870 uniform.m_target = Utils::Buffer::Uniform; in test()
19871 xfb.m_target = Utils::Buffer::Transform_feedback; in test()
19874 …const tcu::Vec4 var(Utils::GetRandFloat(), Utils::GetRandFloat(), Utils::GetRandFloat(), Utils::Ge… in test()
19903 uniform.m_target = Utils::Buffer::Uniform; in test()
19906 …const tcu::Vec4 var(Utils::GetRandFloat(), Utils::GetRandFloat(), Utils::GetRandFloat(), Utils::Ge… in test()
19920 void XFBAllStagesTest::getShaderBody(glw::GLuint /* test_case_index */, Utils::Shader::STAGES stage, in test()
19934 case Utils::Shader::FRAGMENT: in test()
19937 case Utils::Shader::GEOMETRY: in test()
19940 case Utils::Shader::TESS_CTRL: in test()
19943 case Utils::Shader::TESS_EVAL: in test()
19946 case Utils::Shader::VERTEX: in test()
19962 void XFBAllStagesTest::getShaderInterface(glw::GLuint /* test_case_index */, Utils::Shader::STAGES … in test()
19993 case Utils::Shader::FRAGMENT: in test()
19996 case Utils::Shader::GEOMETRY: in test()
19999 case Utils::Shader::TESS_CTRL: in test()
20002 case Utils::Shader::TESS_EVAL: in test()
20005 case Utils::Shader::VERTEX: in test()
20130 uniform.m_target = Utils::Buffer::Uniform; in test()
20131 xfb_0.m_target = Utils::Buffer::Transform_feedback; in test()
20132 xfb_1.m_target = Utils::Buffer::Transform_feedback; in test()
20135 uniform.m_initial_data = Utils::Type::vec4.GenerateDataPacked(); in test()
20137 xfb_0.m_initial_data = Utils::Type::vec4.GenerateDataPacked(); in test()
20167 uniform.m_target = Utils::Buffer::Uniform; in test()
20168 xfb_1.m_target = Utils::Buffer::Transform_feedback; in test()
20171 uniform.m_initial_data = Utils::Type::vec4.GenerateDataPacked(); in test()
20193 uniform.m_target = Utils::Buffer::Uniform; in test()
20194 xfb_0.m_target = Utils::Buffer::Transform_feedback; in test()
20197 uniform.m_initial_data = Utils::Type::vec4.GenerateDataPacked(); in test()
20199 xfb_0.m_initial_data = Utils::Type::vec4.GenerateDataPacked(); in test()
20214 void XFBStrideOfEmptyListTest::getShaderBody(GLuint /* test_case_index */, Utils::Shader::STAGES st… in test()
20225 case Utils::Shader::FRAGMENT: in test()
20228 case Utils::Shader::GEOMETRY: in test()
20244 void XFBStrideOfEmptyListTest::getShaderInterface(GLuint /* test_case_index */, Utils::Shader::STAG… in test()
20258 case Utils::Shader::FRAGMENT: in test()
20261 case Utils::Shader::GEOMETRY: in test()
20421 uniform.m_target = Utils::Buffer::Uniform; in test()
20422 xfb_0.m_target = Utils::Buffer::Transform_feedback; in test()
20423 xfb_1.m_target = Utils::Buffer::Transform_feedback; in test()
20426 uniform.m_initial_data = Utils::Type::vec4.GenerateDataPacked(); in test()
20438 xfb_1.m_initial_data = Utils::Type::vec4.GenerateDataPacked(); in test()
20458 uniform.m_target = Utils::Buffer::Uniform; in test()
20459 xfb_1.m_target = Utils::Buffer::Transform_feedback; in test()
20462 uniform.m_initial_data = Utils::Type::vec4.GenerateDataPacked(); in test()
20465 xfb_1.m_initial_data = Utils::Type::vec4.GenerateDataPacked(); in test()
20485 uniform.m_target = Utils::Buffer::Uniform; in test()
20486 xfb_0.m_target = Utils::Buffer::Transform_feedback; in test()
20489 uniform.m_initial_data = Utils::Type::vec4.GenerateDataPacked(); in test()
20492 xfb_0.m_initial_data = Utils::Type::vec4.GenerateDataPacked(); in test()
20505 Utils::Program::NameVector& captured_varyings, in test()
20520 void XFBStrideOfEmptyListAndAPITest::getShaderBody(GLuint /* test_case_index */, Utils::Shader::STA… in test()
20532 case Utils::Shader::FRAGMENT: in test()
20535 case Utils::Shader::GEOMETRY: in test()
20551 void XFBStrideOfEmptyListAndAPITest::getShaderInterface(GLuint /* test_case_index */, Utils::Shader… in test()
20565 case Utils::Shader::FRAGMENT: in test()
20568 case Utils::Shader::GEOMETRY: in test()
20631 std::string XFBTooSmallStrideTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES st… in test()
20832 case Utils::Shader::GEOMETRY: in test()
20837 case Utils::Shader::TESS_CTRL: in test()
20842 case Utils::Shader::TESS_EVAL: in test()
20847 case Utils::Shader::VERTEX: in test()
20855 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
20857 Utils::replaceToken("ARRAY", position, array, source); in test()
20858 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
20860 Utils::replaceAllTokens("INDEX", index, source); in test()
20866 case Utils::Shader::GEOMETRY: in test()
20869 case Utils::Shader::FRAGMENT: in test()
20872 case Utils::Shader::VERTEX: in test()
20879 case Utils::Shader::TESS_CTRL: in test()
20882 case Utils::Shader::FRAGMENT: in test()
20885 case Utils::Shader::VERTEX: in test()
20892 case Utils::Shader::TESS_EVAL: in test()
20895 case Utils::Shader::FRAGMENT: in test()
20898 case Utils::Shader::TESS_CTRL: in test()
20901 case Utils::Shader::VERTEX: in test()
20908 case Utils::Shader::VERTEX: in test()
20911 case Utils::Shader::FRAGMENT: in test()
20938 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) << ", case: "; in test()
20988 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
20999 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::TESS_CTRL == stage) || in test()
21000 (Utils::Shader::FRAGMENT == stage)) in test()
21005 testCase test_case = { (CASES)c, (Utils::Shader::STAGES)stage }; in test()
21028 std::string XFBVariableStrideTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES st… in test()
21220 case Utils::Shader::GEOMETRY: in test()
21225 case Utils::Shader::TESS_CTRL: in test()
21230 case Utils::Shader::TESS_EVAL: in test()
21235 case Utils::Shader::VERTEX: in test()
21243 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
21245 Utils::replaceToken("SIZE", position, buffer, source); in test()
21246 Utils::replaceToken("ARRAY", position, array, source); in test()
21249 Utils::replaceToken("ARRAY", position, array, source); in test()
21251 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
21253 Utils::replaceAllTokens("TYPE", type_name, source); in test()
21254 Utils::replaceAllTokens("INDEX", index, source); in test()
21260 case Utils::Shader::GEOMETRY: in test()
21263 case Utils::Shader::FRAGMENT: in test()
21266 case Utils::Shader::VERTEX: in test()
21273 case Utils::Shader::TESS_CTRL: in test()
21276 case Utils::Shader::FRAGMENT: in test()
21279 case Utils::Shader::VERTEX: in test()
21286 case Utils::Shader::TESS_EVAL: in test()
21289 case Utils::Shader::FRAGMENT: in test()
21292 case Utils::Shader::TESS_CTRL: in test()
21295 case Utils::Shader::VERTEX: in test()
21302 case Utils::Shader::VERTEX: in test()
21305 case Utils::Shader::FRAGMENT: in test()
21332 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) in test()
21392 const Utils::Type& type = getType(i); in test()
21414 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
21416 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::TESS_CTRL == stage) || in test()
21417 (Utils::Shader::FRAGMENT == stage)) in test()
21422 testCase test_case = { (CASES)VALID, (Utils::Shader::STAGES)stage, type }; in test()
21446 std::string XFBBlockStrideTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES stage) in test()
21598 Utils::Shader::STAGES test_case = m_test_cases[test_case_index]; in test()
21610 case Utils::Shader::GEOMETRY: in test()
21619 case Utils::Shader::TESS_CTRL: in test()
21625 case Utils::Shader::TESS_EVAL: in test()
21630 case Utils::Shader::VERTEX: in test()
21638 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
21640 Utils::replaceToken("ARRAY", position, array, source); in test()
21641 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
21643 Utils::replaceAllTokens("INDEX", index, source); in test()
21649 case Utils::Shader::GEOMETRY: in test()
21652 case Utils::Shader::VERTEX: in test()
21659 case Utils::Shader::TESS_CTRL: in test()
21662 case Utils::Shader::VERTEX: in test()
21669 case Utils::Shader::TESS_EVAL: in test()
21672 case Utils::Shader::TESS_CTRL: in test()
21675 case Utils::Shader::VERTEX: in test()
21682 case Utils::Shader::VERTEX: in test()
21704 stream << "Stage: " << Utils::Shader::GetStageName(m_test_cases[test_case_index]); in test()
21724 bool XFBBlockStrideTest::inspectProgram(Utils::Program& program) in test()
21742 const std::string& gs_source = getShaderSource(test_case_index, Utils::Shader::GEOMETRY); in test()
21743 Utils::Program program(m_context); in test()
21744 const std::string& tcs_source = getShaderSource(test_case_index, Utils::Shader::TESS_CTRL); in test()
21745 const std::string& tes_source = getShaderSource(test_case_index, Utils::Shader::TESS_EVAL); in test()
21747 const std::string& vs_source = getShaderSource(test_case_index, Utils::Shader::VERTEX); in test()
21761 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
21763 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::TESS_CTRL == stage) || in test()
21764 (Utils::Shader::FRAGMENT == stage)) in test()
21769 m_test_cases.push_back((Utils::Shader::STAGES)stage); in test()
21792 const Utils::Type& vec4 = Utils::Type::vec4; in test()
21806 uniform.m_target = Utils::Buffer::Uniform; in test()
21807 xfb.m_target = Utils::Buffer::Transform_feedback; in test()
21844 void XFBBlockMemberStrideTest::getShaderBody(GLuint /* test_case_index */, Utils::Shader::STAGES st… in test()
21857 case Utils::Shader::FRAGMENT: in test()
21860 case Utils::Shader::GEOMETRY: in test()
21876 void XFBBlockMemberStrideTest::getShaderInterface(GLuint /* test_case_index */, Utils::Shader::STAG… in test()
21898 case Utils::Shader::FRAGMENT: in test()
21901 case Utils::Shader::GEOMETRY: in test()
21918 bool XFBBlockMemberStrideTest::inspectProgram(GLuint /* test_case_index*/, Utils::Program& program, in test()
21961 std::string XFBDuplicatedStrideTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES … in test()
22132 case Utils::Shader::GEOMETRY: in test()
22135 case Utils::Shader::TESS_CTRL: in test()
22138 case Utils::Shader::TESS_EVAL: in test()
22141 case Utils::Shader::VERTEX: in test()
22148 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
22149 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
22155 case Utils::Shader::GEOMETRY: in test()
22158 case Utils::Shader::FRAGMENT: in test()
22161 case Utils::Shader::VERTEX: in test()
22168 case Utils::Shader::TESS_CTRL: in test()
22171 case Utils::Shader::FRAGMENT: in test()
22174 case Utils::Shader::VERTEX: in test()
22181 case Utils::Shader::TESS_EVAL: in test()
22184 case Utils::Shader::FRAGMENT: in test()
22187 case Utils::Shader::TESS_CTRL: in test()
22190 case Utils::Shader::VERTEX: in test()
22197 case Utils::Shader::VERTEX: in test()
22200 case Utils::Shader::FRAGMENT: in test()
22227 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) << ", case: "; in test()
22284 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
22286 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::TESS_CTRL == stage) || in test()
22287 (Utils::Shader::FRAGMENT == stage)) in test()
22292 testCase test_case = { (CASES)c, (Utils::Shader::STAGES)stage }; in test()
22316 std::string XFBGetProgramResourceAPITest::getShaderSource(GLuint test_case_index, Utils::Shader::ST… in test()
22472 case Utils::Shader::GEOMETRY: in test()
22479 case Utils::Shader::TESS_CTRL: in test()
22485 case Utils::Shader::TESS_EVAL: in test()
22490 case Utils::Shader::VERTEX: in test()
22498 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
22502 Utils::replaceToken("SIZE", position, buffer, source); in test()
22504 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
22506 Utils::replaceAllTokens("ARRAY", array, source); in test()
22507 Utils::replaceAllTokens("INDEX", index, source); in test()
22508 Utils::replaceAllTokens("TYPE", type_name, source); in test()
22529 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) in test()
22566 bool XFBGetProgramResourceAPITest::inspectProgram(glw::GLuint test_case_index, Utils::Program& prog… in test()
22641 void XFBGetProgramResourceAPITest::insertSkipComponents(int num_components, Utils::Program::NameVec… in test()
22673 const std::string& gs_source = getShaderSource(test_case_index, Utils::Shader::GEOMETRY); in test()
22674 Utils::Program program(m_context); in test()
22675 const std::string& tcs_source = getShaderSource(test_case_index, Utils::Shader::TESS_CTRL); in test()
22676 const std::string& tes_source = getShaderSource(test_case_index, Utils::Shader::TESS_EVAL); in test()
22679 const std::string& vs_source = getShaderSource(test_case_index, Utils::Shader::VERTEX); in test()
22695 Utils::Program::NameVector captured_varyings; in test()
22712 Utils::Program::NameVector captured_varyings; in test()
22769 const Utils::Type& type = getType(i); in test()
22774 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
22779 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::TESS_CTRL == stage) || in test()
22780 (Utils::Shader::FRAGMENT == stage)) in test()
22785 test_Case test_case_int = { INTERLEAVED, (Utils::Shader::STAGES)stage, type }; in test()
22786 test_Case test_case_sep = { SEPARATED, (Utils::Shader::STAGES)stage, type }; in test()
22787 test_Case test_case_xfb = { XFB, (Utils::Shader::STAGES)stage, type }; in test()
22822 const Utils::Type& type = getType(test_case_index); in test()
22836 uniform.m_target = Utils::Buffer::Uniform; in test()
22837 xfb.m_target = Utils::Buffer::Transform_feedback; in test()
22840 const GLuint gen_start = Utils::s_rand; in test()
22845 Utils::s_rand = gen_start; in test()
22879 Utils::Program::NameVector& captured_varyings, in test()
22887 Utils::Type type = getType(test_case_index); in test()
22899 void XFBOverrideQualifiersWithAPITest::getShaderBody(GLuint test_case_index, Utils::Shader::STAGES … in test()
22916 case Utils::Shader::FRAGMENT: in test()
22919 case Utils::Shader::GEOMETRY: in test()
22928 if (Utils::Shader::FRAGMENT == stage) in test()
22930 const Utils::Type& type = getType(test_case_index); in test()
22932 Utils::replaceAllTokens("TYPE", type.GetGLSLTypeName(), out_assignments); in test()
22942 void XFBOverrideQualifiersWithAPITest::getShaderInterface(GLuint test_case_index, Utils::Shader::ST… in test()
22971 const Utils::Type& type = getType(test_case_index); in test()
22975 case Utils::Shader::FRAGMENT: in test()
22978 case Utils::Shader::GEOMETRY: in test()
22986 if (Utils::Shader::GEOMETRY == stage) in test()
22994 Utils::replaceToken("SIZE", position, buffer, out_interface); in test()
22997 Utils::replaceAllTokens("TYPE", type.GetGLSLTypeName(), out_interface); in test()
23028 bool XFBOverrideQualifiersWithAPITest::inspectProgram(GLuint test_case_index, Utils::Program& progr… in test()
23032 const Utils::Type& type = getType(test_case_index); in test()
23067 const Utils::Type& type = Utils::Type::vec4; in test()
23085 uniform.m_target = Utils::Buffer::Uniform; in test()
23086 xfb_1.m_target = Utils::Buffer::Transform_feedback; in test()
23087 xfb_2.m_target = Utils::Buffer::Transform_feedback; in test()
23088 xfb_3.m_target = Utils::Buffer::Transform_feedback; in test()
23143 void XFBVertexStreamsTest::getShaderBody(GLuint /* test_case_index */, Utils::Shader::STAGES stage, in test()
23169 case Utils::Shader::FRAGMENT: in test()
23172 case Utils::Shader::GEOMETRY: in test()
23188 void XFBVertexStreamsTest::getShaderInterface(GLuint /* test_case_index */, Utils::Shader::STAGES s… in test()
23221 case Utils::Shader::FRAGMENT: in test()
23224 case Utils::Shader::GEOMETRY: in test()
23251 std::string XFBMultipleVertexStreamsTest::getShaderSource(GLuint /* test_case_index */, Utils::Shad… in test()
23322 if (Utils::Shader::GEOMETRY == stage) in test()
23328 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
23329 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
23335 case Utils::Shader::FRAGMENT: in test()
23338 case Utils::Shader::VERTEX: in test()
23377 std::string XFBExceedBufferLimitTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES… in test()
23570 case Utils::Shader::GEOMETRY: in test()
23575 case Utils::Shader::TESS_CTRL: in test()
23580 case Utils::Shader::TESS_EVAL: in test()
23585 case Utils::Shader::VERTEX: in test()
23593 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
23595 Utils::replaceToken("BUFFER", position, buffer, source); in test()
23598 Utils::replaceToken("ARRAY", position, array, source); in test()
23600 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
23602 Utils::replaceAllTokens("INDEX", index, source); in test()
23608 case Utils::Shader::GEOMETRY: in test()
23611 case Utils::Shader::FRAGMENT: in test()
23614 case Utils::Shader::VERTEX: in test()
23621 case Utils::Shader::TESS_CTRL: in test()
23624 case Utils::Shader::FRAGMENT: in test()
23627 case Utils::Shader::VERTEX: in test()
23634 case Utils::Shader::TESS_EVAL: in test()
23637 case Utils::Shader::FRAGMENT: in test()
23640 case Utils::Shader::TESS_CTRL: in test()
23643 case Utils::Shader::VERTEX: in test()
23650 case Utils::Shader::VERTEX: in test()
23653 case Utils::Shader::FRAGMENT: in test()
23680 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) << ", case: "; in test()
23727 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
23729 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::TESS_CTRL == stage) || in test()
23730 (Utils::Shader::FRAGMENT == stage)) in test()
23735 testCase test_case = { (CASES)c, (Utils::Shader::STAGES)stage }; in test()
23759 std::string XFBExceedOffsetLimitTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES… in test()
23957 case Utils::Shader::GEOMETRY: in test()
23962 case Utils::Shader::TESS_CTRL: in test()
23967 case Utils::Shader::TESS_EVAL: in test()
23972 case Utils::Shader::VERTEX: in test()
23980 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
23982 Utils::replaceToken("SIZE", position, buffer, source); in test()
23985 Utils::replaceToken("ARRAY", position, array, source); in test()
23987 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
23989 Utils::replaceAllTokens("INDEX", index, source); in test()
23995 case Utils::Shader::GEOMETRY: in test()
23998 case Utils::Shader::FRAGMENT: in test()
24001 case Utils::Shader::VERTEX: in test()
24008 case Utils::Shader::TESS_CTRL: in test()
24011 case Utils::Shader::FRAGMENT: in test()
24014 case Utils::Shader::VERTEX: in test()
24021 case Utils::Shader::TESS_EVAL: in test()
24024 case Utils::Shader::FRAGMENT: in test()
24027 case Utils::Shader::TESS_CTRL: in test()
24030 case Utils::Shader::VERTEX: in test()
24037 case Utils::Shader::VERTEX: in test()
24040 case Utils::Shader::FRAGMENT: in test()
24067 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) << ", case: "; in test()
24114 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
24116 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::TESS_CTRL == stage) || in test()
24117 (Utils::Shader::FRAGMENT == stage)) in test()
24122 testCase test_case = { (CASES)c, (Utils::Shader::STAGES)stage }; in test()
24147 const Utils::Type& type = m_test_cases[test_case_index].m_type; in test()
24163 uniform.m_target = Utils::Buffer::Uniform; in test()
24164 xfb_1.m_target = Utils::Buffer::Transform_feedback; in test()
24165 xfb_3.m_target = Utils::Buffer::Transform_feedback; in test()
24168 const GLuint gen_start = Utils::s_rand; in test()
24176 Utils::s_rand = gen_start; in test()
24225 std::string XFBGlobalBufferTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES stag… in test()
24364 Utils::replaceToken("SIZE", position, buffer, interface); in test()
24365 Utils::replaceAllTokens("TYPE", type_name, interface); in test()
24370 case Utils::Shader::GEOMETRY: in test()
24373 case Utils::Shader::TESS_EVAL: in test()
24376 case Utils::Shader::VERTEX: in test()
24387 Utils::replaceToken("INTERFACE", position, interface.c_str(), source); in test()
24388 Utils::replaceToken("ASSIGNMENTS", position, assignments.c_str(), source); in test()
24395 case Utils::Shader::GEOMETRY: in test()
24398 case Utils::Shader::FRAGMENT: in test()
24400 Utils::replaceAllTokens("TYPE", type_name, source); in test()
24402 case Utils::Shader::VERTEX: in test()
24409 case Utils::Shader::TESS_EVAL: in test()
24412 case Utils::Shader::FRAGMENT: in test()
24414 Utils::replaceAllTokens("TYPE", type_name, source); in test()
24416 case Utils::Shader::TESS_CTRL: in test()
24419 case Utils::Shader::VERTEX: in test()
24426 case Utils::Shader::VERTEX: in test()
24429 case Utils::Shader::FRAGMENT: in test()
24431 Utils::replaceAllTokens("TYPE", type_name, source); in test()
24458 name.append(Utils::Shader::GetStageName(test_case.m_stage)); in test()
24483 const Utils::Type& type = getType(i); in test()
24493 const _testCase test_cases[] = { { Utils::Shader::VERTEX, type }, in test()
24494 { Utils::Shader::GEOMETRY, type }, in test()
24495 { Utils::Shader::TESS_EVAL, type } }; in test()
24525 if (Utils::Shader::VERTEX == test_case.m_stage) in test()
24553 const Utils::Type& type = test_case.m_type; in test()
24567 uniform.m_target = Utils::Buffer::Uniform; in test()
24568 xfb.m_target = Utils::Buffer::Transform_feedback; in test()
24571 const GLuint rand_start = Utils::s_rand; in test()
24574 Utils::s_rand = rand_start; in test()
24585 …const GLuint xfb_data_size = (test_case.m_stage == Utils::Shader::VERTEX) ? xfb_type_size : xfb_ty… in test()
24600 if (test_case.m_stage == Utils::Shader::VERTEX) in test()
24618 void XFBStrideTest::getShaderBody(GLuint test_case_index, Utils::Shader::STAGES stage, std::string&… in test()
24638 case Utils::Shader::GEOMETRY: in test()
24641 case Utils::Shader::TESS_EVAL: in test()
24644 case Utils::Shader::VERTEX: in test()
24655 case Utils::Shader::FRAGMENT: in test()
24658 case Utils::Shader::GEOMETRY: in test()
24659 case Utils::Shader::TESS_CTRL: in test()
24660 case Utils::Shader::TESS_EVAL: in test()
24661 case Utils::Shader::VERTEX: in test()
24670 if (Utils::Shader::FRAGMENT == stage) in test()
24672 Utils::replaceAllTokens("TYPE", test_case.m_type.GetGLSLTypeName(), out_assignments); in test()
24682 void XFBStrideTest::getShaderInterface(GLuint test_case_index, Utils::Shader::STAGES stage, std::st… in test()
24701 case Utils::Shader::GEOMETRY: in test()
24704 case Utils::Shader::TESS_EVAL: in test()
24707 case Utils::Shader::VERTEX: in test()
24718 case Utils::Shader::FRAGMENT: in test()
24721 case Utils::Shader::GEOMETRY: in test()
24722 case Utils::Shader::TESS_CTRL: in test()
24723 case Utils::Shader::TESS_EVAL: in test()
24724 case Utils::Shader::VERTEX: in test()
24733 if (Utils::Type::Float != test_case.m_type.m_basic_type) in test()
24738 Utils::replaceAllTokens("FLAT", flat, out_interface); in test()
24739 Utils::replaceAllTokens("TYPE", test_case.m_type.GetGLSLTypeName(), out_interface); in test()
24749 std::string XFBStrideTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES stage) in test()
24756 case Utils::Shader::VERTEX: in test()
24759 case Utils::Shader::FRAGMENT: in test()
24760 case Utils::Shader::VERTEX: in test()
24768 case Utils::Shader::TESS_EVAL: in test()
24771 case Utils::Shader::FRAGMENT: in test()
24772 case Utils::Shader::TESS_CTRL: in test()
24773 case Utils::Shader::TESS_EVAL: in test()
24774 case Utils::Shader::VERTEX: in test()
24782 case Utils::Shader::GEOMETRY: in test()
24807 << ", stage: " << Utils::Shader::GetStageName(test_case.m_stage); in test()
24830 const Utils::Type& type = getType(i); in test()
24832 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
24834 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::FRAGMENT == stage) || in test()
24835 (Utils::Shader::TESS_CTRL == stage)) in test()
24840 testCase test_case = { (Utils::Shader::STAGES)stage, type }; in test()
24865 std::string XFBBlockMemberBufferTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES… in test()
25021 case Utils::Shader::GEOMETRY: in test()
25026 case Utils::Shader::TESS_CTRL: in test()
25031 case Utils::Shader::TESS_EVAL: in test()
25036 case Utils::Shader::VERTEX: in test()
25043 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
25045 Utils::replaceToken("ARRAY", position, array, source); in test()
25046 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
25048 Utils::replaceAllTokens("INDEX", index, source); in test()
25054 case Utils::Shader::GEOMETRY: in test()
25057 case Utils::Shader::FRAGMENT: in test()
25060 case Utils::Shader::VERTEX: in test()
25067 case Utils::Shader::TESS_CTRL: in test()
25070 case Utils::Shader::FRAGMENT: in test()
25073 case Utils::Shader::VERTEX: in test()
25080 case Utils::Shader::TESS_EVAL: in test()
25083 case Utils::Shader::FRAGMENT: in test()
25086 case Utils::Shader::TESS_CTRL: in test()
25089 case Utils::Shader::VERTEX: in test()
25096 case Utils::Shader::VERTEX: in test()
25099 case Utils::Shader::FRAGMENT: in test()
25126 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage); in test()
25156 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
25158 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::TESS_CTRL == stage) || in test()
25159 (Utils::Shader::FRAGMENT == stage)) in test()
25164 testCase test_case = { (Utils::Shader::STAGES)stage }; in test()
25187 std::string XFBOutputOverlappingTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES… in test()
25353 case Utils::Shader::GEOMETRY: in test()
25358 case Utils::Shader::TESS_CTRL: in test()
25363 case Utils::Shader::TESS_EVAL: in test()
25368 case Utils::Shader::VERTEX: in test()
25375 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
25377 Utils::replaceToken("OFFSET", position, buffer_gohan, source); in test()
25378 Utils::replaceToken("TYPE", position, type_name, source); in test()
25379 Utils::replaceToken("ARRAY", position, array, source); in test()
25380 Utils::replaceToken("OFFSET", position, buffer_goten, source); in test()
25381 Utils::replaceToken("TYPE", position, type_name, source); in test()
25382 Utils::replaceToken("ARRAY", position, array, source); in test()
25384 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
25386 Utils::replaceToken("INDEX", position, index, source); in test()
25387 Utils::replaceToken("TYPE", position, type_name, source); in test()
25388 Utils::replaceToken("INDEX", position, index, source); in test()
25389 Utils::replaceToken("TYPE", position, type_name, source); in test()
25390 Utils::replaceToken("INDEX", position, index, source); in test()
25391 Utils::replaceToken("TYPE", position, type_name, source); in test()
25392 Utils::replaceToken("INDEX", position, index, source); in test()
25393 Utils::replaceToken("TYPE", position, type_name, source); in test()
25399 case Utils::Shader::GEOMETRY: in test()
25402 case Utils::Shader::FRAGMENT: in test()
25405 case Utils::Shader::VERTEX: in test()
25412 case Utils::Shader::TESS_CTRL: in test()
25415 case Utils::Shader::FRAGMENT: in test()
25418 case Utils::Shader::VERTEX: in test()
25425 case Utils::Shader::TESS_EVAL: in test()
25428 case Utils::Shader::FRAGMENT: in test()
25431 case Utils::Shader::TESS_CTRL: in test()
25434 case Utils::Shader::VERTEX: in test()
25441 case Utils::Shader::VERTEX: in test()
25444 case Utils::Shader::FRAGMENT: in test()
25471 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) in test()
25507 const Utils::Type& type = getType(i); in test()
25508 const GLuint base_alingment = Utils::Type::GetTypeSize(type.m_basic_type); in test()
25520 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
25522 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::TESS_CTRL == stage) || in test()
25523 (Utils::Shader::FRAGMENT == stage)) in test()
25529 (Utils::Shader::STAGES)stage, type }; in test()
25553 std::string XFBInvalidOffsetAlignmentTest::getShaderSource(GLuint test_case_index, Utils::Shader::S… in test()
25714 case Utils::Shader::GEOMETRY: in test()
25719 case Utils::Shader::TESS_CTRL: in test()
25724 case Utils::Shader::TESS_EVAL: in test()
25729 case Utils::Shader::VERTEX: in test()
25736 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
25738 Utils::replaceToken("OFFSET", position, buffer, source); in test()
25739 Utils::replaceToken("TYPE", position, type_name, source); in test()
25740 Utils::replaceToken("ARRAY", position, array, source); in test()
25742 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
25744 Utils::replaceToken("INDEX", position, index, source); in test()
25745 Utils::replaceToken("TYPE", position, type_name, source); in test()
25746 Utils::replaceToken("INDEX", position, index, source); in test()
25747 Utils::replaceToken("TYPE", position, type_name, source); in test()
25753 case Utils::Shader::GEOMETRY: in test()
25756 case Utils::Shader::FRAGMENT: in test()
25759 case Utils::Shader::VERTEX: in test()
25766 case Utils::Shader::TESS_CTRL: in test()
25769 case Utils::Shader::FRAGMENT: in test()
25772 case Utils::Shader::VERTEX: in test()
25779 case Utils::Shader::TESS_EVAL: in test()
25782 case Utils::Shader::FRAGMENT: in test()
25785 case Utils::Shader::TESS_CTRL: in test()
25788 case Utils::Shader::VERTEX: in test()
25795 case Utils::Shader::VERTEX: in test()
25798 case Utils::Shader::FRAGMENT: in test()
25825 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage) in test()
25860 const Utils::Type& type = getType(i); in test()
25861 const GLuint base_alingment = Utils::Type::GetTypeSize(type.m_basic_type); in test()
25863 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
25865 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::TESS_CTRL == stage) || in test()
25866 (Utils::Shader::FRAGMENT == stage)) in test()
25873 testCase test_case = { offset, (Utils::Shader::STAGES)stage, type }; in test()
25931 const Utils::Type& type = Utils::Type::vec4; in test()
25945 uniform.m_target = Utils::Buffer::Uniform; in test()
25946 xfb.m_target = Utils::Buffer::Transform_feedback; in test()
25980 void XFBCaptureInactiveOutputVariableTest::getShaderBody(GLuint test_case_index, Utils::Shader::STA… in test()
25993 case Utils::Shader::FRAGMENT: in test()
25997 case Utils::Shader::GEOMETRY: in test()
26004 case Utils::Shader::TESS_CTRL: in test()
26007 case Utils::Shader::TESS_EVAL: in test()
26014 case Utils::Shader::VERTEX: in test()
26034 void XFBCaptureInactiveOutputVariableTest::getShaderInterface(GLuint test_case_index, Utils::Shader… in test()
26056 case Utils::Shader::FRAGMENT: in test()
26060 case Utils::Shader::GEOMETRY: in test()
26067 case Utils::Shader::TESS_CTRL: in test()
26070 case Utils::Shader::TESS_EVAL: in test()
26077 case Utils::Shader::VERTEX: in test()
26098 std::string XFBCaptureInactiveOutputVariableTest::getShaderSource(GLuint test_case_index, Utils::Sh… in test()
26107 case Utils::Shader::FRAGMENT: in test()
26108 case Utils::Shader::VERTEX: in test()
26119 case Utils::Shader::FRAGMENT: in test()
26120 case Utils::Shader::TESS_CTRL: in test()
26121 case Utils::Shader::TESS_EVAL: in test()
26122 case Utils::Shader::VERTEX: in test()
26188 bool XFBCaptureInactiveOutputVariableTest::inspectProgram(GLuint /* test_case_index */, Utils::Prog… in test()
26192 const Utils::Type& type = Utils::Type::vec4; in test()
26219 Utils::Buffer* buffer = pair.m_buffer; in test()
26224 GLubyte* buffer_data = (GLubyte*)buffer->Map(Utils::Buffer::ReadOnly); in test()
26238 …<< tcu::TestLog::Message << "Invalid result. Buffer: " << Utils::Buffer::GetBufferName(descriptor-… in test()
26300 const Utils::Type& type = Utils::Type::vec4; in test()
26314 uniform.m_target = Utils::Buffer::Uniform; in test()
26315 xfb.m_target = Utils::Buffer::Transform_feedback; in test()
26327 const GLuint comp_size = Utils::Type::GetTypeSize(type.m_basic_type); in test()
26387 void XFBCaptureInactiveOutputComponentTest::getShaderBody(GLuint test_case_index, Utils::Shader::ST… in test()
26410 case Utils::Shader::FRAGMENT: in test()
26414 case Utils::Shader::GEOMETRY: in test()
26421 case Utils::Shader::TESS_CTRL: in test()
26424 case Utils::Shader::TESS_EVAL: in test()
26431 case Utils::Shader::VERTEX: in test()
26451 void XFBCaptureInactiveOutputComponentTest::getShaderInterface(GLuint test_case_index, Utils::Shade… in test()
26490 case Utils::Shader::FRAGMENT: in test()
26494 case Utils::Shader::GEOMETRY: in test()
26501 case Utils::Shader::TESS_CTRL: in test()
26504 case Utils::Shader::TESS_EVAL: in test()
26511 case Utils::Shader::VERTEX: in test()
26532 std::string XFBCaptureInactiveOutputComponentTest::getShaderSource(GLuint test_case_index, Utils::S… in test()
26541 case Utils::Shader::FRAGMENT: in test()
26542 case Utils::Shader::VERTEX: in test()
26553 case Utils::Shader::FRAGMENT: in test()
26554 case Utils::Shader::TESS_CTRL: in test()
26555 case Utils::Shader::TESS_EVAL: in test()
26556 case Utils::Shader::VERTEX: in test()
26625 Utils::Buffer* buffer = pair.m_buffer; in test()
26630 GLubyte* buffer_data = (GLubyte*)buffer->Map(Utils::Buffer::ReadOnly); in test()
26676 …<< tcu::TestLog::Message << "Invalid result. Buffer: " << Utils::Buffer::GetBufferName(descriptor-… in test()
26738 const Utils::Type& type = Utils::Type::vec4; in test()
26752 uniform.m_target = Utils::Buffer::Uniform; in test()
26753 xfb.m_target = Utils::Buffer::Transform_feedback; in test()
26787 void XFBCaptureInactiveOutputBlockMemberTest::getShaderBody(GLuint test_case_index, Utils::Shader::… in test()
26800 case Utils::Shader::FRAGMENT: in test()
26804 case Utils::Shader::GEOMETRY: in test()
26811 case Utils::Shader::TESS_CTRL: in test()
26814 case Utils::Shader::TESS_EVAL: in test()
26821 case Utils::Shader::VERTEX: in test()
26841 void XFBCaptureInactiveOutputBlockMemberTest::getShaderInterface(GLuint test_case_index, Utils::Sha… in test()
26867 case Utils::Shader::FRAGMENT: in test()
26871 case Utils::Shader::GEOMETRY: in test()
26878 case Utils::Shader::TESS_CTRL: in test()
26881 case Utils::Shader::TESS_EVAL: in test()
26888 case Utils::Shader::VERTEX: in test()
26910 Utils::Shader::STAGES stage) in test()
26919 case Utils::Shader::FRAGMENT: in test()
26920 case Utils::Shader::VERTEX: in test()
26931 case Utils::Shader::FRAGMENT: in test()
26932 case Utils::Shader::TESS_CTRL: in test()
26933 case Utils::Shader::TESS_EVAL: in test()
26934 case Utils::Shader::VERTEX: in test()
27003 Utils::Buffer* buffer = pair.m_buffer; in test()
27008 GLubyte* buffer_data = (GLubyte*)buffer->Map(Utils::Buffer::ReadOnly); in test()
27023 …<< tcu::TestLog::Message << "Invalid result. Buffer: " << Utils::Buffer::GetBufferName(descriptor-… in test()
27084 const Utils::Type& type = Utils::Type::vec4; in test()
27098 uniform.m_target = Utils::Buffer::Uniform; in test()
27099 xfb.m_target = Utils::Buffer::Transform_feedback; in test()
27133 void XFBCaptureStructTest::getShaderBody(GLuint test_case_index, Utils::Shader::STAGES stage, in test()
27146 case Utils::Shader::FRAGMENT: in test()
27150 case Utils::Shader::GEOMETRY: in test()
27157 case Utils::Shader::TESS_CTRL: in test()
27160 case Utils::Shader::TESS_EVAL: in test()
27167 case Utils::Shader::VERTEX: in test()
27187 void XFBCaptureStructTest::getShaderInterface(GLuint test_case_index, Utils::Shader::STAGES stage, in test()
27218 case Utils::Shader::FRAGMENT: in test()
27222 case Utils::Shader::GEOMETRY: in test()
27229 case Utils::Shader::TESS_CTRL: in test()
27232 case Utils::Shader::TESS_EVAL: in test()
27239 case Utils::Shader::VERTEX: in test()
27260 std::string XFBCaptureStructTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAGES sta… in test()
27269 case Utils::Shader::FRAGMENT: in test()
27270 case Utils::Shader::VERTEX: in test()
27281 case Utils::Shader::FRAGMENT: in test()
27282 case Utils::Shader::TESS_CTRL: in test()
27283 case Utils::Shader::TESS_EVAL: in test()
27284 case Utils::Shader::VERTEX: in test()
27353 Utils::Buffer* buffer = pair.m_buffer; in test()
27358 GLubyte* buffer_data = (GLubyte*)buffer->Map(Utils::Buffer::ReadOnly); in test()
27373 …<< tcu::TestLog::Message << "Invalid result. Buffer: " << Utils::Buffer::GetBufferName(descriptor-… in test()
27402 std::string XFBCaptureUnsizedArrayTest::getShaderSource(GLuint test_case_index, Utils::Shader::STAG… in test()
27554 case Utils::Shader::GEOMETRY: in test()
27559 case Utils::Shader::TESS_CTRL: in test()
27564 case Utils::Shader::TESS_EVAL: in test()
27569 case Utils::Shader::VERTEX: in test()
27576 Utils::replaceToken("VAR_DEFINITION", position, var_definition, source); in test()
27578 Utils::replaceToken("ARRAY", position, array, source); in test()
27579 Utils::replaceToken("VARIABLE_USE", position, var_use, source); in test()
27581 Utils::replaceAllTokens("INDEX", index, source); in test()
27587 case Utils::Shader::GEOMETRY: in test()
27590 case Utils::Shader::FRAGMENT: in test()
27593 case Utils::Shader::VERTEX: in test()
27600 case Utils::Shader::TESS_CTRL: in test()
27603 case Utils::Shader::FRAGMENT: in test()
27606 case Utils::Shader::VERTEX: in test()
27613 case Utils::Shader::TESS_EVAL: in test()
27616 case Utils::Shader::FRAGMENT: in test()
27619 case Utils::Shader::TESS_CTRL: in test()
27622 case Utils::Shader::VERTEX: in test()
27629 case Utils::Shader::VERTEX: in test()
27632 case Utils::Shader::FRAGMENT: in test()
27659 stream << "Stage: " << Utils::Shader::GetStageName(test_case.m_stage); in test()
27689 for (GLuint stage = 0; stage < Utils::Shader::STAGE_MAX; ++stage) in test()
27692 if ((Utils::Shader::COMPUTE == stage) || (Utils::Shader::FRAGMENT == stage) || in test()
27693 (Utils::Shader::GEOMETRY == stage) || (Utils::Shader::TESS_EVAL == stage)) in test()
27698 testCase test_case = { (Utils::Shader::STAGES)stage }; in test()