Simplify jit.dg/test-combination.c
authorDavid Malcolm <dmalcolm@redhat.com>
Fri, 9 Jan 2015 22:05:55 +0000 (22:05 +0000)
committerDavid Malcolm <dmalcolm@gcc.gnu.org>
Fri, 9 Jan 2015 22:05:55 +0000 (22:05 +0000)
gcc/testsuite/ChangeLog:
* jit.dg/test-threads.c (struct testcase): Move declaration
to jit.dg/all-non-failing-tests.h.
(testcases): Likewise.
* jit.dg/all-non-failing-tests.h (struct testcase): Move
declaration here from jit.dg/all-non-failing-tests.h.
(testcases): Likewise.
* jit.dg/test-combination.c (create_code): Eliminate spelling
out all of the testcases in favor of looping through the
"testcases" metadata.
(verify_code): Likewise.

From-SVN: r219413

gcc/testsuite/ChangeLog
gcc/testsuite/jit.dg/all-non-failing-tests.h
gcc/testsuite/jit.dg/test-combination.c
gcc/testsuite/jit.dg/test-threads.c

index 2aada90092bb99bb21a5346752351be18e4b0133..496ba92faf714522e9b36ad75f114e8b79a3ec5f 100644 (file)
@@ -1,3 +1,16 @@
+2015-01-09  David Malcolm  <dmalcolm@redhat.com>
+
+       * jit.dg/test-threads.c (struct testcase): Move declaration
+       to jit.dg/all-non-failing-tests.h.
+       (testcases): Likewise.
+       * jit.dg/all-non-failing-tests.h (struct testcase): Move
+       declaration here from jit.dg/all-non-failing-tests.h.
+       (testcases): Likewise.
+       * jit.dg/test-combination.c (create_code): Eliminate spelling
+       out all of the testcases in favor of looping through the
+       "testcases" metadata.
+       (verify_code): Likewise.
+
 2015-01-09  Jakub Jelinek  <jakub@redhat.com>
 
        PR rtl-optimization/64536
index 14211af220abc2cb018d3c5639f655c3d96395ff..82ce7368482a9ffc86740dcb0b294d1c6e3debf4 100644 (file)
 #include "test-volatile.c"
 #undef create_code
 #undef verify_code
+
+/* Now expose the individual testcases as instances of this struct.  */
+
+struct testcase
+{
+  const char *m_name;
+  void (*m_hook_to_create_code) (gcc_jit_context *ctxt,
+                                void * user_data);
+  void (*m_hook_to_verify_code) (gcc_jit_context *ctxt,
+                                gcc_jit_result *result);
+};
+
+const struct testcase testcases[] = {
+  {"accessing_struct",
+   create_code_accessing_struct,
+   verify_code_accessing_struct},
+  {"accessing_union",
+   create_code_accessing_union,
+   verify_code_accessing_union},
+  {"arith_overflow",
+   create_code_arith_overflow,
+   verify_code_arith_overflow},
+  {"array_as_pointer",
+   create_code_array_as_pointer,
+   verify_code_array_as_pointer},
+  {"arrays",
+   create_code_arrays,
+   verify_code_arrays},
+  {"calling_external_function",
+   create_code_calling_external_function,
+   verify_code_calling_external_function},
+  {"calling_function_ptr",
+   create_code_calling_function_ptr,
+   verify_code_calling_function_ptr},
+  {"constants",
+   create_code_constants,
+   verify_code_constants},
+  {"dot_product",
+   create_code_dot_product,
+   verify_code_dot_product},
+  {"expressions",
+   create_code_expressions,
+   verify_code_expressions},
+  {"factorial",
+   create_code_factorial,
+   verify_code_factorial},
+  {"fibonacci",
+   create_code_fibonacci,
+   verify_code_fibonacci},
+  {"functions",
+   create_code_functions,
+   verify_code_functions},
+  {"hello_world",
+   create_code_hello_world,
+   verify_code_hello_world},
+  {"linked_list",
+   create_code_linked_list,
+   verify_code_linked_list},
+  {"long_names",
+   create_code_long_names,
+   verify_code_long_names},
+  {"quadratic",
+   create_code_quadratic,
+   verify_code_quadratic},
+  {"nested_loop",
+   create_code_nested_loop,
+   verify_code_nested_loop},
+  {"reading_struct ",
+   create_code_reading_struct ,
+   verify_code_reading_struct },
+  {"string_literal",
+   create_code_string_literal,
+   verify_code_string_literal},
+  {"sum_of_squares",
+   create_code_sum_of_squares,
+   verify_code_sum_of_squares},
+  {"types",
+   create_code_types,
+   verify_code_types},
+  {"using_global",
+   create_code_using_global,
+   verify_code_using_global},
+  {"volatile",
+   create_code_volatile,
+   verify_code_volatile}
+};
+
+const int num_testcases = (sizeof (testcases) / sizeof (testcases[0]));
index 5131613190978135d7d1d03d420bda45ec37fa9c..a9f3347c9e05d2ba160beccb79e74d25267942fd 100644 (file)
 void
 create_code (gcc_jit_context *ctxt, void * user_data)
 {
-  create_code_accessing_struct (ctxt, user_data);
-  create_code_accessing_union (ctxt, user_data);
-  create_code_arith_overflow (ctxt, user_data);
-  create_code_array_as_pointer (ctxt, user_data);
-  create_code_arrays (ctxt, user_data);
-  create_code_calling_external_function (ctxt, user_data);
-  create_code_calling_function_ptr (ctxt, user_data);
-  create_code_constants (ctxt, user_data);
-  create_code_dot_product (ctxt, user_data);
-  create_code_expressions (ctxt, user_data);
-  create_code_factorial (ctxt, user_data);
-  create_code_fibonacci (ctxt, user_data);
-  create_code_functions (ctxt, user_data);
-  create_code_hello_world (ctxt, user_data);
-  create_code_linked_list (ctxt, user_data);
-  create_code_long_names (ctxt, user_data);
-  create_code_quadratic (ctxt, user_data);
-  create_code_nested_loop (ctxt, user_data);
-  create_code_reading_struct  (ctxt, user_data);
-  create_code_string_literal (ctxt, user_data);
-  create_code_sum_of_squares (ctxt, user_data);
-  create_code_types (ctxt, user_data);
-  create_code_using_global (ctxt, user_data);
-  create_code_volatile (ctxt, user_data);
+  for (int i = 0; i < num_testcases; i++)
+    testcases[i].m_hook_to_create_code (ctxt, user_data);
 }
 
 void
 verify_code (gcc_jit_context *ctxt, gcc_jit_result *result)
 {
-  verify_code_accessing_struct (ctxt, result);
-  verify_code_accessing_union (ctxt, result);
-  verify_code_arith_overflow (ctxt, result);
-  verify_code_array_as_pointer (ctxt, result);
-  verify_code_arrays (ctxt, result);
-  verify_code_calling_external_function (ctxt, result);
-  verify_code_calling_function_ptr (ctxt, result);
-  verify_code_constants (ctxt, result);
-  verify_code_dot_product (ctxt, result);
-  verify_code_expressions (ctxt, result);
-  verify_code_factorial (ctxt, result);
-  verify_code_fibonacci (ctxt, result);
-  verify_code_functions (ctxt, result);
-  verify_code_hello_world (ctxt, result);
-  verify_code_linked_list (ctxt, result);
-  verify_code_long_names (ctxt, result);
-  verify_code_quadratic (ctxt, result);
-  verify_code_nested_loop (ctxt, result);
-  verify_code_reading_struct (ctxt, result);
-  verify_code_string_literal (ctxt, result);
-  verify_code_sum_of_squares (ctxt, result);
-  verify_code_types (ctxt, result);
-  verify_code_using_global (ctxt, result);
-  verify_code_volatile (ctxt, result);
+  for (int i = 0; i < num_testcases; i++)
+    testcases[i].m_hook_to_verify_code (ctxt, result);
 }
