Add a |dcheck_is_configurable| build argument, independent of SyzyASAN.

Previously we gated run-time-configurable DCHECKs on the |is_syzyasan|
argument, to have them built-in to Chrome Canary SyzyASAN binaries.

We implement |dcheck_is_configurable| as a macro define rather than via
a buildflag, because Chromium currently has too many components with
undeclared dependencies on //base for introducing a new dependency of
//base/logging.h on a generated buildflags_header() to be safe.

Bug: 812058
Change-Id: Iac48c88e0c5964cc8bceac6c444e44f84133120e
Reviewed-on: https://chromium-review.googlesource.com/974904
Reviewed-by: Nick Carter <[email protected]>
Reviewed-by: Daniel Cheng <[email protected]>
Reviewed-by: Dirk Pranke <[email protected]>
Reviewed-by: Scott Violet <[email protected]>
Commit-Queue: Wez <[email protected]>
Cr-Commit-Position: refs/heads/master@{#545542}
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
index 424c8529..d9649a8 100644
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -3421,11 +3421,11 @@
      flag_descriptions::kSoundContentSettingDescription, kOsAll,
      FEATURE_VALUE_TYPE(features::kSoundContentSetting)},
 
-#if DCHECK_IS_ON() && defined(SYZYASAN)
-    {"dcheck-is-fatal", flag_descriptions::kSyzyAsanDcheckIsFatalName,
-     flag_descriptions::kSyzyAsanDcheckIsFatalDescription, kOsWin,
-     FEATURE_VALUE_TYPE(base::kSyzyAsanDCheckIsFatalFeature)},
-#endif  // DCHECK_IS_ON() && defined(SYZYASAN)
+#if DCHECK_IS_CONFIGURABLE
+    {"dcheck-is-fatal", flag_descriptions::kDcheckIsFatalName,
+     flag_descriptions::kDcheckIsFatalDescription, kOsWin,
+     FEATURE_VALUE_TYPE(base::kDCheckIsFatalFeature)},
+#endif  // DCHECK_IS_CONFIGURABLE
 
 #if defined(OS_CHROMEOS)
     {"sys-internals", flag_descriptions::kSysInternalsName,