| Bytecode | |
| Dynamic Module Entry Point: DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::main | |
| Library 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart' | |
| name '#lib' | |
| script 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart' | |
| Class '', script = 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart' | |
| Field '_stdin', type = DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::Stdin, getter = 'get:_stdin', reflectable, static, final, is-late, has-initializer | |
| initializer | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| LoadStatic CP#0 | |
| DirectCall CP#1, 1 | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = StaticField DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_stdinFD (field) | |
| [1] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_StdIOUtils::_getStdioInputStream', ArgDesc num-args 1, num-type-args 0, names [] | |
| [2] = Reserved | |
| } | |
| Field '_stdinFD', type = dart:core::int, reflectable, static, is-late, has-initializer | |
| value = const 0 | |
| Field '_stdoutFD', type = dart:core::int, reflectable, static, is-late, has-initializer | |
| value = const 1 | |
| Field '_stderrFD', type = dart:core::int, reflectable, static, is-late, has-initializer | |
| value = const 2 | |
| Function '_printString', static, reflectable, debuggable, external | |
| parameters [dart:core::String 's'] (required: 1) | |
| return-type void | |
| Function '_print', static, reflectable, debuggable | |
| parameters [dynamic 'arg'] (required: 1) | |
| return-type void | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| InterfaceCall CP#0, 1 | |
| DirectCall CP#2, 1 | |
| Drop1 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = InterfaceCall 'dart:core::Object::toString', ArgDesc num-args 1, num-type-args 0, names [] | |
| [1] = Reserved | |
| [2] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_printString', ArgDesc num-args 1, num-type-args 0, names [] | |
| [3] = Reserved | |
| } | |
| Function '_getPrintClosure', static, reflectable, debuggable | |
| parameters [] (required: 0) | |
| return-type dynamic | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| PushConstant CP#0 | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = ObjectRef const tear-off DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_print | |
| } | |
| Function '_setScheduleImmediateClosure', static, reflectable, debuggable | |
| parameters [FunctionType (FunctionType () -> void) -> void 'closure'] (required: 1) | |
| return-type void | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| StoreStaticTOS CP#0 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = StaticField DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_ScheduleImmediate::_closure (field) | |
| } | |
| Function '_setStdioFDs', static, reflectable, debuggable | |
| parameters [dart:core::int 'stdin', dart:core::int 'stdout', dart:core::int 'stderr'] (required: 3) | |
| return-type void | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-7] | |
| StoreStaticTOS CP#0 | |
| Push FP[-6] | |
| StoreStaticTOS CP#1 | |
| Push FP[-5] | |
| StoreStaticTOS CP#2 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = StaticField DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_stdinFD (field) | |
| [1] = StaticField DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_stdoutFD (field) | |
| [2] = StaticField DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_stderrFD (field) | |
| } | |
| Function 'main', static, reflectable, debuggable | |
| parameters [] (required: 0) | |
| return-type dynamic | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| } | |
| Class '_ScheduleImmediate', script = 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart' | |
| extends dart:core::Object | |
| Field '_closure', type = FunctionType (FunctionType () -> void)? -> void, reflectable, static, is-late, has-initializer | |
| value = null | |
| Function '', constructor, reflectable | |
| parameters [] (required: 0) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_ScheduleImmediate | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| DirectCall CP#0, 1 | |
| Drop1 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] | |
| [1] = Reserved | |
| } | |
| Class '_NamespaceImpl', script = 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart' | |
| extends dart:core::Object | |
| implements [DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_Namespace] | |
| Field '_cachedNamespace', type = DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl?, reflectable, static, is-late, has-initializer | |
| value = null | |
| Function '_', constructor, reflectable, debuggable | |
| parameters [] (required: 0) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| DirectCall CP#0, 1 | |
| Drop1 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] | |
| [1] = Reserved | |
| } | |
| Function '_create', static, reflectable, debuggable, external | |
| parameters [DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl 'namespace', dynamic 'n'] (required: 2) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl | |
| Function '_getPointer', static, reflectable, debuggable, external | |
| parameters [DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl 'namespace'] (required: 1) | |
| return-type dart:core::int | |
| Function '_getDefault', static, reflectable, debuggable, external | |
| parameters [] (required: 0) | |
| return-type dart:core::int | |
| Function '_setupNamespace', static, reflectable, debuggable | |
| parameters [dynamic 'namespace'] (required: 1) | |
| return-type void | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Allocate CP#0 | |
| Dup | |
| DirectCall CP#1, 1 | |
| Drop1 | |
| Push FP[-5] | |
| DirectCall CP#3, 2 | |
| StoreStaticTOS CP#5 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = Class DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl | |
| [1] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::_ (constructor)', ArgDesc num-args 1, num-type-args 0, names [] | |
| [2] = Reserved | |
| [3] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::_create', ArgDesc num-args 2, num-type-args 0, names [] | |
| [4] = Reserved | |
| [5] = StaticField DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::_cachedNamespace (field) | |
| } | |
| Function 'get:_namespace', getter, static, reflectable, debuggable | |
| parameters [] (required: 0) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| LoadStatic CP#0 | |
| JumpIfNotNull L1 | |
| Allocate CP#1 | |
| Dup | |
| DirectCall CP#2, 1 | |
| Drop1 | |
| DirectCall CP#4, 0 | |
| DirectCall CP#6, 2 | |
| StoreStaticTOS CP#0 | |
| L1: | |
| LoadStatic CP#0 | |
| Dup | |
| NullCheck CP#8 | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = StaticField DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::_cachedNamespace (field) | |
| [1] = Class DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl | |
| [2] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::_ (constructor)', ArgDesc num-args 1, num-type-args 0, names [] | |
| [3] = Reserved | |
| [4] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::_getDefault', ArgDesc num-args 0, num-type-args 0, names [] | |
| [5] = Reserved | |
| [6] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::_create', ArgDesc num-args 2, num-type-args 0, names [] | |
| [7] = Reserved | |
| [8] = ObjectRef null | |
| } | |
| Function 'get:_namespacePointer', getter, static, reflectable, debuggable | |
| parameters [] (required: 0) | |
| return-type dart:core::int | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| DirectCall CP#0, 0 | |
| DirectCall CP#2, 1 | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::get:_namespace', ArgDesc num-args 0, num-type-args 0, names [] | |
| [1] = Reserved | |
| [2] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::_getPointer', ArgDesc num-args 1, num-type-args 0, names [] | |
| [3] = Reserved | |
| } | |
| Class '_Namespace', script = 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart' | |
| extends dart:core::Object | |
| Function '', constructor, reflectable | |
| parameters [] (required: 0) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_Namespace | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| DirectCall CP#0, 1 | |
| Drop1 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] | |
| [1] = Reserved | |
| } | |
| Function '_setupNamespace', static, reflectable, debuggable | |
| parameters [dynamic 'namespace'] (required: 1) | |
| return-type void | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| DirectCall CP#0, 1 | |
| Drop1 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::_setupNamespace', ArgDesc num-args 1, num-type-args 0, names [] | |
| [1] = Reserved | |
| } | |
| Function 'get:_namespace', getter, static, reflectable, debuggable | |
| parameters [] (required: 0) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_Namespace | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| DirectCall CP#0, 0 | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::get:_namespace', ArgDesc num-args 0, num-type-args 0, names [] | |
| [1] = Reserved | |
| } | |
| Function 'get:_namespacePointer', getter, static, reflectable, debuggable | |
| parameters [] (required: 0) | |
| return-type dart:core::int | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| DirectCall CP#0, 0 | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_NamespaceImpl::get:_namespacePointer', ArgDesc num-args 0, num-type-args 0, names [] | |
| [1] = Reserved | |
| } | |
| Class 'Stdin', script = 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart' | |
| extends dart:core::Object | |
| Function '', constructor, reflectable | |
| parameters [] (required: 0) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::Stdin | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| DirectCall CP#0, 1 | |
| Drop1 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] | |
| [1] = Reserved | |
| } | |
| Class '_StdIOUtils', script = 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart' | |
| extends dart:core::Object | |
| Function '', constructor, reflectable | |
| parameters [] (required: 0) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::_StdIOUtils | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| DirectCall CP#0, 1 | |
| Drop1 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] | |
| [1] = Reserved | |
| } | |
| Function '_getStdioInputStream', static, reflectable, debuggable, external | |
| parameters [dart:core::int 'fd'] (required: 1) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::Stdin | |
| Class 'Timer', script = 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart' | |
| extends dart:core::Object | |
| Function '', constructor, reflectable | |
| parameters [] (required: 0) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::Timer | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| DirectCall CP#0, 1 | |
| Drop1 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] | |
| [1] = Reserved | |
| } | |
| Class 'SendPort', script = 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart' | |
| extends dart:core::Object | |
| Function '', constructor, reflectable | |
| parameters [] (required: 0) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::SendPort | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| DirectCall CP#0, 1 | |
| Drop1 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] | |
| [1] = Reserved | |
| } | |
| Class 'VMLibraryHooks', script = 'DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart' | |
| extends dart:core::Object | |
| Field 'timerFactory', type = FunctionType (dart:core::int, FunctionType (DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::Timer) -> void, dart:core::bool)? -> DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::Timer, reflectable, static, is-late, has-initializer | |
| value = null | |
| Field 'eventHandlerSendData', type = FunctionType (dart:core::Object?, DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::SendPort, dart:core::int) -> void, getter = 'get:eventHandlerSendData', reflectable, static, is-late | |
| value = null | |
| Field 'timerMillisecondClock', type = FunctionType () -> dart:core::int, getter = 'get:timerMillisecondClock', reflectable, static, is-late | |
| value = null | |
| Field 'packageRootString', type = dart:core::String?, reflectable, static, is-late, has-initializer | |
| value = null | |
| Field 'packageConfigString', type = dart:core::String?, reflectable, static, is-late, has-initializer | |
| value = null | |
| Field 'packageConfigUriSync', type = FunctionType ()? -> dart:core::Uri?, reflectable, static, is-late, has-initializer | |
| value = null | |
| Field 'resolvePackageUriSync', type = FunctionType (dart:core::Uri)? -> dart:core::Uri?, reflectable, static, is-late, has-initializer | |
| value = null | |
| Field '_computeScriptUri', type = FunctionType ()? -> dart:core::Uri, reflectable, static, is-late, has-initializer | |
| value = null | |
| Field '_cachedScript', type = dart:core::Uri?, reflectable, static, is-late, has-initializer | |
| value = null | |
| Function '', constructor, reflectable | |
| parameters [] (required: 0) | |
| return-type DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::VMLibraryHooks | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| DirectCall CP#0, 1 | |
| Drop1 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] | |
| [1] = Reserved | |
| } | |
| Function 'set:platformScript', setter, static, reflectable, debuggable | |
| parameters [dart:core::Object? 'f'] (required: 1) | |
| return-type void | |
| Bytecode { | |
| Entry 0 | |
| CheckStack 0 | |
| Push FP[-5] | |
| PushConstant CP#0 | |
| PushNull | |
| PushNull | |
| PushConstant CP#1 | |
| AssertAssignable 0, CP#2 | |
| StoreStaticTOS CP#3 | |
| PushNull | |
| StoreStaticTOS CP#4 | |
| PushNull | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = Type FunctionType ()? -> dart:core::Uri | |
| [1] = ObjectRef ' in type cast' | |
| [2] = SubtypeTestCache | |
| [3] = StaticField DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::VMLibraryHooks::_computeScriptUri (field) | |
| [4] = StaticField DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::VMLibraryHooks::_cachedScript (field) | |
| } | |
| Function 'get:platformScript', getter, static, reflectable, debuggable | |
| parameters [] (required: 0) | |
| return-type dart:core::Uri? | |
| Bytecode { | |
| Entry 5 | |
| CheckStack 0 | |
| LoadStatic CP#0 | |
| PopLocal r0 | |
| Push r0 | |
| JumpIfNotNull L1 | |
| LoadStatic CP#1 | |
| PopLocal r2 | |
| Push r2 | |
| JumpIfNotNull L2 | |
| PushNull | |
| PopLocal r3 | |
| Jump L3 | |
| L2: | |
| Push r2 | |
| StoreLocal r4 | |
| Push r4 | |
| UncheckedClosureCall CP#2, 1 | |
| PopLocal r3 | |
| L3: | |
| Push r3 | |
| Dup | |
| StoreStaticTOS CP#0 | |
| PopLocal r1 | |
| Jump L4 | |
| L1: | |
| Push r0 | |
| PopLocal r1 | |
| L4: | |
| Push r1 | |
| ReturnTOS | |
| } | |
| ConstantPool { | |
| [0] = StaticField DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::VMLibraryHooks::_cachedScript (field) | |
| [1] = StaticField DART_SDK/pkg/dart2bytecode/testcases/bootstrapping.dart::VMLibraryHooks::_computeScriptUri (field) | |
| [2] = ObjectRef ArgDesc num-args 1, num-type-args 0, names [] | |
| } | |