Moving iree/base/flags.h to iree/base/internal/.
diff --git a/iree/base/BUILD b/iree/base/BUILD
index 56376cc..4ba9687 100644
--- a/iree/base/BUILD
+++ b/iree/base/BUILD
@@ -107,16 +107,6 @@
 )
 
 cc_library(
-    name = "flags",
-    srcs = ["flags.cc"],
-    hdrs = ["flags.h"],
-    deps = [
-        ":api",
-        "@com_google_absl//absl/flags:parse",
-    ],
-)
-
-cc_library(
     name = "flatcc",
     hdrs = ["flatcc.h"],
     deps = [
diff --git a/iree/base/CMakeLists.txt b/iree/base/CMakeLists.txt
index 33acdaa..ef78e23 100644
--- a/iree/base/CMakeLists.txt
+++ b/iree/base/CMakeLists.txt
@@ -85,19 +85,6 @@
 
 iree_cc_library(
   NAME
-    flags
-  HDRS
-    "flags.h"
-  SRCS
-    "flags.cc"
-  DEPS
-    ::api
-    absl::flags_parse
-  PUBLIC
-)
-
-iree_cc_library(
-  NAME
     flatcc
   HDRS
     "flatcc.h"
diff --git a/iree/base/internal/BUILD b/iree/base/internal/BUILD
index 8f0264f..91840b1 100644
--- a/iree/base/internal/BUILD
+++ b/iree/base/internal/BUILD
@@ -140,6 +140,16 @@
 )
 
 cc_library(
+    name = "flags",
+    srcs = ["flags.cc"],
+    hdrs = ["flags.h"],
+    deps = [
+        "//iree/base:api",
+        "@com_google_absl//absl/flags:parse",
+    ],
+)
+
+cc_library(
     name = "main",
     srcs = [
         "main_posix.cc",
diff --git a/iree/base/internal/CMakeLists.txt b/iree/base/internal/CMakeLists.txt
index dfd2942..e8db6b4 100644
--- a/iree/base/internal/CMakeLists.txt
+++ b/iree/base/internal/CMakeLists.txt
@@ -149,6 +149,19 @@
 
 iree_cc_library(
   NAME
+    flags
+  HDRS
+    "flags.h"
+  SRCS
+    "flags.cc"
+  DEPS
+    absl::flags_parse
+    iree::base::api
+  PUBLIC
+)
+
+iree_cc_library(
+  NAME
     main
   HDRS
     "main.h"
diff --git a/iree/base/flags.cc b/iree/base/internal/flags.cc
similarity index 97%
rename from iree/base/flags.cc
rename to iree/base/internal/flags.cc
index 4edd463..8d0145a 100644
--- a/iree/base/flags.cc
+++ b/iree/base/internal/flags.cc
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-#include "iree/base/flags.h"
+#include "iree/base/internal/flags.h"
 
 #include <stdlib.h>
 #include <string.h>
diff --git a/iree/base/flags.h b/iree/base/internal/flags.h
similarity index 94%
rename from iree/base/flags.h
rename to iree/base/internal/flags.h
index 9368f68..f98e19b 100644
--- a/iree/base/flags.h
+++ b/iree/base/internal/flags.h
@@ -12,8 +12,8 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-#ifndef IREE_BASE_FLAGS_H_
-#define IREE_BASE_FLAGS_H_
+#ifndef IREE_BASE_INTERNAL_FLAGS_H_
+#define IREE_BASE_INTERNAL_FLAGS_H_
 
 #include "iree/base/api.h"
 
@@ -56,4 +56,4 @@
 // typo and shut down your entire server/sandbox/Android app/etc.
 void iree_flags_parse_checked(int* argc, char*** argv);
 
-#endif  // IREE_BASE_FLAGS_H_
+#endif  // IREE_BASE_INTERNAL_FLAGS_H_
diff --git a/iree/hal/vulkan/registration/BUILD b/iree/hal/vulkan/registration/BUILD
index 56f3026..c8e40ac 100644
--- a/iree/hal/vulkan/registration/BUILD
+++ b/iree/hal/vulkan/registration/BUILD
@@ -36,9 +36,9 @@
     ],
     deps = [
         "//iree/base:core_headers",
-        "//iree/base:flags",
         "//iree/base:status",
         "//iree/base:tracing",
+        "//iree/base/internal:flags",
         "//iree/hal:api",
         "//iree/hal/vulkan",
         "@com_google_absl//absl/flags:flag",
diff --git a/iree/hal/vulkan/registration/CMakeLists.txt b/iree/hal/vulkan/registration/CMakeLists.txt
index 7ae1dbe..44e1df9 100644
--- a/iree/hal/vulkan/registration/CMakeLists.txt
+++ b/iree/hal/vulkan/registration/CMakeLists.txt
@@ -26,7 +26,7 @@
   DEPS
     absl::flags
     iree::base::core_headers
-    iree::base::flags
+    iree::base::internal::flags
     iree::base::status
     iree::base::tracing
     iree::hal::api
diff --git a/iree/hal/vulkan/registration/driver_module.cc b/iree/hal/vulkan/registration/driver_module.cc
index cf396f2..76c228f 100644
--- a/iree/hal/vulkan/registration/driver_module.cc
+++ b/iree/hal/vulkan/registration/driver_module.cc
@@ -17,7 +17,7 @@
 #include <inttypes.h>
 
 #include "absl/flags/flag.h"
-#include "iree/base/flags.h"
+#include "iree/base/internal/flags.h"
 #include "iree/base/status.h"
 #include "iree/base/target_platform.h"
 #include "iree/base/tracing.h"
diff --git a/iree/testing/BUILD b/iree/testing/BUILD
index f31a4d5..76c0323 100644
--- a/iree/testing/BUILD
+++ b/iree/testing/BUILD
@@ -25,7 +25,7 @@
     testonly = True,
     srcs = ["benchmark_main.cc"],
     deps = [
-        "//iree/base:flags",
+        "//iree/base/internal:flags",
         "@com_google_benchmark//:benchmark",
     ],
 )
@@ -52,7 +52,7 @@
     tags = ["keep_dep"],
     deps = [
         ":gtest",
-        "//iree/base:flags",
+        "//iree/base/internal:flags",
         "@com_google_googletest//:gtest",
     ],
 )
diff --git a/iree/testing/CMakeLists.txt b/iree/testing/CMakeLists.txt
index c790757..850f287 100644
--- a/iree/testing/CMakeLists.txt
+++ b/iree/testing/CMakeLists.txt
@@ -21,7 +21,7 @@
     "benchmark_main.cc"
   DEPS
     benchmark
-    iree::base::flags
+    iree::base::internal::flags
   TESTONLY
   PUBLIC
 )
@@ -51,7 +51,7 @@
     ::gtest
     gmock
     gtest
-    iree::base::flags
+    iree::base::internal::flags
   TESTONLY
   PUBLIC
 )
diff --git a/iree/testing/benchmark_main.cc b/iree/testing/benchmark_main.cc
index 690f456..eeb5224 100644
--- a/iree/testing/benchmark_main.cc
+++ b/iree/testing/benchmark_main.cc
@@ -13,7 +13,7 @@
 // limitations under the License.
 
 #include "benchmark/benchmark.h"
-#include "iree/base/flags.h"
+#include "iree/base/internal/flags.h"
 
 namespace iree {
 
diff --git a/iree/testing/gtest_main.cc b/iree/testing/gtest_main.cc
index b8f4582..c3d456c 100644
--- a/iree/testing/gtest_main.cc
+++ b/iree/testing/gtest_main.cc
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-#include "iree/base/flags.h"
+#include "iree/base/internal/flags.h"
 #include "iree/testing/gtest.h"
 
 extern "C" int main(int argc, char** argv) {
diff --git a/iree/testing/vulkan/CMakeLists.txt b/iree/testing/vulkan/CMakeLists.txt
index 9d4be3e..f263f0e 100644
--- a/iree/testing/vulkan/CMakeLists.txt
+++ b/iree/testing/vulkan/CMakeLists.txt
@@ -64,8 +64,8 @@
   DEPS
     ::vulkan_gui_util
     absl::flags
-    iree::base::flags
     iree::base::internal::file_io
+    iree::base::internal::flags
     iree::base::internal::main
     iree::base::status
     iree::base::tracing
diff --git a/iree/testing/vulkan/iree-run-module-vulkan-gui-main.cc b/iree/testing/vulkan/iree-run-module-vulkan-gui-main.cc
index 8aad180..077cd01 100644
--- a/iree/testing/vulkan/iree-run-module-vulkan-gui-main.cc
+++ b/iree/testing/vulkan/iree-run-module-vulkan-gui-main.cc
@@ -19,8 +19,8 @@
 
 // Other dependencies (helpers, etc.)
 #include "absl/flags/flag.h"
-#include "iree/base/flags.h"
 #include "iree/base/internal/file_io.h"
+#include "iree/base/internal/flags.h"
 #include "iree/base/internal/main.h"
 #include "iree/base/status.h"
 #include "iree/hal/vulkan/registration/driver_module.h"
diff --git a/iree/tools/BUILD b/iree/tools/BUILD
index 40fae17..bc9c3b1 100644
--- a/iree/tools/BUILD
+++ b/iree/tools/BUILD
@@ -30,10 +30,10 @@
     testonly = True,
     srcs = ["iree-benchmark-module-main.cc"],
     deps = [
-        "//iree/base:flags",
         "//iree/base:status",
         "//iree/base:tracing",
         "//iree/base/internal:file_io",
+        "//iree/base/internal:flags",
         "//iree/hal/drivers",
         "//iree/modules/hal",
         "//iree/tools/utils:vm_util",
@@ -54,10 +54,10 @@
     deps = [
         "//iree/base:api",
         "//iree/base:core_headers",
-        "//iree/base:flags",
         "//iree/base:status",
         "//iree/base:tracing",
         "//iree/base/internal:file_io",
+        "//iree/base/internal:flags",
         "//iree/hal/drivers",
         "//iree/modules/check:native_module",
         "//iree/modules/hal",
@@ -240,9 +240,9 @@
         ":init_passes_and_dialects",
         ":init_targets",
         "//iree/base:api",
-        "//iree/base:flags",
         "//iree/base:status",
         "//iree/base:tracing",
+        "//iree/base/internal:flags",
         "//iree/compiler/Dialect/Flow/Transforms",
         "//iree/compiler/Dialect/HAL/Transforms",
         "//iree/compiler/Dialect/IREE/Transforms",
@@ -271,10 +271,10 @@
     name = "iree-run-module",
     srcs = ["iree-run-module-main.cc"],
     deps = [
-        "//iree/base:flags",
         "//iree/base:status",
         "//iree/base:tracing",
         "//iree/base/internal:file_io",
+        "//iree/base/internal:flags",
         "//iree/hal/drivers",
         "//iree/modules/hal",
         "//iree/tools/utils:vm_util",
diff --git a/iree/tools/CMakeLists.txt b/iree/tools/CMakeLists.txt
index 0cb699d..fc141a1 100644
--- a/iree/tools/CMakeLists.txt
+++ b/iree/tools/CMakeLists.txt
@@ -64,8 +64,8 @@
     absl::flags_usage
     absl::strings
     benchmark
-    iree::base::flags
     iree::base::internal::file_io
+    iree::base::internal::flags
     iree::base::status
     iree::base::tracing
     iree::hal::drivers
@@ -89,8 +89,8 @@
     absl::strings
     iree::base::api
     iree::base::core_headers
-    iree::base::flags
     iree::base::internal::file_io
+    iree::base::internal::flags
     iree::base::status
     iree::base::tracing
     iree::hal::drivers
@@ -124,8 +124,8 @@
   DEPS
     absl::flags
     absl::strings
-    iree::base::flags
     iree::base::internal::file_io
+    iree::base::internal::flags
     iree::base::status
     iree::base::tracing
     iree::hal::drivers
@@ -363,7 +363,7 @@
       absl::span
       absl::strings
       iree::base::api
-      iree::base::flags
+      iree::base::internal::flags
       iree::base::status
       iree::base::tracing
       iree::compiler::Dialect::Flow::Transforms
diff --git a/iree/tools/iree-benchmark-module-main.cc b/iree/tools/iree-benchmark-module-main.cc
index 5851853..0bc1825 100644
--- a/iree/tools/iree-benchmark-module-main.cc
+++ b/iree/tools/iree-benchmark-module-main.cc
@@ -17,8 +17,8 @@
 #include "absl/flags/usage.h"
 #include "absl/strings/string_view.h"
 #include "benchmark/benchmark.h"
-#include "iree/base/flags.h"
 #include "iree/base/internal/file_io.h"
+#include "iree/base/internal/flags.h"
 #include "iree/base/status.h"
 #include "iree/base/tracing.h"
 #include "iree/hal/drivers/init.h"
diff --git a/iree/tools/iree-check-module-main.cc b/iree/tools/iree-check-module-main.cc
index 16f1c80..2c63bf5 100644
--- a/iree/tools/iree-check-module-main.cc
+++ b/iree/tools/iree-check-module-main.cc
@@ -18,8 +18,8 @@
 #include "absl/strings/match.h"
 #include "absl/strings/string_view.h"
 #include "iree/base/api.h"
-#include "iree/base/flags.h"
 #include "iree/base/internal/file_io.h"
+#include "iree/base/internal/flags.h"
 #include "iree/base/status.h"
 #include "iree/base/target_platform.h"
 #include "iree/base/tracing.h"
diff --git a/iree/tools/iree-run-mlir-main.cc b/iree/tools/iree-run-mlir-main.cc
index f122226..4956a86 100644
--- a/iree/tools/iree-run-mlir-main.cc
+++ b/iree/tools/iree-run-mlir-main.cc
@@ -44,7 +44,7 @@
 #include "absl/strings/string_view.h"
 #include "absl/types/span.h"
 #include "iree/base/api.h"
-#include "iree/base/flags.h"
+#include "iree/base/internal/flags.h"
 #include "iree/base/status.h"
 #include "iree/base/tracing.h"
 #include "iree/compiler/Dialect/Flow/Transforms/Passes.h"
diff --git a/iree/tools/iree-run-module-main.cc b/iree/tools/iree-run-module-main.cc
index ed08de7..f770b22 100644
--- a/iree/tools/iree-run-module-main.cc
+++ b/iree/tools/iree-run-module-main.cc
@@ -16,8 +16,8 @@
 
 #include "absl/flags/flag.h"
 #include "absl/strings/string_view.h"
-#include "iree/base/flags.h"
 #include "iree/base/internal/file_io.h"
+#include "iree/base/internal/flags.h"
 #include "iree/base/status.h"
 #include "iree/base/tracing.h"
 #include "iree/hal/drivers/init.h"