blob: 7874daf12e5b926c85cae9d32e9df3d644de7584 [file] [log] [blame]
SKIP: FAILED
../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: buf0 = struct @align(8) {
injectionSwitch:vec2<f32> @offset(0)
}
main_out = struct @align(16) {
x_GLF_color_1:vec4<f32> @offset(0), @location(0)
}
$B1: { # root
%x_9:ptr<uniform, buf0, read> = var @binding_point(0, 0)
%gl_FragCoord:ptr<private, vec4<f32>, read_write> = var
%x_GLF_color:ptr<private, vec4<f32>, read_write> = var
}
%main_1 = func():void {
$B2: {
%x_43:ptr<function, f32, read_write> = var
%x_44:ptr<function, f32, read_write> = var
%x_45:ptr<function, f32, read_write> = var
%x_46:ptr<function, i32, read_write> = var
%zero:ptr<function, i32, read_write> = var
%param:ptr<function, vec2<f32>, read_write> = var
%temp:ptr<function, vec2<f32>, read_write> = var
%12:vec4<f32> = load %gl_FragCoord
%x_47:vec4<f32> = let %12
%14:f32 = access %x_47, 0u
%15:f32 = access %x_47, 1u
%16:vec2<f32> = construct %14, %15
store %param, %16
loop [b: $B3] { # loop_1
$B3: { # body
%17:f32 = load_vector_element %param, 1u
%x_54:f32 = let %17
%19:bool = lt %x_54, 50.0f
if %19 [t: $B4, f: $B5] { # if_1
$B4: { # true
%20:ptr<uniform, vec2<f32>, read> = access %x_9, 0u
%21:f32 = load_vector_element %20, 1u
%x_60:f32 = let %21
store %x_44, %x_60
exit_if # if_1
}
$B5: { # false
store %x_44, 0.0f
exit_if # if_1
}
}
%23:f32 = load %x_44
%x_61:f32 = let %23
store %x_43, %x_61
%25:f32 = load_vector_element %gl_FragCoord, 1u
%x_63:f32 = let %25
%27:bool = lt %x_63, 50.0f
%28:f32 = select 0.0f, 1.0f, %27
%x_65:f32 = let %28
store %x_45, %x_65
%30:f32 = sub %x_61, %x_65
%31:bool = lt %30, 1.0f
if %31 [t: $B6] { # if_2
$B6: { # true
store %x_46, 0i
exit_loop # loop_1
}
}
store %x_46, 1i
exit_loop # loop_1
}
}
%32:i32 = load %x_46
%x_70:i32 = let %32
store %zero, %x_70
%34:bool = eq %x_70, 1i
if %34 [t: $B7] { # if_3
$B7: { # true
ret
}
}
store %x_GLF_color, vec4<f32>(0.0f, 1.0f, 1.0f, 1.0f)
%35:f32 = load_vector_element %gl_FragCoord, 0u
%x_75:f32 = let %35
%37:ptr<uniform, vec2<f32>, read> = access %x_9, 0u
%38:f32 = load_vector_element %37, 0u
%x_77:f32 = let %38
%40:bool = gte %x_75, %x_77
if %40 [t: $B8] { # if_4
$B8: { # true
%41:f32 = load_vector_element %gl_FragCoord, 1u
%x_82:f32 = let %41
%43:bool = gte %x_82, 0.0f
if %43 [t: $B9] { # if_5
$B9: { # true
%44:ptr<uniform, vec2<f32>, read> = access %x_9, 0u
%45:f32 = load_vector_element %44, 1u
%x_87:f32 = let %45
store_vector_element %x_GLF_color, 0u, %x_87
exit_if # if_5
}
}
exit_if # if_4
}
}
%47:f32 = load_vector_element %gl_FragCoord, 1u
%x_90:f32 = let %47
%49:bool = gte %x_90, 0.0f
if %49 [t: $B10] { # if_6
$B10: { # true
%50:ptr<uniform, vec2<f32>, read> = access %x_9, 0u
%51:f32 = load_vector_element %50, 0u
%x_95:f32 = let %51
store_vector_element %x_GLF_color, 1u, %x_95
exit_if # if_6
}
}
%53:vec4<f32> = load %gl_FragCoord
%x_97:vec4<f32> = let %53
%55:f32 = access %x_97, 0u
%56:f32 = access %x_97, 1u
%57:vec2<f32> = construct %55, %56
%x_98:vec2<f32> = let %57
%59:f32 = access %x_98, 0u
%60:f32 = access %x_98, 1u
%61:vec2<f32> = construct %59, %60
%x_101:vec2<f32> = let %61
store %temp, %x_101
%63:f32 = access %x_101, 1u
%64:bool = gte %63, 0.0f
if %64 [t: $B11] { # if_7
$B11: { # true
%65:ptr<uniform, vec2<f32>, read> = access %x_9, 0u
%66:f32 = load_vector_element %65, 0u
%x_107:f32 = let %66
store_vector_element %x_GLF_color, 2u, %x_107
exit_if # if_7
}
}
ret
}
}
%tint_symbol = @fragment func(%gl_FragCoord_param:vec4<f32> [@position]):main_out {
$B12: {
store %gl_FragCoord, %gl_FragCoord_param
%70:void = call %main_1
%71:vec4<f32> = load %x_GLF_color
%72:main_out = construct %71
ret %72
}
}
%alwaysZero_vf2_ = func(%coord:ptr<function, vec2<f32>, read_write>):i32 {
$B13: {
%a:ptr<function, f32, read_write> = var
%x_110:ptr<function, f32, read_write> = var
%b:ptr<function, f32, read_write> = var
%78:f32 = load_vector_element %coord, 1u
%x_112:f32 = let %78
%80:bool = lt %x_112, 50.0f
if %80 [t: $B14, f: $B15] { # if_8
$B14: { # true
%81:ptr<uniform, vec2<f32>, read> = access %x_9, 0u
%82:f32 = load_vector_element %81, 1u
%x_118:f32 = let %82
store %x_110, %x_118
exit_if # if_8
}
$B15: { # false
store %x_110, 0.0f
exit_if # if_8
}
}
%84:f32 = load %x_110
%x_119:f32 = let %84
store %a, %x_119
%86:f32 = load_vector_element %gl_FragCoord, 1u
%x_121:f32 = let %86
%88:bool = lt %x_121, 50.0f
%89:f32 = select 0.0f, 1.0f, %88
%x_123:f32 = let %89
store %b, %x_123
%91:f32 = sub %x_119, %x_123
%92:bool = lt %91, 1.0f
if %92 [t: $B16] { # if_9
$B16: { # true
ret 0i
}
}
ret 1i
}
}
unhandled variable address space
********************************************************************
* The tint shader compiler has encountered an unexpected error. *
* *
* Please help us fix this issue by submitting a bug report at *
* crbug.com/tint with the source program that triggered the bug. *
********************************************************************