// crbug.com/tint/959 // Test that we automatically remap resource numbers into a flat namespace for // MSL. Use some high binding numbers to also test that the remapped numbers are // densely packed starting at 0. struct S { a : f32; }; @group(0) @binding(0) var b0 : S; @group(1) @binding(0) var b1 : S; @group(2) @binding(0) var b2 : S; @group(3) @binding(0) var b3 : S; @group(4) @binding(0) var b4 : S; @group(5) @binding(0) var b5 : S; @group(6) @binding(0) var b6 : S; @group(7) @binding(0) var b7 : S; @group(9) @binding(1) var b8 : S; @group(8) @binding(1) var b9 : S; @group(10) @binding(1) var b10 : S; @group(11) @binding(1) var b11 : S; @group(12) @binding(1) var b12 : S; @group(13) @binding(1) var b13 : S; @group(14) @binding(1) var b14 : S; @group(15) @binding(1) var b15 : S; @group(0) @binding(1) var t0 : texture_2d; @group(1) @binding(1) var t1 : texture_2d; @group(2) @binding(1) var t2 : texture_2d; @group(3) @binding(1) var t3 : texture_2d; @group(4) @binding(1) var t4 : texture_2d; @group(5) @binding(1) var t5 : texture_2d; @group(6) @binding(1) var t6 : texture_2d; @group(7) @binding(1) var t7 : texture_2d; @group(8) @binding(200) var t8 : texture_depth_2d; @group(9) @binding(200) var t9 : texture_depth_2d; @group(10) @binding(200) var t10 : texture_depth_2d; @group(11) @binding(200) var t11 : texture_depth_2d; @group(12) @binding(200) var t12 : texture_depth_2d; @group(13) @binding(200) var t13 : texture_depth_2d; @group(14) @binding(200) var t14 : texture_depth_2d; @group(15) @binding(200) var t15 : texture_depth_2d; @group(0) @binding(200) var s0 : sampler; @group(1) @binding(200) var s1 : sampler; @group(2) @binding(200) var s2 : sampler; @group(3) @binding(200) var s3 : sampler; @group(4) @binding(200) var s4 : sampler; @group(5) @binding(200) var s5 : sampler; @group(6) @binding(200) var s6 : sampler; @group(7) @binding(200) var s7 : sampler; @group(8) @binding(300) var s8 : sampler_comparison; @group(9) @binding(300) var s9 : sampler_comparison; @group(10) @binding(300) var s10 : sampler_comparison; @group(11) @binding(300) var s11 : sampler_comparison; @group(12) @binding(300) var s12 : sampler_comparison; @group(13) @binding(300) var s13 : sampler_comparison; @group(14) @binding(300) var s14 : sampler_comparison; @group(15) @binding(300) var s15 : sampler_comparison; @stage(fragment) fn main() { _ = b0; _ = b1; _ = b2; _ = b3; _ = b4; _ = b5; _ = b6; _ = b7; _ = b8; _ = b9; _ = b10; _ = b11; _ = b12; _ = b13; _ = b14; _ = b15; _ = t0; _ = t1; _ = t2; _ = t3; _ = t4; _ = t5; _ = t6; _ = t7; _ = t8; _ = t9; _ = t10; _ = t11; _ = t12; _ = t13; _ = t14; _ = t15; _ = s0; _ = s1; _ = s2; _ = s3; _ = s4; _ = s5; _ = s6; _ = s7; _ = s8; _ = s9; _ = s10; _ = s11; _ = s12; _ = s13; _ = s14; _ = s15; }