[Piglit] [PATCH V3 02/11] tests/spec: ARB_arrays_of_arrays add more initializer tests

Timothy Arceri t_arceri at yahoo.com.au
Wed Jan 29 23:23:48 PST 2014


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 at 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.8.4.2



More information about the Piglit mailing list