mirror of
https://github.com/dart-lang/sdk
synced 2024-10-03 00:29:50 +00:00
Remove dart_noopt and related parts from the VM.
dart_noopt is not needed anymore because we have testing and builbot integration of the real precompilation pipeline in place now. Fixes #24569 Fixes #25726 Fixes #25845 R=rmacnak@google.com Review-Url: https://codereview.chromium.org/2624393002 .
This commit is contained in:
parent
2ec03cba70
commit
bef4967ea1
24
BUILD.gn
24
BUILD.gn
|
@ -54,22 +54,6 @@ group("runtime_precompiled") {
|
|||
]
|
||||
}
|
||||
|
||||
group("runtime_and_noopt") {
|
||||
if (defined(is_fuchsia) && (is_fuchsia || is_fuchsia_host)) {
|
||||
testonly = true
|
||||
}
|
||||
deps = [
|
||||
"runtime/bin:dart",
|
||||
"runtime/bin:dart_bootstrap($host_toolchain)",
|
||||
"runtime/bin:dart_noopt",
|
||||
"runtime/bin:process_test",
|
||||
"runtime/bin:run_vm_tests",
|
||||
"runtime/bin:sample_extension",
|
||||
"runtime/bin:test_extension",
|
||||
"runtime/vm:patched_sdk",
|
||||
]
|
||||
}
|
||||
|
||||
action("create_sdk") {
|
||||
deps = [
|
||||
"runtime/bin:dart",
|
||||
|
@ -86,7 +70,10 @@ action("create_sdk") {
|
|||
]
|
||||
|
||||
sdk_lib_files = exec_script("tools/list_dart_files.py",
|
||||
[ "absolute", rebase_path("sdk/lib") ],
|
||||
[
|
||||
"absolute",
|
||||
rebase_path("sdk/lib"),
|
||||
],
|
||||
"list lines")
|
||||
|
||||
preamble_files =
|
||||
|
@ -106,8 +93,7 @@ action("create_sdk") {
|
|||
],
|
||||
"list lines")
|
||||
|
||||
inputs = sdk_lib_files + preamble_files + sdk_bin_files +
|
||||
[
|
||||
inputs = sdk_lib_files + preamble_files + sdk_bin_files + [
|
||||
"sdk/lib/dart_client.platform",
|
||||
"sdk/lib/dart_server.platform",
|
||||
"sdk/lib/dart_shared.platform",
|
||||
|
|
17
dart.gyp
17
dart.gyp
|
@ -46,23 +46,6 @@
|
|||
'runtime/dart-runtime.gyp:generate_patched_sdk#host',
|
||||
],
|
||||
},
|
||||
{
|
||||
# This is the target that is built on the VM build bots. It
|
||||
# must depend on anything that is required by the VM test
|
||||
# suites.
|
||||
'target_name': 'runtime_and_noopt',
|
||||
'type': 'none',
|
||||
'dependencies': [
|
||||
'runtime/dart-runtime.gyp:dart',
|
||||
'runtime/dart-runtime.gyp:dart_noopt',
|
||||
'runtime/dart-runtime.gyp:dart_bootstrap#host',
|
||||
'runtime/dart-runtime.gyp:run_vm_tests',
|
||||
'runtime/dart-runtime.gyp:process_test',
|
||||
'runtime/dart-runtime.gyp:test_extension',
|
||||
'runtime/dart-runtime.gyp:sample_extension',
|
||||
'runtime/dart-runtime.gyp:generate_patched_sdk#host',
|
||||
],
|
||||
},
|
||||
|
||||
{
|
||||
'target_name': 'create_sdk',
|
||||
|
|
|
@ -226,17 +226,6 @@ libdart_library("libdart") {
|
|||
]
|
||||
}
|
||||
|
||||
libdart_library("libdart_noopt") {
|
||||
extra_configs = [
|
||||
":dart_maybe_precompiled_runtime_config",
|
||||
":dart_precompiler_config",
|
||||
]
|
||||
extra_deps = [
|
||||
"vm:libdart_lib",
|
||||
"vm:libdart_vm_noopt",
|
||||
]
|
||||
}
|
||||
|
||||
libdart_library("libdart_precompiled_runtime") {
|
||||
extra_configs = [ ":dart_precompiled_runtime_config" ]
|
||||
extra_deps = [
|
||||
|
|
|
@ -620,16 +620,6 @@ dart_executable("dart") {
|
|||
extra_sources = [ "builtin_nolib.cc" ]
|
||||
}
|
||||
|
||||
dart_executable("dart_noopt") {
|
||||
extra_configs = [ "..:dart_precompiler_config" ]
|
||||
extra_deps = [
|
||||
"..:libdart_noopt",
|
||||
":dart_snapshot_cc",
|
||||
"../observatory:standalone_observatory_archive",
|
||||
]
|
||||
extra_sources = [ "builtin_nolib.cc" ]
|
||||
}
|
||||
|
||||
dart_executable("dart_precompiled_runtime") {
|
||||
extra_configs = [ "..:dart_precompiled_runtime_config" ]
|
||||
extra_deps = [
|
||||
|
|
|
@ -1166,63 +1166,6 @@
|
|||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
# dart binary with a snapshot of corelibs built in and support for testing
|
||||
# precompilation (aka --noopt)
|
||||
'target_name': 'dart_noopt',
|
||||
'type': 'executable',
|
||||
'dependencies': [
|
||||
'build_observatory#host',
|
||||
'generate_observatory_assets_cc_file#host',
|
||||
'generate_resources_cc_file#host',
|
||||
'generate_snapshot_file#host',
|
||||
'libdart_builtin',
|
||||
'libdart_io',
|
||||
'libdart_noopt',
|
||||
],
|
||||
'include_dirs': [
|
||||
'..',
|
||||
],
|
||||
'sources': [
|
||||
'main.cc',
|
||||
'builtin.h',
|
||||
'builtin_common.cc',
|
||||
'builtin_natives.cc',
|
||||
'builtin_nolib.cc',
|
||||
'io_natives.h',
|
||||
'vmservice_impl.cc',
|
||||
'vmservice_impl.h',
|
||||
'<(observatory_assets_cc_file)',
|
||||
'<(resources_cc_file)',
|
||||
'<(snapshot_cc_file)',
|
||||
],
|
||||
'defines': [
|
||||
'DART_PRECOMPILER',
|
||||
],
|
||||
'conditions': [
|
||||
['OS=="win"', {
|
||||
'link_settings': {
|
||||
'libraries': [ '-lws2_32.lib', '-lRpcrt4.lib', '-lwinmm.lib' ],
|
||||
},
|
||||
# Generate an import library on Windows, by exporting a function.
|
||||
# Extensions use this import library to link to the API in dart.exe.
|
||||
'msvs_settings': {
|
||||
'VCLinkerTool': {
|
||||
'AdditionalOptions': [ '/EXPORT:Dart_True' ],
|
||||
},
|
||||
},
|
||||
}],
|
||||
],
|
||||
'configurations': {
|
||||
'Dart_Linux_Base': {
|
||||
# Have the linker add all symbols to the dynamic symbol table
|
||||
# so that extensions can look them up dynamically in the binary.
|
||||
'ldflags': [
|
||||
'-rdynamic',
|
||||
],
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
# dart binary for running precompiled snapshots without the compiler.
|
||||
'target_name': 'dart_precompiled_runtime',
|
||||
|
|
|
@ -1055,7 +1055,7 @@ static void CreateAndWritePrecompiledSnapshot(
|
|||
Dart_Handle result;
|
||||
|
||||
// Precompile with specified embedder entry points
|
||||
result = Dart_Precompile(standalone_entry_points, true, NULL, 0);
|
||||
result = Dart_Precompile(standalone_entry_points, NULL, 0);
|
||||
CHECK_RESULT(result);
|
||||
|
||||
// Create a precompiled snapshot.
|
||||
|
|
|
@ -97,17 +97,6 @@ static bool parse_all = false;
|
|||
static bool use_blobs = false;
|
||||
|
||||
|
||||
// Global flag that is used to indicate that we want to compile everything in
|
||||
// the same way as precompilation before main, then continue running in the
|
||||
// same process.
|
||||
// Always set this with dart_noopt.
|
||||
#if defined(DART_PRECOMPILER) && !defined(DART_NO_SNAPSHOT)
|
||||
static const bool is_noopt = true;
|
||||
#else
|
||||
static const bool is_noopt = false;
|
||||
#endif
|
||||
|
||||
|
||||
extern const char* kPrecompiledVMIsolateSymbolName;
|
||||
extern const char* kPrecompiledIsolateSymbolName;
|
||||
extern const char* kPrecompiledInstructionsSymbolName;
|
||||
|
@ -730,10 +719,6 @@ static int ParseArguments(int argc,
|
|||
Log::PrintErr("Empty package file name specified.\n");
|
||||
return -1;
|
||||
}
|
||||
if (is_noopt && gen_snapshot_kind != kNone) {
|
||||
Log::PrintErr("Generating a snapshot with dart_noopt is invalid.\n");
|
||||
return -1;
|
||||
}
|
||||
if ((gen_snapshot_kind != kNone) && (snapshot_filename == NULL)) {
|
||||
Log::PrintErr("Generating a snapshot requires a filename (--snapshot).\n");
|
||||
return -1;
|
||||
|
@ -830,19 +815,6 @@ static Dart_Isolate CreateIsolateAndSetupHelper(const char* script_uri,
|
|||
char** error,
|
||||
int* exit_code) {
|
||||
ASSERT(script_uri != NULL);
|
||||
|
||||
const bool needs_load_port = true;
|
||||
#if defined(PRODUCT)
|
||||
const bool run_service_isolate = needs_load_port;
|
||||
#else
|
||||
// Always create the service isolate in DEBUG and RELEASE modes for profiling,
|
||||
// even if we don't need it for loading.
|
||||
const bool run_service_isolate = true;
|
||||
#endif // PRODUCT
|
||||
if (!run_service_isolate &&
|
||||
(strcmp(script_uri, DART_VM_SERVICE_ISOLATE_NAME) == 0)) {
|
||||
return NULL;
|
||||
}
|
||||
if (strcmp(script_uri, DART_KERNEL_ISOLATE_NAME) == 0) {
|
||||
if (!use_dart_frontend) {
|
||||
*error = strdup("Kernel isolate not supported.");
|
||||
|
@ -925,12 +897,10 @@ static Dart_Isolate CreateIsolateAndSetupHelper(const char* script_uri,
|
|||
result = DartUtils::PrepareForScriptLoading(false, trace_loading);
|
||||
CHECK_RESULT(result);
|
||||
|
||||
if (needs_load_port) {
|
||||
// Set up the load port provided by the service isolate so that we can
|
||||
// load scripts.
|
||||
result = DartUtils::SetupServiceLoadPort();
|
||||
CHECK_RESULT(result);
|
||||
}
|
||||
// Set up the load port provided by the service isolate so that we can
|
||||
// load scripts.
|
||||
result = DartUtils::SetupServiceLoadPort();
|
||||
CHECK_RESULT(result);
|
||||
|
||||
if (Dart_IsKernelIsolate(isolate)) {
|
||||
script_uri = frontend_filename;
|
||||
|
@ -1659,8 +1629,7 @@ bool RunMainIsolate(const char* script_name, CommandLineOptions* dart_options) {
|
|||
reinterpret_cast<IsolateData*>(Dart_IsolateData(isolate));
|
||||
result = Dart_LibraryImportLibrary(isolate_data->builtin_lib(), root_lib,
|
||||
Dart_Null());
|
||||
if (is_noopt || (gen_snapshot_kind == kAppAOT) ||
|
||||
(gen_snapshot_kind == kAppJIT)) {
|
||||
if ((gen_snapshot_kind == kAppAOT) || (gen_snapshot_kind == kAppJIT)) {
|
||||
// Load the embedder's portion of the VM service's Dart code so it will
|
||||
// be included in the app snapshot.
|
||||
if (!VmService::LoadForGenPrecompiled()) {
|
||||
|
@ -1684,7 +1653,7 @@ bool RunMainIsolate(const char* script_name, CommandLineOptions* dart_options) {
|
|||
return false;
|
||||
}
|
||||
|
||||
if (is_noopt || (gen_snapshot_kind == kAppAOT)) {
|
||||
if (gen_snapshot_kind == kAppAOT) {
|
||||
Dart_QualifiedFunctionName standalone_entry_points[] = {
|
||||
{"dart:_builtin", "::", "_getMainClosure"},
|
||||
{"dart:_builtin", "::", "_getPrintClosure"},
|
||||
|
@ -1737,9 +1706,8 @@ bool RunMainIsolate(const char* script_name, CommandLineOptions* dart_options) {
|
|||
file->Release();
|
||||
}
|
||||
|
||||
const bool reset_fields = gen_snapshot_kind == kAppAOT;
|
||||
result = Dart_Precompile(standalone_entry_points, reset_fields,
|
||||
feedback_buffer, feedback_length);
|
||||
result = Dart_Precompile(standalone_entry_points, feedback_buffer,
|
||||
feedback_length);
|
||||
if (feedback_buffer != NULL) {
|
||||
free(feedback_buffer);
|
||||
}
|
||||
|
@ -1967,7 +1935,7 @@ void main(int argc, char** argv) {
|
|||
vm_options.AddArgument("--collect_code=false");
|
||||
#endif
|
||||
}
|
||||
if ((gen_snapshot_kind == kAppAOT) || is_noopt) {
|
||||
if (gen_snapshot_kind == kAppAOT) {
|
||||
vm_options.AddArgument("--precompilation");
|
||||
}
|
||||
#if defined(DART_PRECOMPILED_RUNTIME)
|
||||
|
|
|
@ -229,7 +229,7 @@ main() {
|
|||
VMServiceEmbedderHooks.webServerControl = webServerControlCallback;
|
||||
// Always instantiate the vmservice object so that the exit message
|
||||
// can be delivered and waiting loaders can be cancelled.
|
||||
var service = new VMService();
|
||||
new VMService();
|
||||
if (_autoStart) {
|
||||
_lazyServerBoot();
|
||||
server.startup();
|
||||
|
|
|
@ -54,41 +54,6 @@
|
|||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
'target_name': 'libdart_noopt',
|
||||
'type': 'static_library',
|
||||
'dependencies': [
|
||||
'libdart_lib',
|
||||
'libdart_vm_noopt',
|
||||
'libdouble_conversion',
|
||||
'generate_version_cc_file#host',
|
||||
],
|
||||
'include_dirs': [
|
||||
'.',
|
||||
],
|
||||
'sources': [
|
||||
'include/dart_api.h',
|
||||
'include/dart_mirrors_api.h',
|
||||
'include/dart_native_api.h',
|
||||
'include/dart_tools_api.h',
|
||||
'vm/dart_api_impl.cc',
|
||||
'vm/debugger_api_impl.cc',
|
||||
'vm/mirrors_api_impl.cc',
|
||||
'vm/native_api_impl.cc',
|
||||
'vm/version.h',
|
||||
'<(version_cc_file)',
|
||||
],
|
||||
'defines': [
|
||||
# The only effect of DART_SHARED_LIB is to export the Dart API entries.
|
||||
'DART_SHARED_LIB',
|
||||
'DART_PRECOMPILER',
|
||||
],
|
||||
'direct_dependent_settings': {
|
||||
'include_dirs': [
|
||||
'include',
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
'target_name': 'libdart_precompiled_runtime',
|
||||
'type': 'static_library',
|
||||
|
|
|
@ -3202,15 +3202,13 @@ typedef struct {
|
|||
* reset_fields is true when we are about to create a precompilated snapshot.
|
||||
* Some fields are already been initialized as part of the loading logic, and
|
||||
* we want them to be reinitialized in the new process that will load the
|
||||
* snapshot. reset_fields is false for --noopt, which will continue running in
|
||||
* the same process.
|
||||
* snapshot.
|
||||
*
|
||||
* \return An error handle if a compilation error or runtime error running const
|
||||
* constructors was encountered.
|
||||
*/
|
||||
DART_EXPORT Dart_Handle
|
||||
Dart_Precompile(Dart_QualifiedFunctionName entry_points[],
|
||||
bool reset_fields,
|
||||
uint8_t* jit_feedback,
|
||||
intptr_t jit_feedback_length);
|
||||
|
||||
|
|
|
@ -130,15 +130,15 @@ DEFINE_NATIVE_ENTRY(VMService_SendObjectRootServiceMessage, 1) {
|
|||
|
||||
|
||||
DEFINE_NATIVE_ENTRY(VMService_OnStart, 0) {
|
||||
#ifndef PRODUCT
|
||||
if (!FLAG_support_service) {
|
||||
return Object::null();
|
||||
}
|
||||
if (FLAG_trace_service) {
|
||||
OS::Print("vm-service: Booting dart:vmservice library.\n");
|
||||
}
|
||||
// Boot the dart:vmservice library.
|
||||
ServiceIsolate::BootVmServiceLibrary();
|
||||
if (!FLAG_support_service) {
|
||||
return Object::null();
|
||||
}
|
||||
#ifndef PRODUCT
|
||||
// Register running isolates with service.
|
||||
RegisterRunningIsolatesVisitor register_isolates(thread);
|
||||
if (FLAG_trace_service) {
|
||||
|
|
|
@ -46,7 +46,7 @@ get_isolate_after_language_error_test: SkipByDesign
|
|||
[ $arch == arm ]
|
||||
process_service_test: Pass, Fail # Issue 24344
|
||||
|
||||
[ ($noopt || $compiler == precompiler) ]
|
||||
[ $compiler == precompiler ]
|
||||
*: Skip # Issue 24651
|
||||
|
||||
[ $runtime == vm ]
|
||||
|
|
|
@ -243,16 +243,16 @@ cc/IsolateReload_TypeIdentity: Fail # Issue 28349
|
|||
cc/IsolateReload_TypeIdentityGeneric: Fail # Issue 28349
|
||||
cc/IsolateReload_TypeIdentityParameter: Fail # Issue 28349
|
||||
|
||||
[ $noopt || $compiler == precompiler ]
|
||||
[ $compiler == precompiler ]
|
||||
dart/byte_array_test: Skip # Incompatible flag --disable_alloc_stubs_after_gc
|
||||
|
||||
[ $noopt || $compiler == precompiler || $mode == product ]
|
||||
[ $compiler == precompiler || $mode == product ]
|
||||
dart/redirection_type_shuffling_test: SkipByDesign # Imports dart:mirrors
|
||||
cc/CreateMirrorSystem: SkipByDesign # Imports dart:mirrors
|
||||
cc/CoreSnapshotSize: SkipByDesign # Imports dart:mirrors
|
||||
cc/StandaloneSnapshotSize: SkipByDesign # Imports dart:mirrors
|
||||
|
||||
[ $noopt || $runtime == dart_precompiled ]
|
||||
[ $runtime == dart_precompiled ]
|
||||
# StackTraces in precompilation omit inlined frames.
|
||||
dart/inline_stack_frame_test: Pass, RuntimeError
|
||||
dart/optimized_stacktrace_test: Pass, RuntimeError
|
||||
|
|
|
@ -6573,7 +6573,6 @@ Dart_Handle Dart_SaveJITFeedback(uint8_t** buffer, intptr_t* buffer_length) {
|
|||
|
||||
DART_EXPORT Dart_Handle
|
||||
Dart_Precompile(Dart_QualifiedFunctionName entry_points[],
|
||||
bool reset_fields,
|
||||
uint8_t* jit_feedback,
|
||||
intptr_t jit_feedback_length) {
|
||||
#if defined(TARGET_ARCH_IA32)
|
||||
|
@ -6594,8 +6593,8 @@ Dart_Precompile(Dart_QualifiedFunctionName entry_points[],
|
|||
return result;
|
||||
}
|
||||
CHECK_CALLBACK_STATE(T);
|
||||
const Error& error = Error::Handle(Precompiler::CompileAll(
|
||||
entry_points, reset_fields, jit_feedback, jit_feedback_length));
|
||||
const Error& error = Error::Handle(
|
||||
Precompiler::CompileAll(entry_points, jit_feedback, jit_feedback_length));
|
||||
if (!error.IsNull()) {
|
||||
return Api::NewHandle(T, error.raw());
|
||||
}
|
||||
|
|
|
@ -90,7 +90,8 @@ static void PrecompilationModeHandler(bool value) {
|
|||
FLAG_unbox_numeric_fields = false;
|
||||
|
||||
#if !defined(PRODUCT) && !defined(DART_PRECOMPILED_RUNTIME)
|
||||
// Set flags affecting runtime accordingly for dart_noopt.
|
||||
// Set flags affecting runtime accordingly for dart_bootstrap.
|
||||
// These flags are constants with PRODUCT and DART_PRECOMPILED_RUNTIME.
|
||||
FLAG_collect_code = false;
|
||||
FLAG_support_debugger = false;
|
||||
FLAG_deoptimize_alot = false; // Used in some tests.
|
||||
|
|
|
@ -220,12 +220,11 @@ TypeRangeCache::~TypeRangeCache() {
|
|||
|
||||
RawError* Precompiler::CompileAll(
|
||||
Dart_QualifiedFunctionName embedder_entry_points[],
|
||||
bool reset_fields,
|
||||
uint8_t* jit_feedback,
|
||||
intptr_t jit_feedback_length) {
|
||||
LongJumpScope jump;
|
||||
if (setjmp(*jump.Set()) == 0) {
|
||||
Precompiler precompiler(Thread::Current(), reset_fields);
|
||||
Precompiler precompiler(Thread::Current());
|
||||
precompiler.LoadFeedback(jit_feedback, jit_feedback_length);
|
||||
precompiler.DoCompileAll(embedder_entry_points);
|
||||
return Error::null();
|
||||
|
@ -332,11 +331,10 @@ bool TypeRangeCache::InstanceOfHasClassRange(const AbstractType& type,
|
|||
}
|
||||
|
||||
|
||||
Precompiler::Precompiler(Thread* thread, bool reset_fields)
|
||||
Precompiler::Precompiler(Thread* thread)
|
||||
: thread_(thread),
|
||||
zone_(NULL),
|
||||
isolate_(thread->isolate()),
|
||||
reset_fields_(reset_fields),
|
||||
jit_feedback_(NULL),
|
||||
changed_(false),
|
||||
function_count_(0),
|
||||
|
@ -686,9 +684,9 @@ void Precompiler::AddRoots(Dart_QualifiedFunctionName embedder_entry_points[]) {
|
|||
{"dart:typed_data", "ByteData", "ByteData."},
|
||||
{"dart:typed_data", "ByteData", "ByteData._view"},
|
||||
{"dart:typed_data", "_ByteBuffer", "_ByteBuffer._New"},
|
||||
#if !defined(PRODUCT)
|
||||
{"dart:_vmservice", "::", "_registerIsolate"},
|
||||
{"dart:_vmservice", "::", "boot"},
|
||||
#if !defined(PRODUCT)
|
||||
{"dart:developer", "Metrics", "_printMetrics"},
|
||||
{"dart:developer", "::", "_runExtension"},
|
||||
{"dart:isolate", "::", "_runPendingImmediateCallback"},
|
||||
|
@ -1184,9 +1182,6 @@ void Precompiler::AddField(const Field& field) {
|
|||
// Should not be in the middle of initialization while precompiling.
|
||||
ASSERT(value.raw() != Object::transition_sentinel().raw());
|
||||
|
||||
const bool is_initialized = value.raw() != Object::sentinel().raw();
|
||||
if (is_initialized && !reset_fields_) return;
|
||||
|
||||
if (!field.HasPrecompiledInitializer() ||
|
||||
!Function::Handle(Z, field.PrecompiledInitializer()).HasCode()) {
|
||||
if (FLAG_trace_precompiler) {
|
||||
|
|
|
@ -386,7 +386,6 @@ class Precompiler : public ValueObject {
|
|||
public:
|
||||
static RawError* CompileAll(
|
||||
Dart_QualifiedFunctionName embedder_entry_points[],
|
||||
bool reset_fields,
|
||||
uint8_t* jit_feedback,
|
||||
intptr_t jit_feedback_length);
|
||||
|
||||
|
@ -419,7 +418,7 @@ class Precompiler : public ValueObject {
|
|||
void TryApplyFeedback(ParsedJSONArray* js_icdatas, const ICData& ic);
|
||||
|
||||
private:
|
||||
Precompiler(Thread* thread, bool reset_fields);
|
||||
explicit Precompiler(Thread* thread);
|
||||
|
||||
void LoadFeedback(uint8_t* jit_feedback, intptr_t jit_feedback_length);
|
||||
ParsedJSONObject* LookupFeedback(const Function& function);
|
||||
|
@ -486,8 +485,6 @@ class Precompiler : public ValueObject {
|
|||
Zone* zone_;
|
||||
Isolate* isolate_;
|
||||
|
||||
const bool reset_fields_;
|
||||
|
||||
ParsedJSONObject* jit_feedback_;
|
||||
|
||||
bool changed_;
|
||||
|
|
|
@ -283,11 +283,11 @@ Language/Statements/Yield_and_Yield_Each/Yield_Each/location_t05: MissingCompile
|
|||
Language/Expressions/Property_Extraction/General_Super_Property_Extraction: CompileTimeError # Issue 26287
|
||||
Language/Expressions/Property_Extraction/Super_Closurization: CompileTimeError # Issue 26287
|
||||
|
||||
[ $noopt || $runtime == dart_precompiled || $mode == product ]
|
||||
[ $runtime == dart_precompiled || $mode == product ]
|
||||
Language/Metadata/*: SkipByDesign # Uses dart:mirrors
|
||||
Language/Expressions/Null/instance_of_class_null_t01: Skip # Uses dart:mirrors
|
||||
|
||||
[ $noopt || $compiler == precompiler || $compiler == app_jit || $mode == product ]
|
||||
[ $compiler == precompiler || $compiler == app_jit || $mode == product ]
|
||||
Language/Libraries_and_Scripts/Imports/deferred_import_t01: Skip # Eager loading
|
||||
Language/Libraries_and_Scripts/Imports/deferred_import_t02: Skip # Eager loading
|
||||
Language/Libraries_and_Scripts/Imports/invalid_uri_deferred_t01: Skip # Eager loading
|
||||
|
@ -296,13 +296,13 @@ Language/Libraries_and_Scripts/Imports/invalid_uri_deferred_t02: Skip # Eager lo
|
|||
[ $runtime == dart_precompiled || $compiler == app_jit ]
|
||||
LibTest/isolate/Isolate/spawnUri*: SkipByDesign # Isolate.spawnUri
|
||||
|
||||
[ $noopt || $compiler == precompiler ]
|
||||
[ $compiler == precompiler ]
|
||||
LibTest/collection/ListBase/ListBase_class_A01_t02: Pass, Timeout
|
||||
LibTest/collection/ListMixin/ListMixin_class_A01_t02: Pass, Timeout
|
||||
LibTest/core/Map/Map_class_A01_t04: Pass, Timeout
|
||||
LibTest/core/Uri/encodeQueryComponent_A01_t02: Pass, Timeout
|
||||
|
||||
[ $noopt || $compiler == precompiler || $compiler == app_jit ]
|
||||
[ $compiler == precompiler || $compiler == app_jit ]
|
||||
Language/Mixins/Mixin_Application/error_t01: Pass
|
||||
Language/Mixins/Mixin_Application/error_t02: Pass
|
||||
Language/Mixins/declaring_constructor_t01: Pass
|
||||
|
|
|
@ -188,15 +188,14 @@ core_runtime_types_test: Pass, RuntimeError # Issue 25795.
|
|||
regexp/pcre_test: Crash # Stack Overflow
|
||||
collection_removes_test: Crash # Issue 25911
|
||||
|
||||
[ $noopt || $compiler == precompiler ]
|
||||
[ $compiler == precompiler || $mode == product ]
|
||||
apply3_test: SkipByDesign # Imports dart:mirrors
|
||||
|
||||
[ $compiler == precompiler ]
|
||||
# Stacktraces in precompilation omit inlined frames.
|
||||
stacktrace_current_test: Pass, RuntimeError
|
||||
error_stack_trace1_test: Pass, RuntimeError
|
||||
|
||||
[ $noopt || $compiler == precompiler || $mode == product ]
|
||||
apply3_test: SkipByDesign # Imports dart:mirrors
|
||||
|
||||
[ $noopt || $compiler == precompiler ]
|
||||
regexp/stack-overflow_test: RuntimeError, OK # Smaller limit with irregex interpreter
|
||||
big_integer_huge_mul_vm_test: Pass, Timeout # --no_intrinsify
|
||||
big_integer_parsed_mul_div_vm_test: Pass, Timeout # --no_intrinsify
|
||||
|
|
|
@ -170,7 +170,7 @@ package_resolve_test: SkipByDesign # Uses Isolate.resolvePackageUri
|
|||
spawn_uri_fail_test: SkipByDesign # Uses dart:io.
|
||||
scenarios/*: SkipByDesign # Use automatic package resolution, spawnFunction and .dart URIs.
|
||||
|
||||
[ $noopt || $compiler == precompiler || $mode == product ]
|
||||
[ $compiler == precompiler || $mode == product ]
|
||||
# Imports dart:mirrors
|
||||
count_test: SkipByDesign
|
||||
cross_isolate_message_test: SkipByDesign
|
||||
|
|
|
@ -160,7 +160,7 @@ vm/regress_24517_test: Pass, Fail # Issue 24517.
|
|||
[ $compiler == precompiler && $runtime == dart_precompiled ]
|
||||
vm/regress_27671_test: Skip # Unsupported
|
||||
|
||||
[ $noopt || $runtime == dart_precompiled ]
|
||||
[ $runtime == dart_precompiled ]
|
||||
# Stacktraces in precompilation omit inlined frames.
|
||||
full_stacktrace1_test: Pass, RuntimeError
|
||||
full_stacktrace2_test: Pass, RuntimeError
|
||||
|
@ -172,7 +172,7 @@ stacktrace_test: Pass, RuntimeError
|
|||
vm/regress_28325_test: RuntimeError # Missing source position in AOT.
|
||||
|
||||
|
||||
[ $noopt || $runtime == dart_precompiled || $mode == product ]
|
||||
[ $runtime == dart_precompiled || $mode == product ]
|
||||
# Imports dart:mirrors
|
||||
const_evaluation_test: SkipByDesign
|
||||
deferred_constraints_constants_test: SkipByDesign
|
||||
|
@ -196,18 +196,6 @@ super_getter_setter_test: SkipByDesign
|
|||
vm/reflect_core_vm_test: SkipByDesign
|
||||
regress_28255_test: SkipByDesign
|
||||
|
||||
[ $noopt ]
|
||||
# Deferred loading happens eagerly. Issue #27587
|
||||
regress_23408_test: Fail
|
||||
deferred_inheritance_constraints_test/redirecting_constructor: Fail
|
||||
deferred_global_test: Fail
|
||||
deferred_load_constants_test/02: Fail
|
||||
deferred_load_constants_test/03: Fail
|
||||
deferred_load_constants_test/05: Fail
|
||||
regress_22443_test: Fail
|
||||
deferred_not_loaded_check_test: Fail
|
||||
vm/regress_27201_test: Fail
|
||||
|
||||
[ $mode == product || $compiler == app_jit || $compiler == precompiler ]
|
||||
# Deferred loading happens eagerly. Issue #27587
|
||||
regress_23408_test: Fail
|
||||
|
@ -223,15 +211,13 @@ vm/regress_27201_test: Fail
|
|||
deferred_global_test: Fail
|
||||
vm/regress_27201_test: Fail
|
||||
|
||||
[ $compiler == precompiler || $compiler == app_jit ]
|
||||
ct_const2_test: Skip # Incompatible flag: --compile_all
|
||||
hello_dart_test: Skip # Incompatible flag: --compile_all
|
||||
|
||||
[ $compiler == precompiler ]
|
||||
implicit_closure_test: Skip # Incompatible flag: --use_slow_path
|
||||
deopt_inlined_function_lazy_test: Skip # Incompatible flag: --deoptimize-alot
|
||||
|
||||
[ $noopt || $compiler == precompiler || $compiler == app_jit ]
|
||||
[ $compiler == precompiler || $compiler == app_jit ]
|
||||
ct_const2_test: Skip # Incompatible flag: --compile_all
|
||||
hello_dart_test: Skip # Incompatible flag: --compile_all
|
||||
vm/type_vm_test: RuntimeError # Expects line and column numbers
|
||||
vm/type_cast_vm_test: RuntimeError # Expects line and column numbers
|
||||
|
||||
|
@ -261,11 +247,11 @@ library_env_test/has_no_html_support: RuntimeError, OK
|
|||
library_env_test/has_html_support: RuntimeError, OK
|
||||
library_env_test/has_no_io_support: RuntimeError, OK
|
||||
|
||||
[ ($compiler == none || $compiler == app_jit) && $noopt == false && $mode != product ]
|
||||
[ ($compiler == none || $compiler == app_jit) && $mode != product ]
|
||||
# The following tests are supposed to fail.
|
||||
library_env_test/has_no_mirror_support: RuntimeError, OK
|
||||
|
||||
[ $noopt || $runtime == dart_precompiled || $mode == product ]
|
||||
[ $runtime == dart_precompiled || $mode == product ]
|
||||
# The following tests are supposed to fail.
|
||||
library_env_test/has_mirror_support: RuntimeError, OK
|
||||
|
||||
|
|
|
@ -412,13 +412,10 @@ mirrors/typedef_library_test: Crash # Assertion failure: typedef(G) has not been
|
|||
[ $compiler != dart2js ]
|
||||
async/dart2js_uncaught_error_test: Skip # JS-integration only test
|
||||
|
||||
[ $noopt && $arch == simarm64 ]
|
||||
async/slow_consumer2_test: Pass, RuntimeError # Issue 25726
|
||||
|
||||
[ $noopt || $compiler == precompiler || $mode == product ]
|
||||
[ $compiler == precompiler || $mode == product ]
|
||||
mirrors/*: SkipByDesign
|
||||
|
||||
[ $noopt || $compiler == precompiler ]
|
||||
[ $compiler == precompiler ]
|
||||
convert/chunked_conversion_utf88_test: Pass, Timeout
|
||||
convert/utf85_test: Pass, Timeout
|
||||
|
||||
|
|
|
@ -222,11 +222,9 @@ io/secure_socket_bad_data_test: RuntimeError # An error in a secure connection
|
|||
no_allow_absolute_addresses_test: SkipByDesign # Not supported.
|
||||
link_natives_lazily_test: SkipByDesign # Not supported.
|
||||
|
||||
[ $noopt || $compiler == precompiler ]
|
||||
[ $compiler == precompiler ]
|
||||
# Stacktraces in precompilation omit inlined frames.
|
||||
assert_test: Pass, RuntimeError
|
||||
|
||||
[ $noopt || $compiler == precompiler ]
|
||||
map_insert_remove_oom_test: Skip # Heap limit too low. Increasing iteration count to make a higher limit a meaningful test makes it too slow for simarm[64] bots.
|
||||
io/web_socket_test: Pass, RuntimeError # Issue 24674
|
||||
|
||||
|
|
|
@ -234,9 +234,7 @@ class StandaloneDartRuntimeConfiguration extends DartVmRuntimeConfiguration {
|
|||
type != 'application/dart-snapshot') {
|
||||
throw "Dart VM cannot run files of type '$type'.";
|
||||
}
|
||||
String executable = suite.configuration['noopt']
|
||||
? suite.dartVmNooptBinaryFileName
|
||||
: suite.dartVmBinaryFileName;
|
||||
String executable = suite.dartVmBinaryFileName;
|
||||
return <Command>[
|
||||
commandBuilder.getVmCommand(executable, arguments, environmentOverrides)
|
||||
];
|
||||
|
|
|
@ -107,7 +107,6 @@ Future testConfigurations(List<Map> configurations) async {
|
|||
.toList();
|
||||
if (conf['checked']) settings.add('checked');
|
||||
if (conf['strong']) settings.add('strong');
|
||||
if (conf['noopt']) settings.add('noopt');
|
||||
output_words.add(settings.join('_'));
|
||||
}
|
||||
print(output_words.join(' '));
|
||||
|
|
|
@ -206,9 +206,6 @@ class TestOptionsParser {
|
|||
[],
|
||||
false,
|
||||
type: 'bool'),
|
||||
new _TestOptionSpecification(
|
||||
'noopt', 'Run an in-place precompilation', ['--noopt'], [], false,
|
||||
type: 'bool'),
|
||||
new _TestOptionSpecification(
|
||||
'fast_startup',
|
||||
'Pass the --fast-startup flag to dart2js',
|
||||
|
|
|
@ -216,21 +216,6 @@ abstract class TestSuite {
|
|||
return flutterExecutable;
|
||||
}
|
||||
|
||||
String get dartVmNooptBinaryFileName {
|
||||
// Controlled by user with the option "--dart".
|
||||
String dartExecutable = configuration['dart'];
|
||||
|
||||
if (dartExecutable == '') {
|
||||
String suffix = executableBinarySuffix;
|
||||
dartExecutable = useSdk
|
||||
? '$buildDir/dart-sdk/bin/dart_noopt$suffix'
|
||||
: '$buildDir/dart_noopt$suffix';
|
||||
}
|
||||
|
||||
TestUtils.ensureExists(dartExecutable, configuration);
|
||||
return dartExecutable;
|
||||
}
|
||||
|
||||
String get dartPrecompiledBinaryFileName {
|
||||
// Controlled by user with the option "--dart_precompiled".
|
||||
String dartExecutable = configuration['dart_precompiled'];
|
||||
|
|
Loading…
Reference in a new issue