blob: 9c490eca64e568b3bca8b6b8310258b373b86e01 [file] [log] [blame]
SKIP: FAILED
../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: Inner = 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)
}
S = struct @align(16) {
arr:array<Inner, 8> @offset(0)
}
$B1: { # root
%ub:ptr<uniform, S, read> = var @binding_point(0, 0)
%s:ptr<storage, i32, read_write> = var @binding_point(0, 1)
}
%tint_symbol = @compute @workgroup_size(1, 1, 1) func(%idx:u32 [@local_invocation_index]):void {
$B2: {
%5:ptr<uniform, f32, read> = access %ub, 0u, %idx, 0u
%6:f32 = load %5
%scalar_f32:f32 = let %6
%8:ptr<uniform, i32, read> = access %ub, 0u, %idx, 1u
%9:i32 = load %8
%scalar_i32:i32 = let %9
%11:ptr<uniform, u32, read> = access %ub, 0u, %idx, 2u
%12:u32 = load %11
%scalar_u32:u32 = let %12
%14:ptr<uniform, vec2<f32>, read> = access %ub, 0u, %idx, 3u
%15:vec2<f32> = load %14
%vec2_f32:vec2<f32> = let %15
%17:ptr<uniform, vec2<i32>, read> = access %ub, 0u, %idx, 4u
%18:vec2<i32> = load %17
%vec2_i32:vec2<i32> = let %18
%20:ptr<uniform, vec2<u32>, read> = access %ub, 0u, %idx, 5u
%21:vec2<u32> = load %20
%vec2_u32:vec2<u32> = let %21
%23:ptr<uniform, vec3<f32>, read> = access %ub, 0u, %idx, 6u
%24:vec3<f32> = load %23
%vec3_f32:vec3<f32> = let %24
%26:ptr<uniform, vec3<i32>, read> = access %ub, 0u, %idx, 7u
%27:vec3<i32> = load %26
%vec3_i32:vec3<i32> = let %27
%29:ptr<uniform, vec3<u32>, read> = access %ub, 0u, %idx, 8u
%30:vec3<u32> = load %29
%vec3_u32:vec3<u32> = let %30
%32:ptr<uniform, vec4<f32>, read> = access %ub, 0u, %idx, 9u
%33:vec4<f32> = load %32
%vec4_f32:vec4<f32> = let %33
%35:ptr<uniform, vec4<i32>, read> = access %ub, 0u, %idx, 10u
%36:vec4<i32> = load %35
%vec4_i32:vec4<i32> = let %36
%38:ptr<uniform, vec4<u32>, read> = access %ub, 0u, %idx, 11u
%39:vec4<u32> = load %38
%vec4_u32:vec4<u32> = let %39
%41:ptr<uniform, mat2x2<f32>, read> = access %ub, 0u, %idx, 12u
%42:mat2x2<f32> = load %41
%mat2x2_f32:mat2x2<f32> = let %42
%44:ptr<uniform, mat2x3<f32>, read> = access %ub, 0u, %idx, 13u
%45:mat2x3<f32> = load %44
%mat2x3_f32:mat2x3<f32> = let %45
%47:ptr<uniform, mat2x4<f32>, read> = access %ub, 0u, %idx, 14u
%48:mat2x4<f32> = load %47
%mat2x4_f32:mat2x4<f32> = let %48
%50:ptr<uniform, mat3x2<f32>, read> = access %ub, 0u, %idx, 15u
%51:mat3x2<f32> = load %50
%mat3x2_f32:mat3x2<f32> = let %51
%53:ptr<uniform, mat3x3<f32>, read> = access %ub, 0u, %idx, 16u
%54:mat3x3<f32> = load %53
%mat3x3_f32:mat3x3<f32> = let %54
%56:ptr<uniform, mat3x4<f32>, read> = access %ub, 0u, %idx, 17u
%57:mat3x4<f32> = load %56
%mat3x4_f32:mat3x4<f32> = let %57
%59:ptr<uniform, mat4x2<f32>, read> = access %ub, 0u, %idx, 18u
%60:mat4x2<f32> = load %59
%mat4x2_f32:mat4x2<f32> = let %60
%62:ptr<uniform, mat4x3<f32>, read> = access %ub, 0u, %idx, 19u
%63:mat4x3<f32> = load %62
%mat4x3_f32:mat4x3<f32> = let %63
%65:ptr<uniform, mat4x4<f32>, read> = access %ub, 0u, %idx, 20u
%66:mat4x4<f32> = load %65
%mat4x4_f32:mat4x4<f32> = let %66
%68:ptr<uniform, array<vec3<f32>, 2>, read> = access %ub, 0u, %idx, 21u
%69:array<vec3<f32>, 2> = load %68
%arr2_vec3_f32:array<vec3<f32>, 2> = let %69
%71:i32 = call %tint_f32_to_i32, %scalar_f32
%73:i32 = add %71, %scalar_i32
%74:i32 = let %73
%75:i32 = convert %scalar_u32
%76:i32 = add %74, %75
%77:i32 = let %76
%78:f32 = access %vec2_f32, 0u
%79:i32 = call %tint_f32_to_i32, %78
%80:i32 = add %77, %79
%81:i32 = access %vec2_i32, 0u
%82:i32 = add %80, %81
%83:i32 = let %82
%84:u32 = access %vec2_u32, 0u
%85:i32 = convert %84
%86:i32 = add %83, %85
%87:i32 = let %86
%88:f32 = access %vec3_f32, 1u
%89:i32 = call %tint_f32_to_i32, %88
%90:i32 = add %87, %89
%91:i32 = access %vec3_i32, 1u
%92:i32 = add %90, %91
%93:i32 = let %92
%94:u32 = access %vec3_u32, 1u
%95:i32 = convert %94
%96:i32 = add %93, %95
%97:i32 = let %96
%98:f32 = access %vec4_f32, 2u
%99:i32 = call %tint_f32_to_i32, %98
%100:i32 = add %97, %99
%101:i32 = access %vec4_i32, 2u
%102:i32 = add %100, %101
%103:i32 = let %102
%104:u32 = access %vec4_u32, 2u
%105:i32 = convert %104
%106:i32 = add %103, %105
%107:i32 = let %106
%108:f32 = access %mat2x2_f32, 0i, 0u
%109:i32 = call %tint_f32_to_i32, %108
%110:i32 = add %107, %109
%111:i32 = let %110
%112:f32 = access %mat2x3_f32, 0i, 0u
%113:i32 = call %tint_f32_to_i32, %112
%114:i32 = add %111, %113
%115:i32 = let %114
%116:f32 = access %mat2x4_f32, 0i, 0u
%117:i32 = call %tint_f32_to_i32, %116
%118:i32 = add %115, %117
%119:i32 = let %118
%120:f32 = access %mat3x2_f32, 0i, 0u
%121:i32 = call %tint_f32_to_i32, %120
%122:i32 = add %119, %121
%123:i32 = let %122
%124:f32 = access %mat3x3_f32, 0i, 0u
%125:i32 = call %tint_f32_to_i32, %124
%126:i32 = add %123, %125
%127:i32 = let %126
%128:f32 = access %mat3x4_f32, 0i, 0u
%129:i32 = call %tint_f32_to_i32, %128
%130:i32 = add %127, %129
%131:i32 = let %130
%132:f32 = access %mat4x2_f32, 0i, 0u
%133:i32 = call %tint_f32_to_i32, %132
%134:i32 = add %131, %133
%135:i32 = let %134
%136:f32 = access %mat4x3_f32, 0i, 0u
%137:i32 = call %tint_f32_to_i32, %136
%138:i32 = add %135, %137
%139:i32 = let %138
%140:f32 = access %mat4x4_f32, 0i, 0u
%141:i32 = call %tint_f32_to_i32, %140
%142:i32 = add %139, %141
%143:i32 = let %142
%144:f32 = access %arr2_vec3_f32, 0i, 0u
%145:i32 = call %tint_f32_to_i32, %144
%146:i32 = add %143, %145
store %s, %146
ret
}
}
%tint_f32_to_i32 = func(%value:f32):i32 {
$B3: {
%148:i32 = convert %value
%149:bool = gte %value, -2147483648.0f
%150:i32 = select -2147483648i, %148, %149
%151:bool = lte %value, 2147483520.0f
%152:i32 = select 2147483647i, %150, %151
ret %152
}
}
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. *
********************************************************************