NAME=analysis android
FILE=bins/android/first/libapp.so
ARGS=-NN -e bin.relocs.apply=true
CMDS=<<EOF
.!sh -c "p=../src/r2/core_flutter.dylib; [ -f \"\$p\" ] || p=../src/r2/core_flutter.so; printf \"L %s\\n\" \"\$p\""
r2flutter -AAA
f~dart.class
s 0x66a70
EOF
EXPECT=<<EOF
0x00001660 0 dart.class._Uint16List
0x00001680 0 dart.class._ExternalInt64Array
0x000016d0 0 dart.class.FutureOr
0x00001720 0 dart.class._Set
0x00001810 0 dart.class.Int32List.
0x00001850 0 dart.class.Float32List
0x000018d0 0 dart.class.Uint8List.
0x00001960 0 dart.class.Float64x2List
0x000019e0 0 dart.class.Script
0x00001a00 0 dart.class._Uint8List
0x00001a40 0 dart.class.UnlinkedCall
0x00001a60 0 dart.class.SingleTargetCache
0x00001b80 0 dart.class.Native
0x00001c10 0 dart.class.SendPort
0x00001c90 0 dart.class.Uint16List.
0x00001cf0 0 dart.class._FunctionTypeMirror
0x00001d80 0 dart.class.Pointer
0x00001e00 0 dart.class._Float64x2ArrayView
0x00001e70 0 dart.class.Int16List
0x00001eb0 0 dart.class.Int32x4
0x00001ed0 0 dart.class.Union
0x00001f20 0 dart.class.ArgumentError
0x00001f60 0 dart.class._UnmodifiableUint8ArrayView
0x00002000 0 dart.class._FfiIsolateLocalCallback
0x00002070 0 dart.class.Error
0x000020f0 0 dart.class._StreamIterator
0x00002110 0 dart.class._ExternalInt8Array
0x00002200 0 dart.class._ControllerSubscription
0x00002270 0 dart.class._TwoByteString
0x00002290 0 dart.class._LibraryPrefix
0x000022d0 0 dart.class.ExceptionHandlers
0x00002300 0 dart.class.ObjectPool
0x00002320 0 dart.class.ClassID
0x00002430 0 dart.class.LocalVarDescriptors
0x00002490 0 dart.class.OutOfMemoryError2
0x000025e0 0 dart.class._Int32ArrayView
0x00002620 0 dart.class._TypedListBase
0x00002640 0 dart.class._Int16List
0x00002660 0 dart.class.StateError
0x000026a0 0 dart.class._AsyncStarStreamController
0x00002780 0 dart.class.Int64
0x000027a0 0 dart.class.Uint8ClampedList.
0x000027f0 0 dart.class._ByteBuffer._New2
0x00002810 0 dart.class._SyncCompleter
0x00002830 0 dart.class.Float64List
0x00002950 0 dart.class._Float64ArrayView
0x000029e0 0 dart.class._IsolateMirror
0x00002a80 0 dart.class._Record
0x00002aa0 0 dart.class.SubtypeTestCache2
0x00002b00 0 dart.class._ExternalFloat64Array
0x00002b30 0 dart.class._List.filled
0x00002c00 0 dart.class._UnmodifiableFloat32x4ArrayView
0x00002c70 0 dart.class._Type
0x00002ce0 0 dart.class._Uint8ArrayView
0x00002d00 0 dart.class.Object
0x00002d90 0 dart.class._Int32x4List
0x00002e10 0 dart.class.Uint8
0x00002e30 0 dart.class._CombinatorMirror
0x00002f60 0 dart.class._TransferableTypedDataImpl
0x00002f90 0 dart.class._ExternalFloat32x4Array
0x00003000 0 dart.class._LibraryMirror
0x00003080 0 dart.class._GrowableList.generate
0x00003160 0 dart.class.PatchClass
0x000031e0 0 dart.class.IntegerDivisionByZeroException
0x00003210 0 dart.class._Int16ArrayView
0x00003230 0 dart.class.String
0x00003250 0 dart.class._StreamControllerAddStreamState
0x00003280 0 dart.class._UnmodifiableInt32x4ArrayView
0x000032b0 0 dart.class.Finalizable
0x000033b0 0 dart.class.FormatException
0x00003460 0 dart.class._GrowableList.
0x00003570 0 dart.class._ExternalInt32x4Array
0x000035c0 0 dart.class._Uint32List
0x00003610 0 dart.class._TypeError
0x000036c0 0 dart.class.VarArgs
0x00003700 0 dart.class.Field
0x00003760 0 dart.class._FfiAsyncCallback
0x00003860 0 dart.class._BufferingStreamSubscription
0x00003890 0 dart.class._Float32x4
0x000038d0 0 dart.class.UnhandledException
0x00003900 0 dart.class.ForwardingCorpse2
0x00003920 0 dart.class.IntPtr
0x00003960 0 dart.class._UserTag
0x00003a00 0 dart.class._Map
0x00003a20 0 dart.class._Smi
0x00003a80 0 dart.class._UnmodifiableInt8ArrayView
0x00003b10 0 dart.class._Mint
0x00003b30 0 dart.class._WeakReference
0x00003b90 0 dart.class.Instructions
0x00003bd0 0 dart.class.StackOverflowError
0x00003c00 0 dart.class._LibraryDependencyMirror
0x00003c30 0 dart.class.PcDescriptors
0x00003c90 0 dart.class.ICData
0x00003cd0 0 dart.class.Float32x4List
0x00003cf0 0 dart.class.TypeParameters
0x00003d50 0 dart.class._Uint8ClampedArrayView
0x00003f40 0 dart.class._ExternalUint64Array
0x00003f70 0 dart.class.CompressedStackMaps
0x00003fa0 0 dart.class._UnmodifiableInt64ArrayView
0x00003fd0 0 dart.class.FinalizerEntry
0x00004050 0 dart.class.Uint16
0x00004070 0 dart.class._InvocationMirror
0x000040c0 0 dart.class._OneByteString
0x000040e0 0 dart.class._FfiStructLayout2
0x00004100 0 dart.class.Float32List.
0x00004120 0 dart.class.FreeListElement
0x00004140 0 dart.class.Uint64
0x000041c0 0 dart.class.Capability
0x000041e0 0 dart.class._FfiInlineArray
0x00004310 0 dart.class._FutureListener
0x000043a0 0 dart.class._Int32List
0x00004520 0 dart.class.WeakSerializationReference
0x00004590 0 dart.class.Symbol
0x00004630 0 dart.class.RangeError
0x00004750 0 dart.class._Closure
0x00004770 0 dart.class._Compound
0x000047b0 0 dart.class._VariableMirror
0x000047d0 0 dart.class.Default
0x000047f0 0 dart.class._Float64List
0x00004810 0 dart.class._UnmodifiableFloat32ArrayView
0x00004930 0 dart.class.Library
0x00004950 0 dart.class.Expando
0x000049c0 0 dart.class._StringBase
0x000049e0 0 dart.class.AbstractClassInstantiationError
0x00004a10 0 dart.class._Uint32ArrayView2
0x00004af0 0 dart.class._UnmodifiableInt32ArrayView
0x00004bf0 0 dart.class.LibraryPrefix
0x00004c30 0 dart.class._Enum
0x00004c80 0 dart.class.List.
0x00004cc0 0 dart.class._Float32x4ArrayView
0x00004d30 0 dart.class._SourceLocation
0x00004d50 0 dart.class.Float64x2List.
0x00004d70 0 dart.class._CyclicInitializationError
0x00004da0 0 dart.class._Int8List
0x00004e00 0 dart.class.Void
0x00004e40 0 dart.class._Random
0x00004ea0 0 dart.class._TypeVariableMirror
0x00004ed0 0 dart.class._List.
0x00005020 0 dart.class.Uint8List
0x00005040 0 dart.class._SpecialTypeMirror
0x00005090 0 dart.class.Context
0x000050b0 0 dart.class._AssertionError
0x000050d0 0 dart.class._Closure.call
0x00005110 0 dart.class._Utf8Decoder
0x00005130 0 dart.class.Function
0x00005230 0 dart.class._Uint16ArrayView2
0x000052e0 0 dart.class._Completer
0x00005340 0 dart.class.Uint8ClampedList2
0x00005360 0 dart.class.Record
0x000053a0 0 dart.class.InstructionsSection
0x000053f0 0 dart.class._ExternalInt16Array
0x00005420 0 dart.class.Uint32List
0x000054b0 0 dart.class.TypeArguments
0x000054f0 0 dart.class._Int8ArrayView
0x000055a0 0 dart.class.Class
0x000055e0 0 dart.class.Uint32
0x00005620 0 dart.class._Int32x4ArrayView
0x000056b0 0 dart.class.Uint32List.
0x00005710 0 dart.class._StackTrace
0x00005780 0 dart.class.Uint16List
0x000057e0 0 dart.class._SyncStreamController
0x00005810 0 dart.class.List.filled
0x000058b0 0 dart.class._RegExp
0x00005940 0 dart.class.Float64List.
0x00005960 0 dart.class._StreamController
0x000059b0 0 dart.class.UnsupportedError2
0x00005a60 0 dart.class._GrowableList.filled
0x00005b60 0 dart.class._FfiAbiSpecificMapping
0x00005bf0 0 dart.class.Uint64List.
0x00005c50 0 dart.class.Future
0x00005d30 0 dart.class.Deleted_enum_value_from_
0x00005d80 0 dart.class.ContextScope
0x00005e00 0 dart.class._Uint8ClampedList
0x00005e70 0 dart.class.Int32x4List.
0x00005eb0 0 dart.class._ByteDataView
0x00005ef0 0 dart.class.Code
0x00005fc0 0 dart.class._Uint64List
0x000060c0 0 dart.class._ByteBuffer
0x00006140 0 dart.class.ByteData
0x00006160 0 dart.class.Struct
0x000061a0 0 dart.class._FfiCallback
0x000061c0 0 dart.class.Float
0x000061e0 0 dart.class._List
0x00006200 0 dart.class._SyncStarIterator
0x00006340 0 dart.class.RegExp
0x00006360 0 dart.class.Int32
0x000063c0 0 dart.class._ExternalFloat64x2Array
0x00006470 0 dart.class._AddStreamState
0x00006490 0 dart.class.NoSuchMethodError
0x00006500 0 dart.class._RecordType
0x00006580 0 dart.class._List.generate
0x000065a0 0 dart.class._GrowableList._withData
0x000065f0 0 dart.class.TransferableTypedData
0x00006710 0 dart.class.Float32x4List.
0x00006750 0 dart.class.IsolateSpawnException
0x000067a0 0 dart.class._GrowableList
0x00006820 0 dart.class.Map._fromLiteral2
0x000068a0 0 dart.class._Float32ArrayView
0x000068d0 0 dart.class.Sentinel
0x00006910 0 dart.class.Int8List
0x00006950 0 dart.class.Iterable
0x00006970 0 dart.class._Float64x2List
0x000069b0 0 dart.class._Capability
0x000069f0 0 dart.class.Stream
0x00006a70 0 dart.class._GrowableList._literal
0x00006aa0 0 dart.class._UnmodifiableUint64ArrayView
0x00006b20 0 dart.class.CodeSourceMap
0x00006b40 0 dart.class._RawReceivePort
0x00006b60 0 dart.class._UnmodifiableByteDataView
0x00006bf0 0 dart.class._UnmodifiableInt16ArrayView
0x00006c40 0 dart.class.NativeType
0x00006cc0 0 dart.class._ExternalInt32Array
0x00006cf0 0 dart.class._UnmodifiableFloat64x2ArrayView
0x00006d20 0 dart.class._UnmodifiableUint8ClampedArrayView
0x00006e00 0 dart.class.Float64x2
0x00006e20 0 dart.class._SuspendState
0x00006e80 0 dart.class._Future
0x00006f00 0 dart.class._ExternalUint8ClampedArray
0x00006f30 0 dart.class._ConstMap
0x00006fb0 0 dart.class.Type
0x00007030 0 dart.class._UnmodifiableUint16ArrayView
0x000070f0 0 dart.class.Double
0x000071b0 0 dart.class._ParameterMirror2
0x000071d0 0 dart.class._IntegerImplementation
0x00007220 0 dart.class.Future.value
0x00007260 0 dart.class._MethodMirror
0x00007340 0 dart.class.LateError
0x00007360 0 dart.class._Int32x4
0x00007380 0 dart.class.LanguageError
0x000073a0 0 dart.class._ConstSet
0x00007410 0 dart.class.FfiTrampolineData
0x000074c0 0 dart.class._Double
0x00007540 0 dart.class._FinalizerImpl
0x00007590 0 dart.class._UnmodifiableUint32ArrayView
0x00007640 0 dart.class.KernelProgramInfo
0x000076c0 0 dart.class.Int8List.
0x00007734 0 dart.class.Vn47
0x00007780 0 dart.class._ExternalUint32Array
0x000077e0 0 dart.class._TypedList
0x00007850 0 dart.class.WeakArray
0x00007910 0 dart.class.InstructionsTable
0x00007a80 0 dart.class.DynamicLibrary
0x00007ac0 0 dart.class.NativeFunction
0x00007ae0 0 dart.class._Float32x4List
0x00007b20 0 dart.class._ClassMirror
0x00007b80 0 dart.class._Float32List
0x00007be0 0 dart.class.Int8
0x00007c00 0 dart.class.Int32x4List
0x00007c80 0 dart.class._Float64x2
0x00007cc0 0 dart.class.Never
0x00007d20 0 dart.class.Int64List.
0x00007d60 0 dart.class._ExternalFloat32Array
0x00007db0 0 dart.class.Int16
0x00007e80 0 dart.class.FinalizerBase
0x00007f40 0 dart.class._ImmutableList
0x00007f60 0 dart.class.Int16List.
0x00007f80 0 dart.class._CompileTimeError
0x00008080 0 dart.class.Null
0x000080c0 0 dart.class._SendPort
0x00008130 0 dart.class._Uint64ArrayView2
0x000081d0 0 dart.class.AbiSpecificInteger
0x00008270 0 dart.class._WeakProperty
0x00008320 0 dart.class._TypeParameter
0x00008340 0 dart.class._ExternalUint8Array
0x00008390 0 dart.class.MegamorphicCache2
0x00008560 0 dart.class._Int64List
0x00008600 0 dart.class.List
0x00008680 0 dart.class._UnmodifiableFloat64ArrayView
0x000086b0 0 dart.class._ExternalUint16Array
0x00008790 0 dart.class.Float32x4
0x000087b0 0 dart.class._MirrorReference2
0x00008830 0 dart.class.LoadingUnit
0x00008a00 0 dart.class.Namespace
0x00008a40 0 dart.class.Int32List
0x00008a60 0 dart.class.Bool
0x00008a80 0 dart.class._AsyncCompleter
0x00008aa0 0 dart.class.ApiError
0x00008ac0 0 dart.class._Int64ArrayView
0x00008b20 0 dart.class.Int64List
0x00008ce0 0 dart.class.UnwindError
0x00008d00 0 dart.class._FunctionType
0x00008d20 0 dart.class.Uint64List
0x00008d60 0 dart.class._NativeFinalizer2
0x00008de0 0 dart.class.ClosureData
0x00008e20 0 dart.class.MonomorphicSmiableCall
0x00008e90 0 dart.class.Handle
EOF
EXPECT_ERR=<<EOF
INFO: Flutter analysis: 1311 functions, 4731 calls, 0 fields, 4 classes, 0 types, 14 strings, 2912 PP refs
EOF
RUN