index 13e414db878cd3d56a09064fe5f37bc4039c495f..d4e53b259df07a2234c67a7e5138416d6478bb44 100644 (file)
@@ -91,92 +91,6 @@ note (const char* fmt, ...)
 #undef COMBINED_TEST
 #include "harness.h"
 
-struct testcase
-{
-  const char *m_name;
-  void (*m_hook_to_create_code) (gcc_jit_context *ctxt,
-                                void * user_data);
-  void (*m_hook_to_verify_code) (gcc_jit_context *ctxt,
-                                gcc_jit_result *result);
-};
-
-const struct testcase testcases[] = {
-  {"accessing_struct",
-   create_code_accessing_struct,
-   verify_code_accessing_struct},
-  {"accessing_union",
-   create_code_accessing_union,
-   verify_code_accessing_union},
-  {"arith_overflow",
-   create_code_arith_overflow,
-   verify_code_arith_overflow},
-  {"array_as_pointer",
-   create_code_array_as_pointer,
-   verify_code_array_as_pointer},
-  {"arrays",
-   create_code_arrays,
-   verify_code_arrays},
-  {"calling_external_function",
-   create_code_calling_external_function,
-   verify_code_calling_external_function},
-  {"calling_function_ptr",
-   create_code_calling_function_ptr,
-   verify_code_calling_function_ptr},
-  {"constants",
-   create_code_constants,
-   verify_code_constants},
-  {"dot_product",
-   create_code_dot_product,
-   verify_code_dot_product},
-  {"expressions",
-   create_code_expressions,
-   verify_code_expressions},
-  {"factorial",
-   create_code_factorial,
-   verify_code_factorial},
-  {"fibonacci",
-   create_code_fibonacci,
-   verify_code_fibonacci},
-  {"functions",
-   create_code_functions,
-   verify_code_functions},
-  {"hello_world",
-   create_code_hello_world,
-   verify_code_hello_world},
-  {"linked_list",
-   create_code_linked_list,
-   verify_code_linked_list},
-  {"long_names",
-   create_code_long_names,
-   verify_code_long_names},
-  {"quadratic",
-   create_code_quadratic,
-   verify_code_quadratic},
-  {"nested_loop",
-   create_code_nested_loop,
-   verify_code_nested_loop},
-  {"reading_struct ",
-   create_code_reading_struct ,
-   verify_code_reading_struct },
-  {"string_literal",
-   create_code_string_literal,
-   verify_code_string_literal},
-  {"sum_of_squares",
-   create_code_sum_of_squares,
-   verify_code_sum_of_squares},
-  {"types",
-   create_code_types,
-   verify_code_types},
-  {"using_global",
-   create_code_using_global,
-   verify_code_using_global},
-  {"volatile",
-   create_code_volatile,
-   verify_code_volatile}
-};
-
-const int num_testcases = (sizeof (testcases) / sizeof (testcases[0]));
-
 struct thread_data
 {
   pthread_t m_tid;