Commit 3089f8b5 by Paolo Bonzini

configure.ac: Add --enable-checking=df.

2007-06-14  Paolo Bonzini  <bonzini@gnu.org>

	* configure.ac: Add --enable-checking=df.  Explicitly mention that
	the variables are initialized as for "release".
	* df-core.c: Use it.
	* configure: Regenerate.
	* config.in: Regenerate.

From-SVN: r125698
parent 20dca97b
...@@ -46,15 +46,22 @@ ...@@ -46,15 +46,22 @@
#endif #endif
/* Define to 1 to specify that we are using the BID decimal floating point
format instead of DPD */
#ifndef USED_FOR_TARGET
#undef ENABLE_DECIMAL_BID_FORMAT
#endif
/* Define to 1 to enable decimal float extension to C. */ /* Define to 1 to enable decimal float extension to C. */
#ifndef USED_FOR_TARGET #ifndef USED_FOR_TARGET
#undef ENABLE_DECIMAL_FLOAT #undef ENABLE_DECIMAL_FLOAT
#endif #endif
/* Define to 1 to say we are using the BID decimal format */ /* Define if you want more run-time sanity checks for dataflow. */
#ifndef USED_FOR_TARGET #ifndef USED_FOR_TARGET
#undef ENABLE_DECIMAL_BID_FORMAT #undef ENABLE_DF_CHECKING
#endif #endif
......
...@@ -867,7 +867,7 @@ Optional Features: ...@@ -867,7 +867,7 @@ Optional Features:
enable expensive run-time checks. With LIST, enable expensive run-time checks. With LIST,
enable only specific categories of checks. enable only specific categories of checks.
Categories are: yes,no,all,none,release. Categories are: yes,no,all,none,release.
Flags are: assert,fold,gc,gcac,misc, Flags are: assert,df,fold,gc,gcac,misc,
rtlflag,rtl,runtime,tree,valgrind. rtlflag,rtl,runtime,tree,valgrind.
--enable-mapped-location location_t is fileline integer cookie --enable-mapped-location location_t is fileline integer cookie
--enable-coverage=LEVEL --enable-coverage=LEVEL
...@@ -6474,43 +6474,34 @@ else ...@@ -6474,43 +6474,34 @@ else
ac_checking_flags=release ac_checking_flags=release
fi fi
fi; fi;
ac_assert_checking=1
ac_checking=
ac_fold_checking=
ac_gc_checking=
ac_gc_always_collect=
ac_rtl_checking=
ac_rtlflag_checking=
ac_runtime_checking=1
ac_tree_checking=
ac_valgrind_checking=
IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="$IFS," IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="$IFS,"
for check in $ac_checking_flags for check in release,$ac_checking_flags
do do
case $check in case $check in
# these set all the flags to specific states # these set all the flags to specific states
yes) ac_assert_checking=1 ; ac_checking=1 ; yes) ac_assert_checking=1 ; ac_checking=1 ; ac_df_checking=1 ;
ac_fold_checking= ; ac_gc_checking=1 ; ac_fold_checking= ; ac_gc_checking=1 ;
ac_gc_always_collect= ; ac_rtl_checking= ; ac_gc_always_collect= ; ac_rtl_checking= ;
ac_rtlflag_checking=1 ; ac_runtime_checking=1 ; ac_rtlflag_checking=1 ; ac_runtime_checking=1 ;
ac_tree_checking=1 ; ac_valgrind_checking= ;; ac_tree_checking=1 ; ac_valgrind_checking= ;;
no|none) ac_assert_checking= ; ac_checking= ; no|none) ac_assert_checking= ; ac_checking= ; ac_df_checking= ;
ac_fold_checking= ; ac_gc_checking= ; ac_fold_checking= ; ac_gc_checking= ;
ac_gc_always_collect= ; ac_rtl_checking= ; ac_gc_always_collect= ; ac_rtl_checking= ;
ac_rtlflag_checking= ; ac_runtime_checking= ; ac_rtlflag_checking= ; ac_runtime_checking= ;
ac_tree_checking= ; ac_valgrind_checking= ;; ac_tree_checking= ; ac_valgrind_checking= ;;
all) ac_assert_checking=1 ; ac_checking=1 ; all) ac_assert_checking=1 ; ac_checking=1 ; ac_df_checking=1 ;
ac_fold_checking=1 ; ac_gc_checking=1 ; ac_fold_checking=1 ; ac_gc_checking=1 ;
ac_gc_always_collect=1 ; ac_rtl_checking=1 ; ac_gc_always_collect=1 ; ac_rtl_checking=1 ;
ac_rtlflag_checking=1 ; ac_runtime_checking=1 ; ac_rtlflag_checking=1 ; ac_runtime_checking=1 ;
ac_tree_checking=1 ; ac_valgrind_checking= ;; ac_tree_checking=1 ; ac_valgrind_checking= ;;
release) ac_assert_checking=1 ; ac_checking= ; release) ac_assert_checking=1 ; ac_checking= ; ac_df_checking= ;
ac_fold_checking= ; ac_gc_checking= ; ac_fold_checking= ; ac_gc_checking= ;
ac_gc_always_collect= ; ac_rtl_checking= ; ac_gc_always_collect= ; ac_rtl_checking= ;
ac_rtlflag_checking= ; ac_runtime_checking=1 ; ac_rtlflag_checking= ; ac_runtime_checking=1 ;
ac_tree_checking= ; ac_valgrind_checking= ;; ac_tree_checking= ; ac_valgrind_checking= ;;
# these enable particular checks # these enable particular checks
assert) ac_assert_checking=1 ;; assert) ac_assert_checking=1 ;;
df) ac_df_checking=1 ;;
fold) ac_fold_checking=1 ;; fold) ac_fold_checking=1 ;;
gc) ac_gc_checking=1 ;; gc) ac_gc_checking=1 ;;
gcac) ac_gc_always_collect=1 ;; gcac) ac_gc_always_collect=1 ;;
...@@ -6536,6 +6527,13 @@ _ACEOF ...@@ -6536,6 +6527,13 @@ _ACEOF
nocommon_flag=-fno-common nocommon_flag=-fno-common
fi fi
if test x$ac_df_checking != x ; then
cat >>confdefs.h <<\_ACEOF
#define ENABLE_DF_CHECKING 1
_ACEOF
fi
if test x$ac_assert_checking != x ; then if test x$ac_assert_checking != x ; then
...@@ -7675,7 +7673,7 @@ if test "${gcc_cv_prog_makeinfo_modern+set}" = set; then ...@@ -7675,7 +7673,7 @@ if test "${gcc_cv_prog_makeinfo_modern+set}" = set; then
else else
ac_prog_version=`$MAKEINFO --version 2>&1 | ac_prog_version=`$MAKEINFO --version 2>&1 |
sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'` sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'`
echo "configure:7678: version of makeinfo is $ac_prog_version" >&5 echo "configure:7676: version of makeinfo is $ac_prog_version" >&5
case $ac_prog_version in case $ac_prog_version in
'') gcc_cv_prog_makeinfo_modern=no;; '') gcc_cv_prog_makeinfo_modern=no;;
4.[4-9]*) 4.[4-9]*)
......
...@@ -435,7 +435,7 @@ AC_ARG_ENABLE(checking, ...@@ -435,7 +435,7 @@ AC_ARG_ENABLE(checking,
enable expensive run-time checks. With LIST, enable expensive run-time checks. With LIST,
enable only specific categories of checks. enable only specific categories of checks.
Categories are: yes,no,all,none,release. Categories are: yes,no,all,none,release.
Flags are: assert,fold,gc,gcac,misc, Flags are: assert,df,fold,gc,gcac,misc,
rtlflag,rtl,runtime,tree,valgrind.], rtlflag,rtl,runtime,tree,valgrind.],
[ac_checking_flags="${enableval}"],[ [ac_checking_flags="${enableval}"],[
# Determine the default checks. # Determine the default checks.
...@@ -444,43 +444,34 @@ if test x$is_release = x ; then ...@@ -444,43 +444,34 @@ if test x$is_release = x ; then
else else
ac_checking_flags=release ac_checking_flags=release
fi]) fi])
ac_assert_checking=1
ac_checking=
ac_fold_checking=
ac_gc_checking=
ac_gc_always_collect=
ac_rtl_checking=
ac_rtlflag_checking=
ac_runtime_checking=1
ac_tree_checking=
ac_valgrind_checking=
IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="$IFS," IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="$IFS,"
for check in $ac_checking_flags for check in release,$ac_checking_flags
do do
case $check in case $check in
# these set all the flags to specific states # these set all the flags to specific states
yes) ac_assert_checking=1 ; ac_checking=1 ; yes) ac_assert_checking=1 ; ac_checking=1 ; ac_df_checking=1 ;
ac_fold_checking= ; ac_gc_checking=1 ; ac_fold_checking= ; ac_gc_checking=1 ;
ac_gc_always_collect= ; ac_rtl_checking= ; ac_gc_always_collect= ; ac_rtl_checking= ;
ac_rtlflag_checking=1 ; ac_runtime_checking=1 ; ac_rtlflag_checking=1 ; ac_runtime_checking=1 ;
ac_tree_checking=1 ; ac_valgrind_checking= ;; ac_tree_checking=1 ; ac_valgrind_checking= ;;
no|none) ac_assert_checking= ; ac_checking= ; no|none) ac_assert_checking= ; ac_checking= ; ac_df_checking= ;
ac_fold_checking= ; ac_gc_checking= ; ac_fold_checking= ; ac_gc_checking= ;
ac_gc_always_collect= ; ac_rtl_checking= ; ac_gc_always_collect= ; ac_rtl_checking= ;
ac_rtlflag_checking= ; ac_runtime_checking= ; ac_rtlflag_checking= ; ac_runtime_checking= ;
ac_tree_checking= ; ac_valgrind_checking= ;; ac_tree_checking= ; ac_valgrind_checking= ;;
all) ac_assert_checking=1 ; ac_checking=1 ; all) ac_assert_checking=1 ; ac_checking=1 ; ac_df_checking=1 ;
ac_fold_checking=1 ; ac_gc_checking=1 ; ac_fold_checking=1 ; ac_gc_checking=1 ;
ac_gc_always_collect=1 ; ac_rtl_checking=1 ; ac_gc_always_collect=1 ; ac_rtl_checking=1 ;
ac_rtlflag_checking=1 ; ac_runtime_checking=1 ; ac_rtlflag_checking=1 ; ac_runtime_checking=1 ;
ac_tree_checking=1 ; ac_valgrind_checking= ;; ac_tree_checking=1 ; ac_valgrind_checking= ;;
release) ac_assert_checking=1 ; ac_checking= ; release) ac_assert_checking=1 ; ac_checking= ; ac_df_checking= ;
ac_fold_checking= ; ac_gc_checking= ; ac_fold_checking= ; ac_gc_checking= ;
ac_gc_always_collect= ; ac_rtl_checking= ; ac_gc_always_collect= ; ac_rtl_checking= ;
ac_rtlflag_checking= ; ac_runtime_checking=1 ; ac_rtlflag_checking= ; ac_runtime_checking=1 ;
ac_tree_checking= ; ac_valgrind_checking= ;; ac_tree_checking= ; ac_valgrind_checking= ;;
# these enable particular checks # these enable particular checks
assert) ac_assert_checking=1 ;; assert) ac_assert_checking=1 ;;
df) ac_df_checking=1 ;;
fold) ac_fold_checking=1 ;; fold) ac_fold_checking=1 ;;
gc) ac_gc_checking=1 ;; gc) ac_gc_checking=1 ;;
gcac) ac_gc_always_collect=1 ;; gcac) ac_gc_always_collect=1 ;;
...@@ -503,6 +494,10 @@ if test x$ac_checking != x ; then ...@@ -503,6 +494,10 @@ if test x$ac_checking != x ; then
nocommon_flag=-fno-common nocommon_flag=-fno-common
fi fi
AC_SUBST(nocommon_flag) AC_SUBST(nocommon_flag)
if test x$ac_df_checking != x ; then
AC_DEFINE(ENABLE_DF_CHECKING, 1,
[Define if you want more run-time sanity checks for dataflow.])
fi
if test x$ac_assert_checking != x ; then if test x$ac_assert_checking != x ; then
AC_DEFINE(ENABLE_ASSERT_CHECKING, 1, AC_DEFINE(ENABLE_ASSERT_CHECKING, 1,
[Define if you want assertions enabled. This is a cheap check.]) [Define if you want assertions enabled. This is a cheap check.])
......
...@@ -644,7 +644,7 @@ df_finish_pass (void) ...@@ -644,7 +644,7 @@ df_finish_pass (void)
int i; int i;
int removed = 0; int removed = 0;
#ifdef ENABLE_CHECKING #ifdef ENABLE_DF_CHECKING
enum df_changeable_flags saved_flags; enum df_changeable_flags saved_flags;
#endif #endif
...@@ -654,7 +654,7 @@ df_finish_pass (void) ...@@ -654,7 +654,7 @@ df_finish_pass (void)
df_maybe_reorganize_def_refs (DF_REF_ORDER_NO_TABLE); df_maybe_reorganize_def_refs (DF_REF_ORDER_NO_TABLE);
df_maybe_reorganize_use_refs (DF_REF_ORDER_NO_TABLE); df_maybe_reorganize_use_refs (DF_REF_ORDER_NO_TABLE);
#ifdef ENABLE_CHECKING #ifdef ENABLE_DF_CHECKING
saved_flags = df->changeable_flags; saved_flags = df->changeable_flags;
#endif #endif
...@@ -684,7 +684,7 @@ df_finish_pass (void) ...@@ -684,7 +684,7 @@ df_finish_pass (void)
df->analyze_subset = false; df->analyze_subset = false;
} }
#ifdef ENABLE_CHECKING #ifdef ENABLE_DF_CHECKING
/* Verification will fail in DF_NO_INSN_RESCAN. */ /* Verification will fail in DF_NO_INSN_RESCAN. */
if (!(saved_flags & DF_NO_INSN_RESCAN)) if (!(saved_flags & DF_NO_INSN_RESCAN))
{ {
...@@ -1040,7 +1040,7 @@ df_analyze_problem (struct dataflow *dflow, ...@@ -1040,7 +1040,7 @@ df_analyze_problem (struct dataflow *dflow,
{ {
timevar_push (dflow->problem->tv_id); timevar_push (dflow->problem->tv_id);
#ifdef ENABLE_CHECKING #ifdef ENABLE_DF_CHECKING
if (dflow->problem->verify_start_fun) if (dflow->problem->verify_start_fun)
dflow->problem->verify_start_fun (); dflow->problem->verify_start_fun ();
#endif #endif
...@@ -1062,7 +1062,7 @@ df_analyze_problem (struct dataflow *dflow, ...@@ -1062,7 +1062,7 @@ df_analyze_problem (struct dataflow *dflow,
if (dflow->problem->finalize_fun) if (dflow->problem->finalize_fun)
dflow->problem->finalize_fun (blocks_to_consider); dflow->problem->finalize_fun (blocks_to_consider);
#ifdef ENABLE_CHECKING #ifdef ENABLE_DF_CHECKING
if (dflow->problem->verify_end_fun) if (dflow->problem->verify_end_fun)
dflow->problem->verify_end_fun (); dflow->problem->verify_end_fun ();
#endif #endif
...@@ -1100,9 +1100,10 @@ df_analyze (void) ...@@ -1100,9 +1100,10 @@ df_analyze (void)
df_compute_regs_ever_live (false); df_compute_regs_ever_live (false);
df_process_deferred_rescans (); df_process_deferred_rescans ();
#ifdef ENABLE_CHECKING
if (dump_file) if (dump_file)
fprintf (dump_file, "df_analyze called\n"); fprintf (dump_file, "df_analyze called\n");
#ifdef ENABLE_DF_CHECKING
df_verify (); df_verify ();
#endif #endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment