Message ID | 1402749361-11643-3-git-send-email-t_arceri@yahoo.com.au |
---|---|
State | New |
Headers | show |
These tests (and others) are run even if ARB_arrays_of_arrays isn't supported. Maybe the extension checking is broken? Marek On Sat, Jun 14, 2014 at 2:35 PM, Timothy Arceri <t_arceri@yahoo.com.au> wrote: > Test results are from the following hardware/driver combinations: > > AMD Radeon HD 6670 - Catalyst 13.251 OpenGL 4.3 > Nvidia GeForce 210 - NVIDIA 331.20 OpenGL 3.3 > Intel Ivy Bridge - Mesa 10.1(815e064) with ARB_arrays_of_arrays enabled > > initializer-dec-list-type-array-array-var1-var2.vert > AMD: pass > Intel: pass > > initializer-dec-list-type-array-var1-array-var2-array.vert > AMD: pass > Intel: pass > > initializer-dec-list-type-var1-array-array-var2-array-array.vert > AMD: pass > Intel: pass > > initializer-struct-field-array-array-var.vert > AMD: pass > Nvida: pass > Intel: pass > > initializer-struct-field-array-var-array.vert > AMD: pass > Nvida: pass > Intel: pass > > initializer-struct-field-array-var-array2.vert > AMD: pass > Intel: pass > > initializer-struct-field-dec-list-array-array-var1-var2.vert > AMD: pass > Intel: pass > > initializer-struct-field-dec-list-array-var1-array-var2.vert > AMD: pass > Intel: pass > > initializer-struct-field-dec-list-array-var1-var2-array.vert > AMD: pass > Intel: pass > > initializer-struct-field-var-array-array.vert > AMD: pass > Nvida: pass > Intel: pass > > initializer-three-dimensions.vert > AMD: pass > Nvida: pass > Intel: pass > > initializer-three-dimensions2.vert > AMD: pass > Nvida: pass > Intel: pass > > Signed-off-by: Timothy Arceri <t_arceri@yahoo.com.au> > --- > ...alizer-dec-list-type-array-array-var1-var2.vert | 43 +++++++++++++++++++ > ...-dec-list-type-array-var1-array-var2-array.vert | 47 +++++++++++++++++++++ > ...ist-type-var1-array-array-var2-array-array.vert | 43 +++++++++++++++++++ > .../initializer-struct-field-array-array-var.vert | 34 +++++++++++++++ > .../initializer-struct-field-array-var-array.vert | 34 +++++++++++++++ > .../initializer-struct-field-array-var-array2.vert | 34 +++++++++++++++ > ...truct-field-dec-list-array-array-var1-var2.vert | 48 ++++++++++++++++++++++ > ...truct-field-dec-list-array-var1-array-var2.vert | 38 +++++++++++++++++ > ...truct-field-dec-list-array-var1-var2-array.vert | 38 +++++++++++++++++ > .../initializer-struct-field-var-array-array.vert | 34 +++++++++++++++ > .../compiler/initializer-three-dimensions.vert | 22 ++++++++++ > .../compiler/initializer-three-dimensions2.vert | 22 ++++++++++ > 12 files changed, 437 insertions(+) > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-array-var1-var2.vert > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-var1-array-var2-array.vert > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-var1-array-array-var2-array-array.vert > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-array-var.vert > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array.vert > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array2.vert > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-array-var1-var2.vert > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-array-var2.vert > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-var2-array.vert > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-var-array-array.vert > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions.vert > create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions2.vert > > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-array-var1-var2.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-array-var1-var2.vert > new file mode 100644 > index 0000000..287fadd > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-array-var1-var2.vert > @@ -0,0 +1,43 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + vec4[3][2] a = { > + { > + vec4(1.0), // a[0][0] > + vec4(1.0) // a[0][1] > + }, > + { > + vec4(1.0), // a[1][0] > + vec4(1.0) // a[1][1] > + }, > + { > + vec4(1.0), // a[2][0] > + vec4(1.0) // a[2][1] > + } > + }, b = { > + { > + vec4(1.0), // b[0][0] > + vec4(1.0) // b[0][1] > + }, > + { > + vec4(1.0), // b[1][0] > + vec4(1.0) // b[1][1] > + }, > + { > + vec4(1.0), // b[2][0] > + vec4(1.0) // b[2][1] > + } > + }; // b > + > + gl_Position = b[2][1]; > +} > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-var1-array-var2-array.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-var1-array-var2-array.vert > new file mode 100644 > index 0000000..844081a > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-var1-array-var2-array.vert > @@ -0,0 +1,47 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + vec4[2] a[4] = { > + { > + vec4(1.0), // a[0][0] > + vec4(1.0) // a[0][1] > + }, > + { > + vec4(1.0), // a[1][0] > + vec4(1.0) // a[1][1] > + }, > + { > + vec4(1.0), // a[2][0] > + vec4(1.0) // a[2][1] > + }, > + { > + vec4(1.0), // a[3][0] > + vec4(1.0) // a[3][1] > + } > + }, b[3] = { > + { > + vec4(1.0), // b[0][0] > + vec4(1.0) // b[0][1] > + }, > + { > + vec4(1.0), // b[1][0] > + vec4(1.0) // b[1][1] > + }, > + { > + vec4(1.0), // b[2][0] > + vec4(1.0) // b[2][1] > + } > + }; // b > + > + gl_Position = b[2][1]; > +} > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-var1-array-array-var2-array-array.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-var1-array-array-var2-array-array.vert > new file mode 100644 > index 0000000..c7c97e4 > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-var1-array-array-var2-array-array.vert > @@ -0,0 +1,43 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + vec4 a[3][2] = { > + { > + vec4(1.0), // a[0][0] > + vec4(1.0) // a[0][1] > + }, > + { > + vec4(1.0), // a[1][0] > + vec4(1.0) // a[1][1] > + }, > + { > + vec4(1.0), // a[2][0] > + vec4(1.0) // a[2][1] > + } > + }, b[3][2] = { > + { > + vec4(1.0), // b[0][0] > + vec4(1.0) // b[0][1] > + }, > + { > + vec4(1.0), // b[1][0] > + vec4(1.0) // b[1][1] > + }, > + { > + vec4(1.0), // b[2][0] > + vec4(1.0) // b[2][1] > + } > + }; // b > + > + gl_Position = b[2][1]; > +} > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-array-var.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-array-var.vert > new file mode 100644 > index 0000000..1d0cedf > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-array-var.vert > @@ -0,0 +1,34 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + struct { > + vec4[3][2] a; > + } aggregate = { > + { > + { > + {1.0, 2.0, 3.0, 4.0}, // a[0][0] > + {5.0, 6.0, 7.0, 8.0} // a[0][1] > + }, // a[0] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[1][0] > + {5.0, 6.0, 7.0, 8.0} // a[1][1] > + }, // a[1] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[2][0] > + {5.0, 6.0, 7.0, 8.0} // a[2][1] > + } // a[2] > + } > + }; > + > + gl_Position = aggregate.a[2][1]; > +} > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array.vert > new file mode 100644 > index 0000000..5afc308 > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array.vert > @@ -0,0 +1,34 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + struct { > + vec4[2] a[3]; > + } aggregate = { > + { > + { > + {1.0, 2.0, 3.0, 4.0}, // a[0][0] > + {5.0, 6.0, 7.0, 8.0} // a[0][1] > + }, // a[0] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[1][0] > + {5.0, 6.0, 7.0, 8.0} // a[1][1] > + }, // a[1] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[2][0] > + {5.0, 6.0, 7.0, 8.0} // a[2][1] > + } // a[2] > + } > + }; > + > + gl_Position = aggregate.a[2][1]; > +} > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array2.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array2.vert > new file mode 100644 > index 0000000..15e24ce > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array2.vert > @@ -0,0 +1,34 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + struct { > + vec4[2] a[3]; > + } aggregate = { > + { > + { > + vec4(1.0), // a[0][0] > + vec4(1.0) // a[0][1] > + }, // a[0] > + { > + vec4(1.0), // a[1][0] > + vec4(1.0) // a[1][1] > + }, // a[1] > + { > + vec4(1.0), // a[2][0] > + vec4(1.0) // a[2][1] > + } // a[2] > + } > + }; > + > + gl_Position = aggregate.a[2][1]; > +} > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-array-var1-var2.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-array-var1-var2.vert > new file mode 100644 > index 0000000..b0abb4a > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-array-var1-var2.vert > @@ -0,0 +1,48 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + struct { > + vec4[3][2] a, b; > + } aggregate = { > + { > + { > + {1.0, 2.0, 3.0, 4.0}, // a[0][0] > + {5.0, 6.0, 7.0, 8.0} // a[0][1] > + }, // a[0] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[1][0] > + {5.0, 6.0, 7.0, 8.0} // a[1][1] > + }, // a[1] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[2][0] > + {5.0, 6.0, 7.0, 8.0} // a[2][1] > + } // a[2] > + }, // a > + { > + { > + {1.0, 2.0, 3.0, 4.0}, // b[0][0] > + {5.0, 6.0, 7.0, 8.0} // b[0][1] > + }, // b[0] > + { > + {1.0, 2.0, 3.0, 4.0}, // b[1][0] > + {5.0, 6.0, 7.0, 8.0} // b[1][1] > + }, // b[1] > + { > + {1.0, 2.0, 3.0, 4.0}, // b[2][0] > + {5.0, 6.0, 7.0, 8.0} // b[2][1] > + } // b[2] > + } // b > + }; > + > + gl_Position = aggregate.a[2][1]; > +} > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-array-var2.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-array-var2.vert > new file mode 100644 > index 0000000..782349b > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-array-var2.vert > @@ -0,0 +1,38 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + struct { > + vec4[2] a[3], b; > + } aggregate = { > + { > + { > + {1.0, 2.0, 3.0, 4.0}, // a[0][0] > + {5.0, 6.0, 7.0, 8.0} // a[0][1] > + }, // a[0] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[1][0] > + {5.0, 6.0, 7.0, 8.0} // a[1][1] > + }, // a[1] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[2][0] > + {5.0, 6.0, 7.0, 8.0} // a[2][1] > + } // a[2] > + }, // a > + { > + { 1.0, 2.0, 3.0, 4.0 }, // b[0] > + { 1.0, 2.0, 3.0, 4.0 } // b[1] > + } > + }; > + > + gl_Position = aggregate.a[2][1]; > +} > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-var2-array.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-var2-array.vert > new file mode 100644 > index 0000000..6663337 > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-var2-array.vert > @@ -0,0 +1,38 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + struct { > + vec4[2] b, a[3]; > + } aggregate = { > + { > + { 1.0, 2.0, 3.0, 4.0 }, // b[0] > + { 1.0, 2.0, 3.0, 4.0 } // b[1] > + }, > + { > + { > + {1.0, 2.0, 3.0, 4.0}, // a[0][0] > + {5.0, 6.0, 7.0, 8.0} // a[0][1] > + }, // a[0] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[1][0] > + {5.0, 6.0, 7.0, 8.0} // a[1][1] > + }, // a[1] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[2][0] > + {5.0, 6.0, 7.0, 8.0} // a[2][1] > + } // a[2] > + } // a > + }; > + > + gl_Position = aggregate.a[2][1]; > +} > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-var-array-array.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-var-array-array.vert > new file mode 100644 > index 0000000..72ccacf > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-var-array-array.vert > @@ -0,0 +1,34 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + struct { > + vec4 a[3][2]; > + } aggregate = { > + { > + { > + {1.0, 2.0, 3.0, 4.0}, // a[0][0] > + {5.0, 6.0, 7.0, 8.0} // a[0][1] > + }, // a[0] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[1][0] > + {5.0, 6.0, 7.0, 8.0} // a[1][1] > + }, // a[1] > + { > + {1.0, 2.0, 3.0, 4.0}, // a[2][0] > + {5.0, 6.0, 7.0, 8.0} // a[2][1] > + } // a[2] > + } > + }; > + > + gl_Position = aggregate.a[2][1]; > +} > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions.vert > new file mode 100644 > index 0000000..a0e06a6 > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions.vert > @@ -0,0 +1,22 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + vec4 a[3][2][4] = {vec4[2][4](vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), > + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0))), > + vec4[2][4](vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), > + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0))), > + vec4[2][4](vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), > + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)))}; > + > + gl_Position = a[2][1][1]; > +} > diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions2.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions2.vert > new file mode 100644 > index 0000000..03a1e83 > --- /dev/null > +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions2.vert > @@ -0,0 +1,22 @@ > +/* [config] > + * expect_result: pass > + * glsl_version: 1.20 > + * require_extensions: GL_ARB_arrays_of_arrays > + * require_extensions: GL_ARB_shading_language_420pack > + * [end config] > + */ > +#version 120 > +#extension GL_ARB_arrays_of_arrays: enable > +#extension GL_ARB_shading_language_420pack: enable > + > +void main() > +{ > + vec4 a[3][2][4] = {{vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), > + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0))}, > + {vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), > + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0))}, > + {vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), > + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0))}}; > + > + gl_Position = a[2][1][1]; > +} > -- > 1.9.3 > > _______________________________________________ > Piglit mailing list > Piglit@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/piglit
On Wed, Jun 18, 2014 at 4:03 PM, Marek Olšák <maraeo@gmail.com> wrote: > These tests (and others) are run even if ARB_arrays_of_arrays isn't > supported. Maybe the extension checking is broken? >> + * require_extensions: GL_ARB_arrays_of_arrays >> + * require_extensions: GL_ARB_shading_language_420pack Probably because of this. I think for multiple extensions you just put them on the same line after a single require_extensions:
diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-array-var1-var2.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-array-var1-var2.vert new file mode 100644 index 0000000..287fadd --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-array-var1-var2.vert @@ -0,0 +1,43 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + vec4[3][2] a = { + { + vec4(1.0), // a[0][0] + vec4(1.0) // a[0][1] + }, + { + vec4(1.0), // a[1][0] + vec4(1.0) // a[1][1] + }, + { + vec4(1.0), // a[2][0] + vec4(1.0) // a[2][1] + } + }, b = { + { + vec4(1.0), // b[0][0] + vec4(1.0) // b[0][1] + }, + { + vec4(1.0), // b[1][0] + vec4(1.0) // b[1][1] + }, + { + vec4(1.0), // b[2][0] + vec4(1.0) // b[2][1] + } + }; // b + + gl_Position = b[2][1]; +} diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-var1-array-var2-array.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-var1-array-var2-array.vert new file mode 100644 index 0000000..844081a --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-var1-array-var2-array.vert @@ -0,0 +1,47 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + vec4[2] a[4] = { + { + vec4(1.0), // a[0][0] + vec4(1.0) // a[0][1] + }, + { + vec4(1.0), // a[1][0] + vec4(1.0) // a[1][1] + }, + { + vec4(1.0), // a[2][0] + vec4(1.0) // a[2][1] + }, + { + vec4(1.0), // a[3][0] + vec4(1.0) // a[3][1] + } + }, b[3] = { + { + vec4(1.0), // b[0][0] + vec4(1.0) // b[0][1] + }, + { + vec4(1.0), // b[1][0] + vec4(1.0) // b[1][1] + }, + { + vec4(1.0), // b[2][0] + vec4(1.0) // b[2][1] + } + }; // b + + gl_Position = b[2][1]; +} diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-var1-array-array-var2-array-array.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-var1-array-array-var2-array-array.vert new file mode 100644 index 0000000..c7c97e4 --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-var1-array-array-var2-array-array.vert @@ -0,0 +1,43 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + vec4 a[3][2] = { + { + vec4(1.0), // a[0][0] + vec4(1.0) // a[0][1] + }, + { + vec4(1.0), // a[1][0] + vec4(1.0) // a[1][1] + }, + { + vec4(1.0), // a[2][0] + vec4(1.0) // a[2][1] + } + }, b[3][2] = { + { + vec4(1.0), // b[0][0] + vec4(1.0) // b[0][1] + }, + { + vec4(1.0), // b[1][0] + vec4(1.0) // b[1][1] + }, + { + vec4(1.0), // b[2][0] + vec4(1.0) // b[2][1] + } + }; // b + + gl_Position = b[2][1]; +} diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-array-var.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-array-var.vert new file mode 100644 index 0000000..1d0cedf --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-array-var.vert @@ -0,0 +1,34 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + struct { + vec4[3][2] a; + } aggregate = { + { + { + {1.0, 2.0, 3.0, 4.0}, // a[0][0] + {5.0, 6.0, 7.0, 8.0} // a[0][1] + }, // a[0] + { + {1.0, 2.0, 3.0, 4.0}, // a[1][0] + {5.0, 6.0, 7.0, 8.0} // a[1][1] + }, // a[1] + { + {1.0, 2.0, 3.0, 4.0}, // a[2][0] + {5.0, 6.0, 7.0, 8.0} // a[2][1] + } // a[2] + } + }; + + gl_Position = aggregate.a[2][1]; +} diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array.vert new file mode 100644 index 0000000..5afc308 --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array.vert @@ -0,0 +1,34 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + struct { + vec4[2] a[3]; + } aggregate = { + { + { + {1.0, 2.0, 3.0, 4.0}, // a[0][0] + {5.0, 6.0, 7.0, 8.0} // a[0][1] + }, // a[0] + { + {1.0, 2.0, 3.0, 4.0}, // a[1][0] + {5.0, 6.0, 7.0, 8.0} // a[1][1] + }, // a[1] + { + {1.0, 2.0, 3.0, 4.0}, // a[2][0] + {5.0, 6.0, 7.0, 8.0} // a[2][1] + } // a[2] + } + }; + + gl_Position = aggregate.a[2][1]; +} diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array2.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array2.vert new file mode 100644 index 0000000..15e24ce --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array2.vert @@ -0,0 +1,34 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + struct { + vec4[2] a[3]; + } aggregate = { + { + { + vec4(1.0), // a[0][0] + vec4(1.0) // a[0][1] + }, // a[0] + { + vec4(1.0), // a[1][0] + vec4(1.0) // a[1][1] + }, // a[1] + { + vec4(1.0), // a[2][0] + vec4(1.0) // a[2][1] + } // a[2] + } + }; + + gl_Position = aggregate.a[2][1]; +} diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-array-var1-var2.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-array-var1-var2.vert new file mode 100644 index 0000000..b0abb4a --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-array-var1-var2.vert @@ -0,0 +1,48 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + struct { + vec4[3][2] a, b; + } aggregate = { + { + { + {1.0, 2.0, 3.0, 4.0}, // a[0][0] + {5.0, 6.0, 7.0, 8.0} // a[0][1] + }, // a[0] + { + {1.0, 2.0, 3.0, 4.0}, // a[1][0] + {5.0, 6.0, 7.0, 8.0} // a[1][1] + }, // a[1] + { + {1.0, 2.0, 3.0, 4.0}, // a[2][0] + {5.0, 6.0, 7.0, 8.0} // a[2][1] + } // a[2] + }, // a + { + { + {1.0, 2.0, 3.0, 4.0}, // b[0][0] + {5.0, 6.0, 7.0, 8.0} // b[0][1] + }, // b[0] + { + {1.0, 2.0, 3.0, 4.0}, // b[1][0] + {5.0, 6.0, 7.0, 8.0} // b[1][1] + }, // b[1] + { + {1.0, 2.0, 3.0, 4.0}, // b[2][0] + {5.0, 6.0, 7.0, 8.0} // b[2][1] + } // b[2] + } // b + }; + + gl_Position = aggregate.a[2][1]; +} diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-array-var2.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-array-var2.vert new file mode 100644 index 0000000..782349b --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-array-var2.vert @@ -0,0 +1,38 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + struct { + vec4[2] a[3], b; + } aggregate = { + { + { + {1.0, 2.0, 3.0, 4.0}, // a[0][0] + {5.0, 6.0, 7.0, 8.0} // a[0][1] + }, // a[0] + { + {1.0, 2.0, 3.0, 4.0}, // a[1][0] + {5.0, 6.0, 7.0, 8.0} // a[1][1] + }, // a[1] + { + {1.0, 2.0, 3.0, 4.0}, // a[2][0] + {5.0, 6.0, 7.0, 8.0} // a[2][1] + } // a[2] + }, // a + { + { 1.0, 2.0, 3.0, 4.0 }, // b[0] + { 1.0, 2.0, 3.0, 4.0 } // b[1] + } + }; + + gl_Position = aggregate.a[2][1]; +} diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-var2-array.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-var2-array.vert new file mode 100644 index 0000000..6663337 --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-var2-array.vert @@ -0,0 +1,38 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + struct { + vec4[2] b, a[3]; + } aggregate = { + { + { 1.0, 2.0, 3.0, 4.0 }, // b[0] + { 1.0, 2.0, 3.0, 4.0 } // b[1] + }, + { + { + {1.0, 2.0, 3.0, 4.0}, // a[0][0] + {5.0, 6.0, 7.0, 8.0} // a[0][1] + }, // a[0] + { + {1.0, 2.0, 3.0, 4.0}, // a[1][0] + {5.0, 6.0, 7.0, 8.0} // a[1][1] + }, // a[1] + { + {1.0, 2.0, 3.0, 4.0}, // a[2][0] + {5.0, 6.0, 7.0, 8.0} // a[2][1] + } // a[2] + } // a + }; + + gl_Position = aggregate.a[2][1]; +} diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-var-array-array.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-var-array-array.vert new file mode 100644 index 0000000..72ccacf --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-var-array-array.vert @@ -0,0 +1,34 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + struct { + vec4 a[3][2]; + } aggregate = { + { + { + {1.0, 2.0, 3.0, 4.0}, // a[0][0] + {5.0, 6.0, 7.0, 8.0} // a[0][1] + }, // a[0] + { + {1.0, 2.0, 3.0, 4.0}, // a[1][0] + {5.0, 6.0, 7.0, 8.0} // a[1][1] + }, // a[1] + { + {1.0, 2.0, 3.0, 4.0}, // a[2][0] + {5.0, 6.0, 7.0, 8.0} // a[2][1] + } // a[2] + } + }; + + gl_Position = aggregate.a[2][1]; +} diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions.vert new file mode 100644 index 0000000..a0e06a6 --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions.vert @@ -0,0 +1,22 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + vec4 a[3][2][4] = {vec4[2][4](vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0))), + vec4[2][4](vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0))), + vec4[2][4](vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)))}; + + gl_Position = a[2][1][1]; +} diff --git a/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions2.vert b/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions2.vert new file mode 100644 index 0000000..03a1e83 --- /dev/null +++ b/tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions2.vert @@ -0,0 +1,22 @@ +/* [config] + * expect_result: pass + * glsl_version: 1.20 + * require_extensions: GL_ARB_arrays_of_arrays + * require_extensions: GL_ARB_shading_language_420pack + * [end config] + */ +#version 120 +#extension GL_ARB_arrays_of_arrays: enable +#extension GL_ARB_shading_language_420pack: enable + +void main() +{ + vec4 a[3][2][4] = {{vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0))}, + {vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0))}, + {vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0)), + vec4[4](vec4(0.0), vec4(1.0), vec4(0.0), vec4(1.0))}}; + + gl_Position = a[2][1][1]; +}
Test results are from the following hardware/driver combinations: AMD Radeon HD 6670 - Catalyst 13.251 OpenGL 4.3 Nvidia GeForce 210 - NVIDIA 331.20 OpenGL 3.3 Intel Ivy Bridge - Mesa 10.1(815e064) with ARB_arrays_of_arrays enabled initializer-dec-list-type-array-array-var1-var2.vert AMD: pass Intel: pass initializer-dec-list-type-array-var1-array-var2-array.vert AMD: pass Intel: pass initializer-dec-list-type-var1-array-array-var2-array-array.vert AMD: pass Intel: pass initializer-struct-field-array-array-var.vert AMD: pass Nvida: pass Intel: pass initializer-struct-field-array-var-array.vert AMD: pass Nvida: pass Intel: pass initializer-struct-field-array-var-array2.vert AMD: pass Intel: pass initializer-struct-field-dec-list-array-array-var1-var2.vert AMD: pass Intel: pass initializer-struct-field-dec-list-array-var1-array-var2.vert AMD: pass Intel: pass initializer-struct-field-dec-list-array-var1-var2-array.vert AMD: pass Intel: pass initializer-struct-field-var-array-array.vert AMD: pass Nvida: pass Intel: pass initializer-three-dimensions.vert AMD: pass Nvida: pass Intel: pass initializer-three-dimensions2.vert AMD: pass Nvida: pass Intel: pass Signed-off-by: Timothy Arceri <t_arceri@yahoo.com.au> --- ...alizer-dec-list-type-array-array-var1-var2.vert | 43 +++++++++++++++++++ ...-dec-list-type-array-var1-array-var2-array.vert | 47 +++++++++++++++++++++ ...ist-type-var1-array-array-var2-array-array.vert | 43 +++++++++++++++++++ .../initializer-struct-field-array-array-var.vert | 34 +++++++++++++++ .../initializer-struct-field-array-var-array.vert | 34 +++++++++++++++ .../initializer-struct-field-array-var-array2.vert | 34 +++++++++++++++ ...truct-field-dec-list-array-array-var1-var2.vert | 48 ++++++++++++++++++++++ ...truct-field-dec-list-array-var1-array-var2.vert | 38 +++++++++++++++++ ...truct-field-dec-list-array-var1-var2-array.vert | 38 +++++++++++++++++ .../initializer-struct-field-var-array-array.vert | 34 +++++++++++++++ .../compiler/initializer-three-dimensions.vert | 22 ++++++++++ .../compiler/initializer-three-dimensions2.vert | 22 ++++++++++ 12 files changed, 437 insertions(+) create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-array-var1-var2.vert create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-array-var1-array-var2-array.vert create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-dec-list-type-var1-array-array-var2-array-array.vert create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-array-var.vert create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array.vert create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-array-var-array2.vert create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-array-var1-var2.vert create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-array-var2.vert create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-dec-list-array-var1-var2-array.vert create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-struct-field-var-array-array.vert create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions.vert create mode 100644 tests/spec/arb_arrays_of_arrays/compiler/initializer-three-dimensions2.vert