tcu::StringTemplate tessControlShaderBoilerplate(
"OpCapability Tessellation\n"
"OpMemoryModel Logical GLSL450\n"
tcu::StringTemplate tessControlShaderBoilerplate(
"OpCapability Tessellation\n"
"OpMemoryModel Logical GLSL450\n"
"OpName %BP_in_color \"in_color\"\n"
"OpName %BP_out_position \"out_position\"\n"
"OpName %BP_in_position \"in_position\"\n"
"OpName %BP_in_color \"in_color\"\n"
"OpName %BP_out_position \"out_position\"\n"
"OpName %BP_in_position \"in_position\"\n"
- "OpName %BP_gl_TessCoordOuter \"gl_TessLevelOuter\"\n"
- "OpName %BP_gl_TessCoordInner \"gl_TessLevelInner\"\n"
+ "OpName %BP_gl_TessLevelOuter \"gl_TessLevelOuter\"\n"
+ "OpName %BP_gl_TessLevelInner \"gl_TessLevelInner\"\n"
"OpName %test_code \"testfun(vf4;\"\n"
"OpDecorate %BP_out_color Location 1\n"
"OpDecorate %BP_gl_InvocationID BuiltIn InvocationId\n"
"OpDecorate %BP_in_color Location 1\n"
"OpDecorate %BP_out_position Location 2\n"
"OpDecorate %BP_in_position Location 2\n"
"OpName %test_code \"testfun(vf4;\"\n"
"OpDecorate %BP_out_color Location 1\n"
"OpDecorate %BP_gl_InvocationID BuiltIn InvocationId\n"
"OpDecorate %BP_in_color Location 1\n"
"OpDecorate %BP_out_position Location 2\n"
"OpDecorate %BP_in_position Location 2\n"
- "OpDecorate %BP_gl_TessCoordOuter Patch\n"
- "OpDecorate %BP_gl_TessCoordOuter BuiltIn TessLevelOuter\n"
- "OpDecorate %BP_gl_TessCoordInner Patch\n"
- "OpDecorate %BP_gl_TessCoordInner BuiltIn TessLevelInner\n"
+ "OpDecorate %BP_gl_TessLevelOuter Patch\n"
+ "OpDecorate %BP_gl_TessLevelOuter BuiltIn TessLevelOuter\n"
+ "OpDecorate %BP_gl_TessLevelInner Patch\n"
+ "OpDecorate %BP_gl_TessLevelInner BuiltIn TessLevelInner\n"
"%BP_in_color = OpVariable %ip_a32v4f32 Input\n"
"%BP_out_position = OpVariable %op_a3v4f32 Output\n"
"%BP_in_position = OpVariable %ip_a32v4f32 Input\n"
"%BP_in_color = OpVariable %ip_a32v4f32 Input\n"
"%BP_out_position = OpVariable %op_a3v4f32 Output\n"
"%BP_in_position = OpVariable %ip_a32v4f32 Input\n"
- "%BP_gl_TessCoordOuter = OpVariable %op_a4f32 Output\n"
- "%BP_gl_TessCoordInner = OpVariable %op_a2f32 Output\n"
+ "%BP_gl_TessLevelOuter = OpVariable %op_a4f32 Output\n"
+ "%BP_gl_TessLevelInner = OpVariable %op_a2f32 Output\n"
"OpBranchConditional %BP_is_first_invocation %BP_first_invocation %BP_merge_label\n"
"%BP_first_invocation = OpLabel\n"
"OpBranchConditional %BP_is_first_invocation %BP_first_invocation %BP_merge_label\n"
"%BP_first_invocation = OpLabel\n"
- "%BP_tess_outer_0 = OpAccessChain %op_f32 %BP_gl_TessCoordOuter %c_i32_0\n"
- "%BP_tess_outer_1 = OpAccessChain %op_f32 %BP_gl_TessCoordOuter %c_i32_1\n"
- "%BP_tess_outer_2 = OpAccessChain %op_f32 %BP_gl_TessCoordOuter %c_i32_2\n"
- "%BP_tess_inner = OpAccessChain %op_f32 %BP_gl_TessCoordInner %c_i32_0\n"
+ "%BP_tess_outer_0 = OpAccessChain %op_f32 %BP_gl_TessLevelOuter %c_i32_0\n"
+ "%BP_tess_outer_1 = OpAccessChain %op_f32 %BP_gl_TessLevelOuter %c_i32_1\n"
+ "%BP_tess_outer_2 = OpAccessChain %op_f32 %BP_gl_TessLevelOuter %c_i32_2\n"
+ "%BP_tess_inner = OpAccessChain %op_f32 %BP_gl_TessLevelInner %c_i32_0\n"