66 (v_ret).m_shader = glslang_shader_create(inp);
67 (v_ret).m_programme = glslang_program_create();
69 assert(((v_ret).m_shader && (v_ret).m_programme) &&
"initiating has failed.");
70 if(!(v_ret).m_shader) {
74 (v_ret_isgood) = glslang_shader_preprocess((v_ret).m_shader, inp);
75 assert((v_ret_isgood) &&
"GLSL preprocessing failed.");
80 (v_ret_isgood) = glslang_shader_parse((v_ret).m_shader, inp);
81 assert((v_ret_isgood) &&
"GLSL parsing failed.");
86 glslang_program_add_shader(
91 (v_ret_isgood) = glslang_program_link(
96 (v_ret_isgood) = glslang_shader_parse((v_ret).m_shader, inp);
97 assert((v_ret_isgood) &&
"GLSL linking failed.");
102 glslang_program_SPIRV_generate((v_ret).m_programme, (inp)->stage);
103 (v_ret).m_spirv_words = glslang_program_SPIRV_get_ptr((v_ret).m_programme);
104 (v_ret).m_spirv_sz = glslang_program_SPIRV_get_size((v_ret).m_programme);
106 assert((v_ret).m_spirv_words);
107 assert((v_ret).m_spirv_sz);