blob: 71bb75b4ee94ad0e88925f96e180c79b2b732ece [file] [log] [blame]
SKIP: FAILED
../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: S = struct @align(64) {
before:i32 @offset(0)
m:mat3x3<f16> @offset(8)
after:i32 @offset(64)
}
$B1: { # root
%u:ptr<uniform, array<S, 4>, read> = var @binding_point(0, 0)
%s:ptr<storage, array<S, 4>, read_write> = var @binding_point(0, 1)
}
%f = @compute @workgroup_size(1, 1, 1) func():void {
$B2: {
%4:array<S, 4> = load %u
%5:void = call %tint_store_and_preserve_padding, %s, %4
%7:ptr<storage, S, read_write> = access %s, 1i
%8:ptr<uniform, S, read> = access %u, 2i
%9:S = load %8
%10:void = call %tint_store_and_preserve_padding_1, %7, %9
%12:ptr<storage, mat3x3<f16>, read_write> = access %s, 3i, 1u
%13:ptr<uniform, mat3x3<f16>, read> = access %u, 2i, 1u
%14:mat3x3<f16> = load %13
%15:void = call %tint_store_and_preserve_padding_2, %12, %14
%17:ptr<storage, vec3<f16>, read_write> = access %s, 1i, 1u, 0i
%18:ptr<uniform, vec3<f16>, read> = access %u, 0i, 1u, 1i
%19:vec3<f16> = load %18
%20:vec3<f16> = swizzle %19, zxy
store %17, %20
ret
}
}
%tint_store_and_preserve_padding = func(%target:ptr<storage, array<S, 4>, read_write>, %value_param:array<S, 4>):void {
$B3: {
loop [i: $B4, b: $B5, c: $B6] { # loop_1
$B4: { # initializer
next_iteration 0u # -> $B5
}
$B5 (%idx:u32): { # body
%24:bool = gte %idx, 4u
if %24 [t: $B7] { # if_1
$B7: { # true
exit_loop # loop_1
}
}
%25:ptr<storage, S, read_write> = access %target, %idx
%26:S = access %value_param, %idx
%27:void = call %tint_store_and_preserve_padding_1, %25, %26
continue # -> $B6
}
$B6: { # continuing
%28:u32 = add %idx, 1u
next_iteration %28 # -> $B5
}
}
ret
}
}
%tint_store_and_preserve_padding_1 = func(%target_1:ptr<storage, S, read_write>, %value_param_1:S):void { # %tint_store_and_preserve_padding_1: 'tint_store_and_preserve_padding', %target_1: 'target', %value_param_1: 'value_param'
$B8: {
%31:ptr<storage, i32, read_write> = access %target_1, 0u
%32:i32 = access %value_param_1, 0u
store %31, %32
%33:ptr<storage, mat3x3<f16>, read_write> = access %target_1, 1u
%34:mat3x3<f16> = access %value_param_1, 1u
%35:void = call %tint_store_and_preserve_padding_2, %33, %34
%36:ptr<storage, i32, read_write> = access %target_1, 2u
%37:i32 = access %value_param_1, 2u
store %36, %37
ret
}
}
%tint_store_and_preserve_padding_2 = func(%target_2:ptr<storage, mat3x3<f16>, read_write>, %value_param_2:mat3x3<f16>):void { # %tint_store_and_preserve_padding_2: 'tint_store_and_preserve_padding', %target_2: 'target', %value_param_2: 'value_param'
$B9: {
%40:ptr<storage, vec3<f16>, read_write> = access %target_2, 0u
%41:vec3<f16> = access %value_param_2, 0u
store %40, %41
%42:ptr<storage, vec3<f16>, read_write> = access %target_2, 1u
%43:vec3<f16> = access %value_param_2, 1u
store %42, %43
%44:ptr<storage, vec3<f16>, read_write> = access %target_2, 2u
%45:vec3<f16> = access %value_param_2, 2u
store %44, %45
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. *
********************************************************************