blob: 25f17fd3c859edfa6e79de1b6069eae13a235185 [file] [log] [blame]
SKIP: FAILED
../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: Inner = struct @align(4) {
scalar_i32:i32 @offset(0)
scalar_f32:f32 @offset(4)
}
S = struct @align(16) {
scalar_f32:f32 @offset(0)
scalar_i32:i32 @offset(4)
scalar_u32:u32 @offset(8)
vec2_f32:vec2<f32> @offset(16)
vec2_i32:vec2<i32> @offset(24)
vec2_u32:vec2<u32> @offset(32)
vec3_f32:vec3<f32> @offset(48)
vec3_i32:vec3<i32> @offset(64)
vec3_u32:vec3<u32> @offset(80)
vec4_f32:vec4<f32> @offset(96)
vec4_i32:vec4<i32> @offset(112)
vec4_u32:vec4<u32> @offset(128)
mat2x2_f32:mat2x2<f32> @offset(144)
mat2x3_f32:mat2x3<f32> @offset(160)
mat2x4_f32:mat2x4<f32> @offset(192)
mat3x2_f32:mat3x2<f32> @offset(224)
mat3x3_f32:mat3x3<f32> @offset(256)
mat3x4_f32:mat3x4<f32> @offset(304)
mat4x2_f32:mat4x2<f32> @offset(352)
mat4x3_f32:mat4x3<f32> @offset(384)
mat4x4_f32:mat4x4<f32> @offset(448)
arr2_vec3_f32:array<vec3<f32>, 2> @offset(512)
struct_inner:Inner @offset(544)
array_struct_inner:array<Inner, 4> @offset(552)
}
$B1: { # root
%sb:ptr<storage, S, read_write> = var @binding_point(0, 0)
}
%tint_symbol = @compute @workgroup_size(1, 1, 1) func():void {
$B2: {
%3:ptr<storage, f32, read_write> = access %sb, 0u
store %3, 0.0f
%4:ptr<storage, i32, read_write> = access %sb, 1u
store %4, 0i
%5:ptr<storage, u32, read_write> = access %sb, 2u
store %5, 0u
%6:ptr<storage, vec2<f32>, read_write> = access %sb, 3u
store %6, vec2<f32>(0.0f)
%7:ptr<storage, vec2<i32>, read_write> = access %sb, 4u
store %7, vec2<i32>(0i)
%8:ptr<storage, vec2<u32>, read_write> = access %sb, 5u
store %8, vec2<u32>(0u)
%9:ptr<storage, vec3<f32>, read_write> = access %sb, 6u
store %9, vec3<f32>(0.0f)
%10:ptr<storage, vec3<i32>, read_write> = access %sb, 7u
store %10, vec3<i32>(0i)
%11:ptr<storage, vec3<u32>, read_write> = access %sb, 8u
store %11, vec3<u32>(0u)
%12:ptr<storage, vec4<f32>, read_write> = access %sb, 9u
store %12, vec4<f32>(0.0f)
%13:ptr<storage, vec4<i32>, read_write> = access %sb, 10u
store %13, vec4<i32>(0i)
%14:ptr<storage, vec4<u32>, read_write> = access %sb, 11u
store %14, vec4<u32>(0u)
%15:ptr<storage, mat2x2<f32>, read_write> = access %sb, 12u
store %15, mat2x2<f32>(vec2<f32>(0.0f))
%16:ptr<storage, mat2x3<f32>, read_write> = access %sb, 13u
%17:void = call %tint_store_and_preserve_padding, %16, mat2x3<f32>(vec3<f32>(0.0f))
%19:ptr<storage, mat2x4<f32>, read_write> = access %sb, 14u
store %19, mat2x4<f32>(vec4<f32>(0.0f))
%20:ptr<storage, mat3x2<f32>, read_write> = access %sb, 15u
store %20, mat3x2<f32>(vec2<f32>(0.0f))
%21:ptr<storage, mat3x3<f32>, read_write> = access %sb, 16u
%22:void = call %tint_store_and_preserve_padding_1, %21, mat3x3<f32>(vec3<f32>(0.0f))
%24:ptr<storage, mat3x4<f32>, read_write> = access %sb, 17u
store %24, mat3x4<f32>(vec4<f32>(0.0f))
%25:ptr<storage, mat4x2<f32>, read_write> = access %sb, 18u
store %25, mat4x2<f32>(vec2<f32>(0.0f))
%26:ptr<storage, mat4x3<f32>, read_write> = access %sb, 19u
%27:void = call %tint_store_and_preserve_padding_2, %26, mat4x3<f32>(vec3<f32>(0.0f))
%29:ptr<storage, mat4x4<f32>, read_write> = access %sb, 20u
store %29, mat4x4<f32>(vec4<f32>(0.0f))
%30:ptr<storage, array<vec3<f32>, 2>, read_write> = access %sb, 21u
%31:void = call %tint_store_and_preserve_padding_3, %30, array<vec3<f32>, 2>(vec3<f32>(0.0f))
%33:ptr<storage, Inner, read_write> = access %sb, 22u
store %33, Inner(0i, 0.0f)
%34:ptr<storage, array<Inner, 4>, read_write> = access %sb, 23u
store %34, array<Inner, 4>(Inner(0i, 0.0f))
ret
}
}
%tint_store_and_preserve_padding = func(%target:ptr<storage, mat2x3<f32>, read_write>, %value_param:mat2x3<f32>):void {
$B3: {
%37:ptr<storage, vec3<f32>, read_write> = access %target, 0u
%38:vec3<f32> = access %value_param, 0u
store %37, %38
%39:ptr<storage, vec3<f32>, read_write> = access %target, 1u
%40:vec3<f32> = access %value_param, 1u
store %39, %40
ret
}
}
%tint_store_and_preserve_padding_1 = func(%target_1:ptr<storage, mat3x3<f32>, read_write>, %value_param_1:mat3x3<f32>):void { # %tint_store_and_preserve_padding_1: 'tint_store_and_preserve_padding', %target_1: 'target', %value_param_1: 'value_param'
$B4: {
%43:ptr<storage, vec3<f32>, read_write> = access %target_1, 0u
%44:vec3<f32> = access %value_param_1, 0u
store %43, %44
%45:ptr<storage, vec3<f32>, read_write> = access %target_1, 1u
%46:vec3<f32> = access %value_param_1, 1u
store %45, %46
%47:ptr<storage, vec3<f32>, read_write> = access %target_1, 2u
%48:vec3<f32> = access %value_param_1, 2u
store %47, %48
ret
}
}
%tint_store_and_preserve_padding_2 = func(%target_2:ptr<storage, mat4x3<f32>, read_write>, %value_param_2:mat4x3<f32>):void { # %tint_store_and_preserve_padding_2: 'tint_store_and_preserve_padding', %target_2: 'target', %value_param_2: 'value_param'
$B5: {
%51:ptr<storage, vec3<f32>, read_write> = access %target_2, 0u
%52:vec3<f32> = access %value_param_2, 0u
store %51, %52
%53:ptr<storage, vec3<f32>, read_write> = access %target_2, 1u
%54:vec3<f32> = access %value_param_2, 1u
store %53, %54
%55:ptr<storage, vec3<f32>, read_write> = access %target_2, 2u
%56:vec3<f32> = access %value_param_2, 2u
store %55, %56
%57:ptr<storage, vec3<f32>, read_write> = access %target_2, 3u
%58:vec3<f32> = access %value_param_2, 3u
store %57, %58
ret
}
}
%tint_store_and_preserve_padding_3 = func(%target_3:ptr<storage, array<vec3<f32>, 2>, read_write>, %value_param_3:array<vec3<f32>, 2>):void { # %tint_store_and_preserve_padding_3: 'tint_store_and_preserve_padding', %target_3: 'target', %value_param_3: 'value_param'
$B6: {
loop [i: $B7, b: $B8, c: $B9] { # loop_1
$B7: { # initializer
next_iteration 0u # -> $B8
}
$B8 (%idx:u32): { # body
%62:bool = gte %idx, 2u
if %62 [t: $B10] { # if_1
$B10: { # true
exit_loop # loop_1
}
}
%63:ptr<storage, vec3<f32>, read_write> = access %target_3, %idx
%64:vec3<f32> = access %value_param_3, %idx
store %63, %64
continue # -> $B9
}
$B9: { # continuing
%65:u32 = add %idx, 1u
next_iteration %65 # -> $B8
}
}
ret
}
}
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. *
********************************************************************