Add explicit compiler option to enable test-specific features.
We can no longer rely on checking the "core.art" image name,
since we plan to remove it and use the shipped boot image.
This option enables test-specific features, such as $noinline$.
Test: ./art/test.py -r --optimizing --64
Bug: 147817558
Change-Id: Iadac6e1b0f46e83efd0551fb8462a6b268ad33d8
diff --git a/compiler/driver/compiler_options_map-inl.h b/compiler/driver/compiler_options_map-inl.h
index e8a425d..e80fb46 100644
--- a/compiler/driver/compiler_options_map-inl.h
+++ b/compiler/driver/compiler_options_map-inl.h
@@ -43,6 +43,7 @@
}
options->SetCompilerFilter(compiler_filter);
}
+ map.AssignIfExists(Base::CompileArtTest, &options->compile_art_test_);
map.AssignIfExists(Base::HugeMethodMaxThreshold, &options->huge_method_threshold_);
map.AssignIfExists(Base::LargeMethodMaxThreshold, &options->large_method_threshold_);
map.AssignIfExists(Base::NumDexMethodsThreshold, &options->num_dex_methods_threshold_);
@@ -110,6 +111,9 @@
.template WithType<std::string>()
.IntoKey(Map::CompilerFilter)
+ .Define({"--compile-art-test", "--no-compile-art-test"})
+ .WithValues({true, false})
+ .IntoKey(Map::CompileArtTest)
.Define("--huge-method-max=_")
.template WithType<unsigned int>()
.IntoKey(Map::HugeMethodMaxThreshold)