Come up with selftests for dbgcnt.
authorMartin Liska <mliska@suse.cz>
Wed, 13 Nov 2019 15:13:16 +0000 (16:13 +0100)
committerMartin Liska <marxin@gcc.gnu.org>
Wed, 13 Nov 2019 15:13:16 +0000 (15:13 +0000)
2019-11-13  Martin Liska  <mliska@suse.cz>

* dbgcnt.c (test_sorted_dbg_counters): New.
(dbgcnt_c_tests): Likewise.
* selftest-run-tests.c (selftest::run_tests): Likewise.
* selftest.h (dbgcnt_c_tests): Likewise.

From-SVN: r278144

gcc/ChangeLog
gcc/dbgcnt.c
gcc/selftest-run-tests.c
gcc/selftest.h

index 05046e6b1b14e42698300665150d66c6a77920e9..fdc7805d5740e751256245bd0f3fc58dd7e70bc5 100644 (file)
@@ -1,3 +1,10 @@
+2019-11-13  Martin Liska  <mliska@suse.cz>
+
+       * dbgcnt.c (test_sorted_dbg_counters): New.
+       (dbgcnt_c_tests): Likewise.
+       * selftest-run-tests.c (selftest::run_tests): Likewise.
+       * selftest.h (dbgcnt_c_tests): Likewise.
+
 2019-11-13  Jan Hubicka  <hubicka@ucw.cz>
            Martin Jambor  <mjambor@suse.cz>
 
index 283a4575425832d855dd7dad400579ddf3878388..c675c644007d8cf7549a4103a2c5fa1d2d0f275b 100644 (file)
@@ -24,6 +24,7 @@ See dbgcnt.def for usage information.  */
 #include "coretypes.h"
 #include "diagnostic-core.h"
 #include "dumpfile.h"
+#include "selftest.h"
 
 #include "dbgcnt.h"
 
@@ -245,3 +246,26 @@ dbg_cnt_list_all_counters (void)
     }
   printf ("\n");
 }
+
+#if CHECKING_P
+
+namespace selftest {
+
+/* Selftests.  */
+
+static void
+test_sorted_dbg_counters ()
+{
+  for (unsigned i = 0; i < debug_counter_number_of_counters - 1; i++)
+    ASSERT_LT (strcmp (map[i].name, map[i + 1].name), 0);
+}
+
+void
+dbgcnt_c_tests ()
+{
+  test_sorted_dbg_counters ();
+}
+
+} // namespace selftest
+
+#endif /* #if CHECKING_P */
index 6ed7d82beeb76080348033dad5264f695a02f360..a35452caf48027a4f475384e30d8e20926fc079f 100644 (file)
@@ -108,6 +108,7 @@ selftest::run_tests ()
   store_merging_c_tests ();
   predict_c_tests ();
   simplify_rtx_c_tests ();
+  dbgcnt_c_tests ();
 
   /* Run any lang-specific selftests.  */
   lang_hooks.run_lang_selftests ();
index 933c0aab539e4987009435fd91d3e6bddc971b14..cc7212317c3047f0e18bf06773730fb93d342f69 100644 (file)
@@ -254,6 +254,7 @@ extern void vec_c_tests ();
 extern void vec_perm_indices_c_tests ();
 extern void wide_int_cc_tests ();
 extern void opt_proposer_c_tests ();
+extern void dbgcnt_c_tests ();
 
 extern int num_passes;