[vm] Add arch-specific bits for Android RISCV64.

TEST=local AOSP build
Bug: https://github.com/flutter/flutter/issues/117973
CoreLibraryReviewExempt: VM-only
Change-Id: I9417e86f025bebee359d8ba50ee6b5c8589c2744
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/303011
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
This commit is contained in:
Ryan Macnak 2023-05-22 16:43:04 +00:00 committed by Commit Queue
parent 6d466bcb41
commit c747a25d66
45 changed files with 304 additions and 245 deletions

View file

@ -66,16 +66,16 @@ constants {
#C7 = core::pragma {name:#C1, options:#C6} #C7 = core::pragma {name:#C1, options:#C6}
#C8 = ffi::Double {} #C8 = ffi::Double {}
#C9 = 0 #C9 = 0
#C10 = <core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 8 #C11 = 8
#C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = 16 #C13 = 16
#C14 = <core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13] #C14 = <core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = core::pragma {name:#C15, options:#C5} #C16 = core::pragma {name:#C15, options:#C5}
#C17 = 24 #C17 = 24
#C18 = 20 #C18 = 20
#C19 = <core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17] #C19 = <core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17]
} }

View file

@ -59,16 +59,16 @@ constants {
#C7 = core::pragma {name:#C1, options:#C6} #C7 = core::pragma {name:#C1, options:#C6}
#C8 = ffi::Double {} #C8 = ffi::Double {}
#C9 = 0 #C9 = 0
#C10 = <core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 8 #C11 = 8
#C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = 16 #C13 = 16
#C14 = <core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13] #C14 = <core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = core::pragma {name:#C15, options:#C5} #C16 = core::pragma {name:#C15, options:#C5}
#C17 = 24 #C17 = 24
#C18 = 20 #C18 = 20
#C19 = <core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17] #C19 = <core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17]
} }

View file

@ -56,11 +56,11 @@ constants {
#C6 = dart.core::pragma {name:#C1, options:#C5} #C6 = dart.core::pragma {name:#C1, options:#C5}
#C7 = dart.ffi::Uint32 {} #C7 = dart.ffi::Uint32 {}
#C8 = 0 #C8 = 0
#C9 = <dart.core::int*>[#C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8] #C9 = <dart.core::int*>[#C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8]
#C10 = "vm:prefer-inline" #C10 = "vm:prefer-inline"
#C11 = dart.core::pragma {name:#C10, options:#C4} #C11 = dart.core::pragma {name:#C10, options:#C4}
#C12 = 4 #C12 = 4
#C13 = <dart.core::int*>[#C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12] #C13 = <dart.core::int*>[#C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12]
#C14 = TypeLiteralConstant(lib::Y) #C14 = TypeLiteralConstant(lib::Y)
#C15 = <dart.core::Type>[#C14] #C15 = <dart.core::Type>[#C14]
#C16 = dart.ffi::_FfiStructLayout {fieldTypes:#C15, packing:#C4} #C16 = dart.ffi::_FfiStructLayout {fieldTypes:#C15, packing:#C4}

View file

@ -56,11 +56,11 @@ constants {
#C6 = dart.core::pragma {name:#C1, options:#C5} #C6 = dart.core::pragma {name:#C1, options:#C5}
#C7 = dart.ffi::Uint32 {} #C7 = dart.ffi::Uint32 {}
#C8 = 0 #C8 = 0
#C9 = <dart.core::int*>[#C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8] #C9 = <dart.core::int*>[#C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8]
#C10 = "vm:prefer-inline" #C10 = "vm:prefer-inline"
#C11 = dart.core::pragma {name:#C10, options:#C4} #C11 = dart.core::pragma {name:#C10, options:#C4}
#C12 = 4 #C12 = 4
#C13 = <dart.core::int*>[#C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12] #C13 = <dart.core::int*>[#C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12]
#C14 = TypeLiteralConstant(lib::Y) #C14 = TypeLiteralConstant(lib::Y)
#C15 = <dart.core::Type>[#C14] #C15 = <dart.core::Type>[#C14]
#C16 = dart.ffi::_FfiStructLayout {fieldTypes:#C15, packing:#C4} #C16 = dart.ffi::_FfiStructLayout {fieldTypes:#C15, packing:#C4}

View file

@ -62,7 +62,7 @@ constants {
#C5 = dart.ffi::_FfiStructLayout {fieldTypes:#C3, packing:#C4} #C5 = dart.ffi::_FfiStructLayout {fieldTypes:#C3, packing:#C4}
#C6 = dart.core::pragma {name:#C1, options:#C5} #C6 = dart.core::pragma {name:#C1, options:#C5}
#C7 = 0 #C7 = 0
#C8 = <dart.core::int*>[#C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7] #C8 = <dart.core::int*>[#C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7]
#C9 = "vm:prefer-inline" #C9 = "vm:prefer-inline"
#C10 = dart.core::pragma {name:#C9, options:#C4} #C10 = dart.core::pragma {name:#C9, options:#C4}
} }

View file

@ -62,7 +62,7 @@ constants {
#C5 = dart.ffi::_FfiStructLayout {fieldTypes:#C3, packing:#C4} #C5 = dart.ffi::_FfiStructLayout {fieldTypes:#C3, packing:#C4}
#C6 = dart.core::pragma {name:#C1, options:#C5} #C6 = dart.core::pragma {name:#C1, options:#C5}
#C7 = 0 #C7 = 0
#C8 = <dart.core::int*>[#C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7] #C8 = <dart.core::int*>[#C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7]
#C9 = "vm:prefer-inline" #C9 = "vm:prefer-inline"
#C10 = dart.core::pragma {name:#C9, options:#C4} #C10 = dart.core::pragma {name:#C9, options:#C4}
} }

View file

@ -53,16 +53,16 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Double {} #C8 = dart.ffi::Double {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 8 #C11 = 8
#C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = 16 #C13 = 16
#C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13] #C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = dart.core::pragma {name:#C15, options:#C5} #C16 = dart.core::pragma {name:#C15, options:#C5}
#C17 = 24 #C17 = 24
#C18 = 20 #C18 = 20
#C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17] #C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17]
} }

View file

@ -57,16 +57,16 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Double {} #C8 = dart.ffi::Double {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 8 #C11 = 8
#C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = 16 #C13 = 16
#C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13] #C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = dart.core::pragma {name:#C15, options:#C5} #C16 = dart.core::pragma {name:#C15, options:#C5}
#C17 = 24 #C17 = 24
#C18 = 20 #C18 = 20
#C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17] #C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17]
} }

View file

@ -54,16 +54,16 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Double {} #C8 = dart.ffi::Double {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 8 #C11 = 8
#C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = 16 #C13 = 16
#C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13] #C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = dart.core::pragma {name:#C15, options:#C5} #C16 = dart.core::pragma {name:#C15, options:#C5}
#C17 = 24 #C17 = 24
#C18 = 20 #C18 = 20
#C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17] #C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17]
} }

View file

@ -101,19 +101,19 @@ constants {
#C6 = dart.ffi::_FfiStructLayout {fieldTypes:#C4, packing:#C5} #C6 = dart.ffi::_FfiStructLayout {fieldTypes:#C4, packing:#C5}
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = 0 #C8 = 0
#C9 = <dart.core::int*>[#C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8] #C9 = <dart.core::int*>[#C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8]
#C10 = 4 #C10 = 4
#C11 = 8 #C11 = 8
#C12 = <dart.core::int*>[#C10, #C11, #C10, #C11, #C11, #C11, #C11, #C10, #C11, #C11, #C10, #C11, #C10, #C11, #C10, #C11, #C11, #C11, #C11, #C10, #C11] #C12 = <dart.core::int*>[#C10, #C11, #C10, #C11, #C11, #C11, #C11, #C11, #C10, #C11, #C11, #C10, #C11, #C10, #C11, #C10, #C11, #C11, #C11, #C11, #C10, #C11]
#C13 = 16 #C13 = 16
#C14 = <dart.core::int*>[#C11, #C13, #C11, #C13, #C13, #C13, #C13, #C11, #C13, #C13, #C11, #C13, #C11, #C13, #C11, #C13, #C13, #C13, #C13, #C11, #C13] #C14 = <dart.core::int*>[#C11, #C13, #C11, #C13, #C13, #C13, #C13, #C13, #C11, #C13, #C13, #C11, #C13, #C11, #C13, #C11, #C13, #C13, #C13, #C13, #C11, #C13]
#C15 = 12 #C15 = 12
#C16 = 24 #C16 = 24
#C17 = <dart.core::int*>[#C15, #C16, #C15, #C16, #C16, #C16, #C16, #C15, #C16, #C16, #C15, #C16, #C15, #C16, #C15, #C16, #C16, #C16, #C16, #C15, #C16] #C17 = <dart.core::int*>[#C15, #C16, #C15, #C16, #C16, #C16, #C16, #C16, #C15, #C16, #C16, #C15, #C16, #C15, #C16, #C15, #C16, #C16, #C16, #C16, #C15, #C16]
#C18 = "vm:prefer-inline" #C18 = "vm:prefer-inline"
#C19 = dart.core::pragma {name:#C18, options:#C5} #C19 = dart.core::pragma {name:#C18, options:#C5}
#C20 = 48 #C20 = 48
#C21 = <dart.core::int*>[#C16, #C20, #C16, #C20, #C20, #C20, #C20, #C16, #C20, #C20, #C16, #C20, #C16, #C20, #C16, #C20, #C20, #C20, #C20, #C16, #C20] #C21 = <dart.core::int*>[#C16, #C20, #C16, #C20, #C20, #C20, #C20, #C20, #C16, #C20, #C20, #C16, #C20, #C16, #C20, #C16, #C20, #C20, #C20, #C20, #C16, #C20]
#C22 = <dart.core::Type>[#C2, #C2, #C2] #C22 = <dart.core::Type>[#C2, #C2, #C2]
#C23 = dart.ffi::_FfiStructLayout {fieldTypes:#C22, packing:#C5} #C23 = dart.ffi::_FfiStructLayout {fieldTypes:#C22, packing:#C5}
#C24 = dart.core::pragma {name:#C1, options:#C23} #C24 = dart.core::pragma {name:#C1, options:#C23}

View file

@ -101,19 +101,19 @@ constants {
#C6 = dart.ffi::_FfiStructLayout {fieldTypes:#C4, packing:#C5} #C6 = dart.ffi::_FfiStructLayout {fieldTypes:#C4, packing:#C5}
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = 0 #C8 = 0
#C9 = <dart.core::int*>[#C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8] #C9 = <dart.core::int*>[#C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8]
#C10 = 4 #C10 = 4
#C11 = 8 #C11 = 8
#C12 = <dart.core::int*>[#C10, #C11, #C10, #C11, #C11, #C11, #C11, #C10, #C11, #C11, #C10, #C11, #C10, #C11, #C10, #C11, #C11, #C11, #C11, #C10, #C11] #C12 = <dart.core::int*>[#C10, #C11, #C10, #C11, #C11, #C11, #C11, #C11, #C10, #C11, #C11, #C10, #C11, #C10, #C11, #C10, #C11, #C11, #C11, #C11, #C10, #C11]
#C13 = 16 #C13 = 16
#C14 = <dart.core::int*>[#C11, #C13, #C11, #C13, #C13, #C13, #C13, #C11, #C13, #C13, #C11, #C13, #C11, #C13, #C11, #C13, #C13, #C13, #C13, #C11, #C13] #C14 = <dart.core::int*>[#C11, #C13, #C11, #C13, #C13, #C13, #C13, #C13, #C11, #C13, #C13, #C11, #C13, #C11, #C13, #C11, #C13, #C13, #C13, #C13, #C11, #C13]
#C15 = 12 #C15 = 12
#C16 = 24 #C16 = 24
#C17 = <dart.core::int*>[#C15, #C16, #C15, #C16, #C16, #C16, #C16, #C15, #C16, #C16, #C15, #C16, #C15, #C16, #C15, #C16, #C16, #C16, #C16, #C15, #C16] #C17 = <dart.core::int*>[#C15, #C16, #C15, #C16, #C16, #C16, #C16, #C16, #C15, #C16, #C16, #C15, #C16, #C15, #C16, #C15, #C16, #C16, #C16, #C16, #C15, #C16]
#C18 = "vm:prefer-inline" #C18 = "vm:prefer-inline"
#C19 = dart.core::pragma {name:#C18, options:#C5} #C19 = dart.core::pragma {name:#C18, options:#C5}
#C20 = 48 #C20 = 48
#C21 = <dart.core::int*>[#C16, #C20, #C16, #C20, #C20, #C20, #C20, #C16, #C20, #C20, #C16, #C20, #C16, #C20, #C16, #C20, #C20, #C20, #C20, #C16, #C20] #C21 = <dart.core::int*>[#C16, #C20, #C16, #C20, #C20, #C20, #C20, #C20, #C16, #C20, #C20, #C16, #C20, #C16, #C20, #C16, #C20, #C20, #C20, #C20, #C16, #C20]
#C22 = <dart.core::Type>[#C2, #C2, #C2] #C22 = <dart.core::Type>[#C2, #C2, #C2]
#C23 = dart.ffi::_FfiStructLayout {fieldTypes:#C22, packing:#C5} #C23 = dart.ffi::_FfiStructLayout {fieldTypes:#C22, packing:#C5}
#C24 = dart.core::pragma {name:#C1, options:#C23} #C24 = dart.core::pragma {name:#C1, options:#C23}

View file

@ -53,16 +53,16 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Double {} #C8 = dart.ffi::Double {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 8 #C11 = 8
#C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = 16 #C13 = 16
#C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13] #C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = dart.core::pragma {name:#C15, options:#C5} #C16 = dart.core::pragma {name:#C15, options:#C5}
#C17 = 24 #C17 = 24
#C18 = 20 #C18 = 20
#C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17] #C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17]
} }

View file

@ -54,16 +54,16 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Double {} #C8 = dart.ffi::Double {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 8 #C11 = 8
#C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = 16 #C13 = 16
#C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13] #C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = dart.core::pragma {name:#C15, options:#C5} #C16 = dart.core::pragma {name:#C15, options:#C5}
#C17 = 24 #C17 = 24
#C18 = 20 #C18 = 20
#C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17] #C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17]
} }

View file

@ -55,16 +55,16 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Double {} #C8 = dart.ffi::Double {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 8 #C11 = 8
#C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = 16 #C13 = 16
#C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13] #C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = dart.core::pragma {name:#C15, options:#C5} #C16 = dart.core::pragma {name:#C15, options:#C5}
#C17 = 24 #C17 = 24
#C18 = 20 #C18 = 20
#C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17] #C19 = <dart.core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17]
} }

View file

@ -82,28 +82,28 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Uint8 {} #C8 = dart.ffi::Uint8 {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 1 #C11 = 1
#C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = dart.ffi::Uint64 {} #C13 = dart.ffi::Uint64 {}
#C14 = 8 #C14 = 8
#C15 = 4 #C15 = 4
#C16 = <dart.core::int*>[#C14, #C14, #C15, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14] #C16 = <dart.core::int*>[#C14, #C14, #C15, #C14, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14]
#C17 = "vm:prefer-inline" #C17 = "vm:prefer-inline"
#C18 = dart.core::pragma {name:#C17, options:#C5} #C18 = dart.core::pragma {name:#C17, options:#C5}
#C19 = 16 #C19 = 16
#C20 = 12 #C20 = 12
#C21 = <dart.core::int*>[#C19, #C19, #C20, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19] #C21 = <dart.core::int*>[#C19, #C19, #C20, #C19, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19]
#C22 = TypeLiteralConstant(lib::Y) #C22 = TypeLiteralConstant(lib::Y)
#C23 = <dart.core::Type>[#C22, #C22, #C2] #C23 = <dart.core::Type>[#C22, #C22, #C2]
#C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5} #C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5}
#C25 = dart.core::pragma {name:#C1, options:#C24} #C25 = dart.core::pragma {name:#C1, options:#C24}
#C26 = 32 #C26 = 32
#C27 = 24 #C27 = 24
#C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26] #C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26]
#C29 = 40 #C29 = 40
#C30 = 28 #C30 = 28
#C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29] #C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29]
} }

View file

@ -82,28 +82,28 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Uint8 {} #C8 = dart.ffi::Uint8 {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = dart.ffi::Uint64 {} #C11 = dart.ffi::Uint64 {}
#C12 = 8 #C12 = 8
#C13 = 4 #C13 = 4
#C14 = <dart.core::int*>[#C12, #C12, #C13, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12] #C14 = <dart.core::int*>[#C12, #C12, #C13, #C12, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12]
#C15 = 16 #C15 = 16
#C16 = 12 #C16 = 12
#C17 = <dart.core::int*>[#C15, #C15, #C16, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C15, #C15, #C15, #C15] #C17 = <dart.core::int*>[#C15, #C15, #C16, #C15, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C15, #C15, #C15, #C15]
#C18 = "vm:prefer-inline" #C18 = "vm:prefer-inline"
#C19 = dart.core::pragma {name:#C18, options:#C5} #C19 = dart.core::pragma {name:#C18, options:#C5}
#C20 = 24 #C20 = 24
#C21 = <dart.core::int*>[#C20, #C20, #C15, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C20, #C20, #C20, #C20] #C21 = <dart.core::int*>[#C20, #C20, #C15, #C20, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C20, #C20, #C20, #C20]
#C22 = TypeLiteralConstant(lib::Y) #C22 = TypeLiteralConstant(lib::Y)
#C23 = <dart.core::Type>[#C22, #C22, #C2] #C23 = <dart.core::Type>[#C22, #C22, #C2]
#C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5} #C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5}
#C25 = dart.core::pragma {name:#C1, options:#C24} #C25 = dart.core::pragma {name:#C1, options:#C24}
#C26 = 48 #C26 = 48
#C27 = 32 #C27 = 32
#C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26] #C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26]
#C29 = 56 #C29 = 56
#C30 = 36 #C30 = 36
#C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29] #C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29]
} }

View file

@ -82,28 +82,28 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Uint8 {} #C8 = dart.ffi::Uint8 {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 1 #C11 = 1
#C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = dart.ffi::Uint64 {} #C13 = dart.ffi::Uint64 {}
#C14 = 8 #C14 = 8
#C15 = 4 #C15 = 4
#C16 = <dart.core::int*>[#C14, #C14, #C15, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14] #C16 = <dart.core::int*>[#C14, #C14, #C15, #C14, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14]
#C17 = "vm:prefer-inline" #C17 = "vm:prefer-inline"
#C18 = dart.core::pragma {name:#C17, options:#C5} #C18 = dart.core::pragma {name:#C17, options:#C5}
#C19 = 16 #C19 = 16
#C20 = 12 #C20 = 12
#C21 = <dart.core::int*>[#C19, #C19, #C20, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19] #C21 = <dart.core::int*>[#C19, #C19, #C20, #C19, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19]
#C22 = TypeLiteralConstant(lib::Y) #C22 = TypeLiteralConstant(lib::Y)
#C23 = <dart.core::Type>[#C22, #C22, #C2] #C23 = <dart.core::Type>[#C22, #C22, #C2]
#C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5} #C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5}
#C25 = dart.core::pragma {name:#C1, options:#C24} #C25 = dart.core::pragma {name:#C1, options:#C24}
#C26 = 32 #C26 = 32
#C27 = 24 #C27 = 24
#C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26] #C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26]
#C29 = 40 #C29 = 40
#C30 = 28 #C30 = 28
#C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29] #C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29]
} }

View file

@ -82,28 +82,28 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Uint8 {} #C8 = dart.ffi::Uint8 {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = dart.ffi::Uint64 {} #C11 = dart.ffi::Uint64 {}
#C12 = 8 #C12 = 8
#C13 = 4 #C13 = 4
#C14 = <dart.core::int*>[#C12, #C12, #C13, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12] #C14 = <dart.core::int*>[#C12, #C12, #C13, #C12, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12]
#C15 = 16 #C15 = 16
#C16 = 12 #C16 = 12
#C17 = <dart.core::int*>[#C15, #C15, #C16, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C15, #C15, #C15, #C15] #C17 = <dart.core::int*>[#C15, #C15, #C16, #C15, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C15, #C15, #C15, #C15]
#C18 = "vm:prefer-inline" #C18 = "vm:prefer-inline"
#C19 = dart.core::pragma {name:#C18, options:#C5} #C19 = dart.core::pragma {name:#C18, options:#C5}
#C20 = 24 #C20 = 24
#C21 = <dart.core::int*>[#C20, #C20, #C15, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C20, #C20, #C20, #C20] #C21 = <dart.core::int*>[#C20, #C20, #C15, #C20, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C20, #C20, #C20, #C20]
#C22 = TypeLiteralConstant(lib::Y) #C22 = TypeLiteralConstant(lib::Y)
#C23 = <dart.core::Type>[#C22, #C22, #C2] #C23 = <dart.core::Type>[#C22, #C22, #C2]
#C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5} #C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5}
#C25 = dart.core::pragma {name:#C1, options:#C24} #C25 = dart.core::pragma {name:#C1, options:#C24}
#C26 = 48 #C26 = 48
#C27 = 32 #C27 = 32
#C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26] #C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26]
#C29 = 56 #C29 = 56
#C30 = 36 #C30 = 36
#C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29] #C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29]
} }

View file

@ -274,28 +274,28 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Uint8 {} #C8 = dart.ffi::Uint8 {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 1 #C11 = 1
#C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <dart.core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = dart.ffi::Uint64 {} #C13 = dart.ffi::Uint64 {}
#C14 = 8 #C14 = 8
#C15 = 4 #C15 = 4
#C16 = <dart.core::int*>[#C14, #C14, #C15, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14] #C16 = <dart.core::int*>[#C14, #C14, #C15, #C14, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C15, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14]
#C17 = "vm:prefer-inline" #C17 = "vm:prefer-inline"
#C18 = dart.core::pragma {name:#C17, options:#C5} #C18 = dart.core::pragma {name:#C17, options:#C5}
#C19 = 16 #C19 = 16
#C20 = 12 #C20 = 12
#C21 = <dart.core::int*>[#C19, #C19, #C20, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19] #C21 = <dart.core::int*>[#C19, #C19, #C20, #C19, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C20, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19]
#C22 = TypeLiteralConstant(lib::Y) #C22 = TypeLiteralConstant(lib::Y)
#C23 = <dart.core::Type>[#C22, #C22, #C2] #C23 = <dart.core::Type>[#C22, #C22, #C2]
#C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5} #C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5}
#C25 = dart.core::pragma {name:#C1, options:#C24} #C25 = dart.core::pragma {name:#C1, options:#C24}
#C26 = 32 #C26 = 32
#C27 = 24 #C27 = 24
#C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26] #C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26]
#C29 = 40 #C29 = 40
#C30 = 28 #C30 = 28
#C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29] #C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29]
} }

View file

@ -274,28 +274,28 @@ constants {
#C7 = dart.core::pragma {name:#C1, options:#C6} #C7 = dart.core::pragma {name:#C1, options:#C6}
#C8 = dart.ffi::Uint8 {} #C8 = dart.ffi::Uint8 {}
#C9 = 0 #C9 = 0
#C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <dart.core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = dart.ffi::Uint64 {} #C11 = dart.ffi::Uint64 {}
#C12 = 8 #C12 = 8
#C13 = 4 #C13 = 4
#C14 = <dart.core::int*>[#C12, #C12, #C13, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12] #C14 = <dart.core::int*>[#C12, #C12, #C13, #C12, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C13, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12]
#C15 = 16 #C15 = 16
#C16 = 12 #C16 = 12
#C17 = <dart.core::int*>[#C15, #C15, #C16, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C15, #C15, #C15, #C15] #C17 = <dart.core::int*>[#C15, #C15, #C16, #C15, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C16, #C15, #C15, #C15, #C15, #C15, #C15, #C15, #C15]
#C18 = "vm:prefer-inline" #C18 = "vm:prefer-inline"
#C19 = dart.core::pragma {name:#C18, options:#C5} #C19 = dart.core::pragma {name:#C18, options:#C5}
#C20 = 24 #C20 = 24
#C21 = <dart.core::int*>[#C20, #C20, #C15, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C20, #C20, #C20, #C20] #C21 = <dart.core::int*>[#C20, #C20, #C15, #C20, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C15, #C20, #C20, #C20, #C20, #C20, #C20, #C20, #C20]
#C22 = TypeLiteralConstant(lib::Y) #C22 = TypeLiteralConstant(lib::Y)
#C23 = <dart.core::Type>[#C22, #C22, #C2] #C23 = <dart.core::Type>[#C22, #C22, #C2]
#C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5} #C24 = dart.ffi::_FfiStructLayout {fieldTypes:#C23, packing:#C5}
#C25 = dart.core::pragma {name:#C1, options:#C24} #C25 = dart.core::pragma {name:#C1, options:#C24}
#C26 = 48 #C26 = 48
#C27 = 32 #C27 = 32
#C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26] #C28 = <dart.core::int*>[#C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C27, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26]
#C29 = 56 #C29 = 56
#C30 = 36 #C30 = 36
#C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29] #C31 = <dart.core::int*>[#C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C30, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29]
} }

View file

@ -55,12 +55,12 @@ constants {
#C5 = dart.ffi::_FfiStructLayout {fieldTypes:#C3, packing:#C4} #C5 = dart.ffi::_FfiStructLayout {fieldTypes:#C3, packing:#C4}
#C6 = dart.core::pragma {name:#C1, options:#C5} #C6 = dart.core::pragma {name:#C1, options:#C5}
#C7 = 0 #C7 = 0
#C8 = <dart.core::int*>[#C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7] #C8 = <dart.core::int*>[#C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7]
#C9 = "vm:prefer-inline" #C9 = "vm:prefer-inline"
#C10 = dart.core::pragma {name:#C9, options:#C4} #C10 = dart.core::pragma {name:#C9, options:#C4}
#C11 = 4 #C11 = 4
#C12 = 8 #C12 = 8
#C13 = <dart.core::int*>[#C11, #C12, #C11, #C12, #C12, #C12, #C12, #C11, #C12, #C12, #C11, #C12, #C11, #C12, #C11, #C12, #C12, #C12, #C12, #C11, #C12] #C13 = <dart.core::int*>[#C11, #C12, #C11, #C12, #C12, #C12, #C12, #C12, #C11, #C12, #C12, #C11, #C12, #C11, #C12, #C11, #C12, #C12, #C12, #C12, #C11, #C12]
#C14 = TypeLiteralConstant(lib::COMObject) #C14 = TypeLiteralConstant(lib::COMObject)
#C15 = <dart.core::Type>[#C14] #C15 = <dart.core::Type>[#C14]
#C16 = dart.ffi::_FfiStructLayout {fieldTypes:#C15, packing:#C4} #C16 = dart.ffi::_FfiStructLayout {fieldTypes:#C15, packing:#C4}

View file

@ -55,12 +55,12 @@ constants {
#C5 = dart.ffi::_FfiStructLayout {fieldTypes:#C3, packing:#C4} #C5 = dart.ffi::_FfiStructLayout {fieldTypes:#C3, packing:#C4}
#C6 = dart.core::pragma {name:#C1, options:#C5} #C6 = dart.core::pragma {name:#C1, options:#C5}
#C7 = 0 #C7 = 0
#C8 = <dart.core::int*>[#C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7] #C8 = <dart.core::int*>[#C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7, #C7]
#C9 = "vm:prefer-inline" #C9 = "vm:prefer-inline"
#C10 = dart.core::pragma {name:#C9, options:#C4} #C10 = dart.core::pragma {name:#C9, options:#C4}
#C11 = 4 #C11 = 4
#C12 = 8 #C12 = 8
#C13 = <dart.core::int*>[#C11, #C12, #C11, #C12, #C12, #C12, #C12, #C11, #C12, #C12, #C11, #C12, #C11, #C12, #C11, #C12, #C12, #C12, #C12, #C11, #C12] #C13 = <dart.core::int*>[#C11, #C12, #C11, #C12, #C12, #C12, #C12, #C12, #C11, #C12, #C12, #C11, #C12, #C11, #C12, #C11, #C12, #C12, #C12, #C12, #C11, #C12]
#C14 = TypeLiteralConstant(lib::COMObject) #C14 = TypeLiteralConstant(lib::COMObject)
#C15 = <dart.core::Type>[#C14] #C15 = <dart.core::Type>[#C14]
#C16 = dart.ffi::_FfiStructLayout {fieldTypes:#C15, packing:#C4} #C16 = dart.ffi::_FfiStructLayout {fieldTypes:#C15, packing:#C4}

View file

@ -50,16 +50,16 @@ constants {
#C7 = core::pragma {name:#C1, options:#C6} #C7 = core::pragma {name:#C1, options:#C6}
#C8 = ffi::Double {} #C8 = ffi::Double {}
#C9 = 0 #C9 = 0
#C10 = <core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 8 #C11 = 8
#C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = 16 #C13 = 16
#C14 = <core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13] #C14 = <core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = core::pragma {name:#C15, options:#C5} #C16 = core::pragma {name:#C15, options:#C5}
#C17 = 24 #C17 = 24
#C18 = 20 #C18 = 20
#C19 = <core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17] #C19 = <core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17]
} }

View file

@ -50,16 +50,16 @@ constants {
#C7 = core::pragma {name:#C1, options:#C6} #C7 = core::pragma {name:#C1, options:#C6}
#C8 = ffi::Double {} #C8 = ffi::Double {}
#C9 = 0 #C9 = 0
#C10 = <core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9] #C10 = <core::int*>[#C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9, #C9]
#C11 = 8 #C11 = 8
#C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = 16 #C13 = 16
#C14 = <core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13] #C14 = <core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = core::pragma {name:#C15, options:#C5} #C16 = core::pragma {name:#C15, options:#C5}
#C17 = 24 #C17 = 24
#C18 = 20 #C18 = 20
#C19 = <core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17] #C19 = <core::int*>[#C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C18, #C17, #C17, #C17, #C17, #C17, #C17, #C17, #C17]
} }

View file

@ -42,8 +42,8 @@ constants {
#C8 = core::pragma {name:#C1, options:#C7} #C8 = core::pragma {name:#C1, options:#C7}
#C9 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C3, dimension2:#C6, dimension3:#C6, dimension4:#C6, dimension5:#C6, dimensions:#C6} #C9 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C3, dimension2:#C6, dimension3:#C6, dimension4:#C6, dimension5:#C6, dimensions:#C6}
#C10 = 0 #C10 = 0
#C11 = <core::int*>[#C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10] #C11 = <core::int*>[#C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10]
#C12 = <core::int*>[#C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3] #C12 = <core::int*>[#C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3]
#C13 = <core::int*>[] #C13 = <core::int*>[]
#C14 = "vm:prefer-inline" #C14 = "vm:prefer-inline"
#C15 = core::pragma {name:#C14, options:#C6} #C15 = core::pragma {name:#C14, options:#C6}

View file

@ -42,8 +42,8 @@ constants {
#C8 = core::pragma {name:#C1, options:#C7} #C8 = core::pragma {name:#C1, options:#C7}
#C9 = ffi::_ArraySize<ffi::NativeType*> {dimension1:#C3, dimension2:#C6, dimension3:#C6, dimension4:#C6, dimension5:#C6, dimensions:#C6} #C9 = ffi::_ArraySize<ffi::NativeType*> {dimension1:#C3, dimension2:#C6, dimension3:#C6, dimension4:#C6, dimension5:#C6, dimensions:#C6}
#C10 = 0 #C10 = 0
#C11 = <core::int*>[#C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10] #C11 = <core::int*>[#C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10]
#C12 = <core::int*>[#C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3] #C12 = <core::int*>[#C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3]
#C13 = <core::int*>[] #C13 = <core::int*>[]
#C14 = "vm:prefer-inline" #C14 = "vm:prefer-inline"
#C15 = core::pragma {name:#C14, options:#C6} #C15 = core::pragma {name:#C14, options:#C6}

View file

@ -67,8 +67,8 @@ constants {
#C9 = 2 #C9 = 2
#C10 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C9, dimension2:#C9, dimension3:#C9, dimension4:#C6, dimension5:#C6, dimensions:#C6} #C10 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C9, dimension2:#C9, dimension3:#C9, dimension4:#C6, dimension5:#C6, dimensions:#C6}
#C11 = 0 #C11 = 0
#C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = <core::int*>[#C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3] #C13 = <core::int*>[#C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3]
#C14 = <core::int*>[#C9, #C9] #C14 = <core::int*>[#C9, #C9]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = core::pragma {name:#C15, options:#C6} #C16 = core::pragma {name:#C15, options:#C6}

View file

@ -67,8 +67,8 @@ constants {
#C9 = 2 #C9 = 2
#C10 = ffi::_ArraySize<ffi::NativeType*> {dimension1:#C9, dimension2:#C9, dimension3:#C9, dimension4:#C6, dimension5:#C6, dimensions:#C6} #C10 = ffi::_ArraySize<ffi::NativeType*> {dimension1:#C9, dimension2:#C9, dimension3:#C9, dimension4:#C6, dimension5:#C6, dimensions:#C6}
#C11 = 0 #C11 = 0
#C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = <core::int*>[#C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3] #C13 = <core::int*>[#C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3, #C3]
#C14 = <core::int*>[#C9, #C9] #C14 = <core::int*>[#C9, #C9]
#C15 = "vm:prefer-inline" #C15 = "vm:prefer-inline"
#C16 = core::pragma {name:#C15, options:#C6} #C16 = core::pragma {name:#C15, options:#C6}

View file

@ -60,9 +60,12 @@ class Abi {
/// The application binary interface for Android on the IA32 architecture. /// The application binary interface for Android on the IA32 architecture.
static const androidIA32 = _androidIA32; static const androidIA32 = _androidIA32;
/// The application binary interface for android on the X64 architecture. /// The application binary interface for Android on the X64 architecture.
static const androidX64 = _androidX64; static const androidX64 = _androidX64;
/// The application binary interface for Android on 64-bit RISC-V.
static const androidRiscv64 = _androidRiscv64;
/// The application binary interface for Fuchsia on the Arm64 architecture. /// The application binary interface for Fuchsia on the Arm64 architecture.
static const fuchsiaArm64 = _fuchsiaArm64; static const fuchsiaArm64 = _fuchsiaArm64;
@ -130,6 +133,7 @@ class Abi {
androidArm64, androidArm64,
androidIA32, androidIA32,
androidX64, androidX64,
androidRiscv64,
fuchsiaArm64, fuchsiaArm64,
fuchsiaX64, fuchsiaX64,
fuchsiaRiscv64, fuchsiaRiscv64,
@ -176,6 +180,7 @@ class Abi {
static const _androidArm64 = Abi._(_Architecture.arm64, _OS.android); static const _androidArm64 = Abi._(_Architecture.arm64, _OS.android);
static const _androidIA32 = Abi._(_Architecture.ia32, _OS.android); static const _androidIA32 = Abi._(_Architecture.ia32, _OS.android);
static const _androidX64 = Abi._(_Architecture.x64, _OS.android); static const _androidX64 = Abi._(_Architecture.x64, _OS.android);
static const _androidRiscv64 = Abi._(_Architecture.riscv64, _OS.android);
static const _fuchsiaArm64 = Abi._(_Architecture.arm64, _OS.fuchsia); static const _fuchsiaArm64 = Abi._(_Architecture.arm64, _OS.fuchsia);
static const _fuchsiaX64 = Abi._(_Architecture.x64, _OS.fuchsia); static const _fuchsiaX64 = Abi._(_Architecture.x64, _OS.fuchsia);
static const _fuchsiaRiscv64 = Abi._(_Architecture.riscv64, _OS.fuchsia); static const _fuchsiaRiscv64 = Abi._(_Architecture.riscv64, _OS.fuchsia);
@ -201,6 +206,7 @@ const Map<Abi, String> abiNames = {
Abi.androidArm64: 'androidArm64', Abi.androidArm64: 'androidArm64',
Abi.androidIA32: 'androidIA32', Abi.androidIA32: 'androidIA32',
Abi.androidX64: 'androidX64', Abi.androidX64: 'androidX64',
Abi.androidRiscv64: 'androidRiscv64',
Abi.fuchsiaArm64: 'fuchsiaArm64', Abi.fuchsiaArm64: 'fuchsiaArm64',
Abi.fuchsiaX64: 'fuchsiaX64', Abi.fuchsiaX64: 'fuchsiaX64',
Abi.fuchsiaRiscv64: 'fuchsiaRiscv64', Abi.fuchsiaRiscv64: 'fuchsiaRiscv64',
@ -243,6 +249,7 @@ const Map<Abi, Map<NativeType, int>> nonSizeAlignment = {
// _wordSize64 // _wordSize64
Abi.androidArm64: _wordSize64, Abi.androidArm64: _wordSize64,
Abi.androidX64: _wordSize64, Abi.androidX64: _wordSize64,
Abi.androidRiscv64: _wordSize64,
Abi.fuchsiaArm64: _wordSize64, Abi.fuchsiaArm64: _wordSize64,
Abi.fuchsiaX64: _wordSize64, Abi.fuchsiaX64: _wordSize64,
Abi.fuchsiaRiscv64: _wordSize64, Abi.fuchsiaRiscv64: _wordSize64,

View file

@ -9,6 +9,7 @@ import 'dart:ffi';
Abi.androidArm64: Uint32(), Abi.androidArm64: Uint32(),
Abi.androidIA32: Uint32(), Abi.androidIA32: Uint32(),
Abi.androidX64: Uint32(), Abi.androidX64: Uint32(),
Abi.androidRiscv64: Int32(),
Abi.fuchsiaArm64: Uint32(), Abi.fuchsiaArm64: Uint32(),
Abi.fuchsiaX64: Uint32(), Abi.fuchsiaX64: Uint32(),
Abi.fuchsiaRiscv64: Uint32(), Abi.fuchsiaRiscv64: Uint32(),

View file

@ -95,7 +95,7 @@ constants {
#C2 = TypeLiteralConstant(ffi::Uint32) #C2 = TypeLiteralConstant(ffi::Uint32)
#C3 = TypeLiteralConstant(ffi::Int32) #C3 = TypeLiteralConstant(ffi::Int32)
#C4 = TypeLiteralConstant(ffi::Uint16) #C4 = TypeLiteralConstant(ffi::Uint16)
#C5 = <core::Type?>[#C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C3, #C3, #C3, #C3, #C2, #C2, #C4, #C4, #C4] #C5 = <core::Type?>[#C2, #C2, #C2, #C2, #C3, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C3, #C3, #C3, #C3, #C2, #C2, #C4, #C4, #C4]
#C6 = ffi::_FfiAbiSpecificMapping {nativeTypes:#C5} #C6 = ffi::_FfiAbiSpecificMapping {nativeTypes:#C5}
#C7 = core::pragma {name:#C1, options:#C6} #C7 = core::pragma {name:#C1, options:#C6}
#C8 = "vm:prefer-inline" #C8 = "vm:prefer-inline"
@ -103,16 +103,16 @@ constants {
#C10 = core::pragma {name:#C8, options:#C9} #C10 = core::pragma {name:#C8, options:#C9}
#C11 = 4 #C11 = 4
#C12 = 2 #C12 = 2
#C13 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C12, #C12, #C12] #C13 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C12, #C12, #C12]
#C14 = "vm:ffi:struct-fields" #C14 = "vm:ffi:struct-fields"
#C15 = TypeLiteralConstant(self::WChar) #C15 = TypeLiteralConstant(self::WChar)
#C16 = <core::Type>[#C15, #C15] #C16 = <core::Type>[#C15, #C15]
#C17 = ffi::_FfiStructLayout {fieldTypes:#C16, packing:#C9} #C17 = ffi::_FfiStructLayout {fieldTypes:#C16, packing:#C9}
#C18 = core::pragma {name:#C14, options:#C17} #C18 = core::pragma {name:#C14, options:#C17}
#C19 = 0 #C19 = 0
#C20 = <core::int*>[#C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19] #C20 = <core::int*>[#C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19, #C19]
#C21 = 8 #C21 = 8
#C22 = <core::int*>[#C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C11, #C11, #C11] #C22 = <core::int*>[#C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C21, #C11, #C11, #C11]
#C23 = 100 #C23 = 100
#C24 = ffi::_FfiInlineArray {elementType:#C15, length:#C23} #C24 = ffi::_FfiInlineArray {elementType:#C15, length:#C23}
#C25 = <core::Type>[#C24] #C25 = <core::Type>[#C24]
@ -121,6 +121,6 @@ constants {
#C28 = <core::int*>[] #C28 = <core::int*>[]
#C29 = 400 #C29 = 400
#C30 = 200 #C30 = 200
#C31 = <core::int*>[#C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C30, #C30, #C30] #C31 = <core::int*>[#C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C29, #C30, #C30, #C30]
#C32 = self::_DummyAllocator {} #C32 = self::_DummyAllocator {}
} }

View file

@ -7,17 +7,17 @@ import "dart:_internal" as _in;
import "dart:ffi"; import "dart:ffi";
@#C56 @#C57
@#C63 @#C64
final class WChar extends ffi::AbiSpecificInteger /*hasConstConstructor*/ { final class WChar extends ffi::AbiSpecificInteger /*hasConstConstructor*/ {
const constructor •() → self::WChar const constructor •() → self::WChar
: super ffi::AbiSpecificInteger::•() : super ffi::AbiSpecificInteger::•()
; ;
@#C66 @#C67
static get #sizeOf() → core::int* static get #sizeOf() → core::int*
return #C67.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}; return #C68.{core::List::[]}(ffi::_abi()){(core::int) → core::int*};
} }
@#C72 @#C73
final class WCharStruct extends ffi::Struct { final class WCharStruct extends ffi::Struct {
synthetic constructor •() → self::WCharStruct synthetic constructor •() → self::WCharStruct
: super ffi::Struct::•() : super ffi::Struct::•()
@ -25,23 +25,23 @@ final class WCharStruct extends ffi::Struct {
constructor #fromTypedDataBase(synthesized core::Object #typedDataBase) → self::WCharStruct constructor #fromTypedDataBase(synthesized core::Object #typedDataBase) → self::WCharStruct
: super ffi::Struct::_fromTypedDataBase(#typedDataBase) : super ffi::Struct::_fromTypedDataBase(#typedDataBase)
; ;
@#C73 @#C74
get a0() → core::int get a0() → core::int
return ffi::_loadAbiSpecificInt<self::WChar>(this.{ffi::_Compound::_typedDataBase}{core::Object}, #C74.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}); return ffi::_loadAbiSpecificInt<self::WChar>(this.{ffi::_Compound::_typedDataBase}{core::Object}, #C75.{core::List::[]}(ffi::_abi()){(core::int) → core::int*});
@#C73 @#C74
set a0(core::int #externalFieldValue) → void set a0(core::int #externalFieldValue) → void
return ffi::_storeAbiSpecificInt<self::WChar>(this.{ffi::_Compound::_typedDataBase}{core::Object}, #C74.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}, #externalFieldValue); return ffi::_storeAbiSpecificInt<self::WChar>(this.{ffi::_Compound::_typedDataBase}{core::Object}, #C75.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}, #externalFieldValue);
@#C73 @#C74
get a1() → core::int get a1() → core::int
return ffi::_loadAbiSpecificInt<self::WChar>(this.{ffi::_Compound::_typedDataBase}{core::Object}, #C67.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}); return ffi::_loadAbiSpecificInt<self::WChar>(this.{ffi::_Compound::_typedDataBase}{core::Object}, #C68.{core::List::[]}(ffi::_abi()){(core::int) → core::int*});
@#C73 @#C74
set a1(core::int #externalFieldValue) → void set a1(core::int #externalFieldValue) → void
return ffi::_storeAbiSpecificInt<self::WChar>(this.{ffi::_Compound::_typedDataBase}{core::Object}, #C67.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}, #externalFieldValue); return ffi::_storeAbiSpecificInt<self::WChar>(this.{ffi::_Compound::_typedDataBase}{core::Object}, #C68.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}, #externalFieldValue);
@#C66 @#C67
static get #sizeOf() → core::int* static get #sizeOf() → core::int*
return #C76.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}; return #C77.{core::List::[]}(ffi::_abi()){(core::int) → core::int*};
} }
@#C81 @#C82
final class WCharArrayStruct extends ffi::Struct { final class WCharArrayStruct extends ffi::Struct {
synthetic constructor •() → self::WCharArrayStruct synthetic constructor •() → self::WCharArrayStruct
: super ffi::Struct::•() : super ffi::Struct::•()
@ -49,31 +49,31 @@ final class WCharArrayStruct extends ffi::Struct {
constructor #fromTypedDataBase(synthesized core::Object #typedDataBase) → self::WCharArrayStruct constructor #fromTypedDataBase(synthesized core::Object #typedDataBase) → self::WCharArrayStruct
: super ffi::Struct::_fromTypedDataBase(#typedDataBase) : super ffi::Struct::_fromTypedDataBase(#typedDataBase)
; ;
@#C82 @#C83
get a0() → ffi::Array<self::WChar> get a0() → ffi::Array<self::WChar>
return new ffi::Array::_<self::WChar>( block { return new ffi::Array::_<self::WChar>( block {
synthesized core::Object #typedDataBase = this.{ffi::_Compound::_typedDataBase}{core::Object}; synthesized core::Object #typedDataBase = this.{ffi::_Compound::_typedDataBase}{core::Object};
synthesized core::int #offset = #C74.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}; synthesized core::int #offset = #C75.{core::List::[]}(ffi::_abi()){(core::int) → core::int*};
} =>#typedDataBase is ffi::Pointer<dynamic> ?{core::Object} ffi::_fromAddress<self::WChar>(#typedDataBase.{ffi::Pointer::address}{core::int}.{core::num::+}(#offset){(core::num) → core::num}) : let synthesized typ::TypedData #typedData = _in::unsafeCast<typ::TypedData>(#typedDataBase) in #typedData.{typ::TypedData::buffer}{typ::ByteBuffer}.{typ::ByteBuffer::asUint8List}(#typedData.{typ::TypedData::offsetInBytes}{core::int}.{core::num::+}(#offset){(core::num) → core::num}, #C85.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}){([core::int, core::int?]) → typ::Uint8List}, #C77, #C86); } =>#typedDataBase is ffi::Pointer<dynamic> ?{core::Object} ffi::_fromAddress<self::WChar>(#typedDataBase.{ffi::Pointer::address}{core::int}.{core::num::+}(#offset){(core::num) → core::num}) : let synthesized typ::TypedData #typedData = _in::unsafeCast<typ::TypedData>(#typedDataBase) in #typedData.{typ::TypedData::buffer}{typ::ByteBuffer}.{typ::ByteBuffer::asUint8List}(#typedData.{typ::TypedData::offsetInBytes}{core::int}.{core::num::+}(#offset){(core::num) → core::num}, #C86.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}){([core::int, core::int?]) → typ::Uint8List}, #C78, #C87);
@#C82 @#C83
set a0(ffi::Array<self::WChar> #externalFieldValue) → void set a0(ffi::Array<self::WChar> #externalFieldValue) → void
return ffi::_memCopy(this.{ffi::_Compound::_typedDataBase}{core::Object}, #C74.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}, #externalFieldValue.{ffi::Array::_typedDataBase}{core::Object}, #C1, #C85.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}); return ffi::_memCopy(this.{ffi::_Compound::_typedDataBase}{core::Object}, #C75.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}, #externalFieldValue.{ffi::Array::_typedDataBase}{core::Object}, #C1, #C86.{core::List::[]}(ffi::_abi()){(core::int) → core::int*});
@#C66 @#C67
static get #sizeOf() → core::int* static get #sizeOf() → core::int*
return #C85.{core::List::[]}(ffi::_abi()){(core::int) → core::int*}; return #C86.{core::List::[]}(ffi::_abi()){(core::int) → core::int*};
} }
class _DummyAllocator extends core::Object implements ffi::Allocator /*hasConstConstructor*/ { class _DummyAllocator extends core::Object implements ffi::Allocator /*hasConstConstructor*/ {
const constructor •() → self::_DummyAllocator const constructor •() → self::_DummyAllocator
: super core::Object::•() : super core::Object::•()
; ;
@#C87 @#C88
method allocate<T extends ffi::NativeType>(core::int byteCount, {core::int? alignment = #C65}) → ffi::Pointer<self::_DummyAllocator::allocate::T> { method allocate<T extends ffi::NativeType>(core::int byteCount, {core::int? alignment = #C66}) → ffi::Pointer<self::_DummyAllocator::allocate::T> {
return ffi::Pointer::fromAddress<self::_DummyAllocator::allocate::T>(0); return ffi::Pointer::fromAddress<self::_DummyAllocator::allocate::T>(0);
} }
@#C87 @#C88
method free(ffi::Pointer<ffi::NativeType> pointer) → void {} method free(ffi::Pointer<ffi::NativeType> pointer) → void {}
} }
static const field self::_DummyAllocator noAlloc = #C88; static const field self::_DummyAllocator noAlloc = #C89;
static method main() → void { static method main() → void {
self::testSizeOf(); self::testSizeOf();
self::testStoreLoad(); self::testStoreLoad();
@ -86,29 +86,29 @@ static method testSizeOf() → void {
core::print(size); core::print(size);
} }
static method testStoreLoad() → void { static method testStoreLoad() → void {
final ffi::Pointer<self::WChar> p = #C88.{ffi::Allocator::allocate}<self::WChar>(self::WChar::#sizeOf){(core::int, {alignment: core::int?}) → ffi::Pointer<self::WChar>}; final ffi::Pointer<self::WChar> p = #C89.{ffi::Allocator::allocate}<self::WChar>(self::WChar::#sizeOf){(core::int, {alignment: core::int?}) → ffi::Pointer<self::WChar>};
ffi::_storeAbiSpecificInt<self::WChar>(p, #C1, 10); ffi::_storeAbiSpecificInt<self::WChar>(p, #C1, 10);
core::print(ffi::_loadAbiSpecificInt<self::WChar>(p, #C1)); core::print(ffi::_loadAbiSpecificInt<self::WChar>(p, #C1));
#C88.{self::_DummyAllocator::free}(p){(ffi::Pointer<ffi::NativeType>) → void}; #C89.{self::_DummyAllocator::free}(p){(ffi::Pointer<ffi::NativeType>) → void};
} }
static method testStoreLoadIndexed() → void { static method testStoreLoadIndexed() → void {
final ffi::Pointer<self::WChar> p = #C88.{ffi::Allocator::allocate}<self::WChar>(2.{core::num::*}(self::WChar::#sizeOf){(core::num) → core::num}){(core::int, {alignment: core::int?}) → ffi::Pointer<self::WChar>}; final ffi::Pointer<self::WChar> p = #C89.{ffi::Allocator::allocate}<self::WChar>(2.{core::num::*}(self::WChar::#sizeOf){(core::num) → core::num}){(core::int, {alignment: core::int?}) → ffi::Pointer<self::WChar>};
ffi::_storeAbiSpecificIntAtIndex<self::WChar>(p, 0, 10); ffi::_storeAbiSpecificIntAtIndex<self::WChar>(p, 0, 10);
ffi::_storeAbiSpecificIntAtIndex<self::WChar>(p, 1, 3); ffi::_storeAbiSpecificIntAtIndex<self::WChar>(p, 1, 3);
core::print(ffi::_loadAbiSpecificIntAtIndex<self::WChar>(p, 0)); core::print(ffi::_loadAbiSpecificIntAtIndex<self::WChar>(p, 0));
core::print(ffi::_loadAbiSpecificIntAtIndex<self::WChar>(p, 1)); core::print(ffi::_loadAbiSpecificIntAtIndex<self::WChar>(p, 1));
#C88.{self::_DummyAllocator::free}(p){(ffi::Pointer<ffi::NativeType>) → void}; #C89.{self::_DummyAllocator::free}(p){(ffi::Pointer<ffi::NativeType>) → void};
} }
static method testStruct() → void { static method testStruct() → void {
final ffi::Pointer<self::WCharStruct> p = #C88.{ffi::Allocator::allocate}<self::WCharStruct>(self::WCharStruct::#sizeOf){(core::int, {alignment: core::int?}) → ffi::Pointer<self::WCharStruct>}; final ffi::Pointer<self::WCharStruct> p = #C89.{ffi::Allocator::allocate}<self::WCharStruct>(self::WCharStruct::#sizeOf){(core::int, {alignment: core::int?}) → ffi::Pointer<self::WCharStruct>};
new self::WCharStruct::#fromTypedDataBase(p!).{self::WCharStruct::a0} = 1; new self::WCharStruct::#fromTypedDataBase(p!).{self::WCharStruct::a0} = 1;
core::print(new self::WCharStruct::#fromTypedDataBase(p!).{self::WCharStruct::a0}{core::int}); core::print(new self::WCharStruct::#fromTypedDataBase(p!).{self::WCharStruct::a0}{core::int});
new self::WCharStruct::#fromTypedDataBase(p!).{self::WCharStruct::a0} = 2; new self::WCharStruct::#fromTypedDataBase(p!).{self::WCharStruct::a0} = 2;
core::print(new self::WCharStruct::#fromTypedDataBase(p!).{self::WCharStruct::a0}{core::int}); core::print(new self::WCharStruct::#fromTypedDataBase(p!).{self::WCharStruct::a0}{core::int});
#C88.{self::_DummyAllocator::free}(p){(ffi::Pointer<ffi::NativeType>) → void}; #C89.{self::_DummyAllocator::free}(p){(ffi::Pointer<ffi::NativeType>) → void};
} }
static method testInlineArray() → void { static method testInlineArray() → void {
final ffi::Pointer<self::WCharArrayStruct> p = #C88.{ffi::Allocator::allocate}<self::WCharArrayStruct>(self::WCharArrayStruct::#sizeOf){(core::int, {alignment: core::int?}) → ffi::Pointer<self::WCharArrayStruct>}; final ffi::Pointer<self::WCharArrayStruct> p = #C89.{ffi::Allocator::allocate}<self::WCharArrayStruct>(self::WCharArrayStruct::#sizeOf){(core::int, {alignment: core::int?}) → ffi::Pointer<self::WCharArrayStruct>};
final ffi::Array<self::WChar> array = new self::WCharArrayStruct::#fromTypedDataBase(p!).{self::WCharArrayStruct::a0}{ffi::Array<self::WChar>}; final ffi::Array<self::WChar> array = new self::WCharArrayStruct::#fromTypedDataBase(p!).{self::WCharArrayStruct::a0}{ffi::Array<self::WChar>};
for (core::int i = 0; i.{core::num::<}(100){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { for (core::int i = 0; i.{core::num::<}(100){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) {
ffi::_storeAbiSpecificIntAtIndex<self::WChar>(array.{ffi::Array::_typedDataBase}{core::Object}, i, i); ffi::_storeAbiSpecificIntAtIndex<self::WChar>(array.{ffi::Array::_typedDataBase}{core::Object}, i, i);
@ -116,7 +116,7 @@ static method testInlineArray() → void {
for (core::int i = 0; i.{core::num::<}(100){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { for (core::int i = 0; i.{core::num::<}(100){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) {
core::print(ffi::_loadAbiSpecificIntAtIndex<self::WChar>(array.{ffi::Array::_typedDataBase}{core::Object}, i)); core::print(ffi::_loadAbiSpecificIntAtIndex<self::WChar>(array.{ffi::Array::_typedDataBase}{core::Object}, i));
} }
#C88.{self::_DummyAllocator::free}(p){(ffi::Pointer<ffi::NativeType>) → void}; #C89.{self::_DummyAllocator::free}(p){(ffi::Pointer<ffi::NativeType>) → void};
} }
constants { constants {
#C1 = 0 #C1 = 0
@ -138,73 +138,74 @@ constants {
#C17 = "x64" #C17 = "x64"
#C18 = ffi::_Architecture {index:#C16, _name:#C17} #C18 = ffi::_Architecture {index:#C16, _name:#C17}
#C19 = ffi::Abi {_os:#C3, _architecture:#C18} #C19 = ffi::Abi {_os:#C3, _architecture:#C18}
#C20 = "fuchsia" #C20 = 5
#C21 = ffi::_OS {index:#C8, _name:#C20} #C21 = "riscv64"
#C22 = ffi::Abi {_os:#C21, _architecture:#C10} #C22 = ffi::_Architecture {index:#C20, _name:#C21}
#C23 = ffi::Abi {_os:#C21, _architecture:#C18} #C23 = ffi::Abi {_os:#C3, _architecture:#C22}
#C24 = 5 #C24 = ffi::Int32 {}
#C25 = "riscv64" #C25 = "fuchsia"
#C26 = ffi::_Architecture {index:#C24, _name:#C25} #C26 = ffi::_OS {index:#C8, _name:#C25}
#C27 = ffi::Abi {_os:#C21, _architecture:#C26} #C27 = ffi::Abi {_os:#C26, _architecture:#C10}
#C28 = "ios" #C28 = ffi::Abi {_os:#C26, _architecture:#C18}
#C29 = ffi::_OS {index:#C12, _name:#C28} #C29 = ffi::Abi {_os:#C26, _architecture:#C22}
#C30 = ffi::Abi {_os:#C29, _architecture:#C5} #C30 = "ios"
#C31 = ffi::Abi {_os:#C29, _architecture:#C10} #C31 = ffi::_OS {index:#C12, _name:#C30}
#C32 = ffi::Abi {_os:#C29, _architecture:#C18} #C32 = ffi::Abi {_os:#C31, _architecture:#C5}
#C33 = "linux" #C33 = ffi::Abi {_os:#C31, _architecture:#C10}
#C34 = ffi::_OS {index:#C16, _name:#C33} #C34 = ffi::Abi {_os:#C31, _architecture:#C18}
#C35 = ffi::Abi {_os:#C34, _architecture:#C5} #C35 = "linux"
#C36 = ffi::Abi {_os:#C34, _architecture:#C10} #C36 = ffi::_OS {index:#C16, _name:#C35}
#C37 = ffi::Abi {_os:#C34, _architecture:#C14} #C37 = ffi::Abi {_os:#C36, _architecture:#C5}
#C38 = ffi::Int32 {} #C38 = ffi::Abi {_os:#C36, _architecture:#C10}
#C39 = ffi::Abi {_os:#C34, _architecture:#C18} #C39 = ffi::Abi {_os:#C36, _architecture:#C14}
#C40 = 4 #C40 = ffi::Abi {_os:#C36, _architecture:#C18}
#C41 = "riscv32" #C41 = 4
#C42 = ffi::_Architecture {index:#C40, _name:#C41} #C42 = "riscv32"
#C43 = ffi::Abi {_os:#C34, _architecture:#C42} #C43 = ffi::_Architecture {index:#C41, _name:#C42}
#C44 = ffi::Abi {_os:#C34, _architecture:#C26} #C44 = ffi::Abi {_os:#C36, _architecture:#C43}
#C45 = "macos" #C45 = ffi::Abi {_os:#C36, _architecture:#C22}
#C46 = ffi::_OS {index:#C40, _name:#C45} #C46 = "macos"
#C47 = ffi::Abi {_os:#C46, _architecture:#C10} #C47 = ffi::_OS {index:#C41, _name:#C46}
#C48 = ffi::Abi {_os:#C46, _architecture:#C18} #C48 = ffi::Abi {_os:#C47, _architecture:#C10}
#C49 = "windows" #C49 = ffi::Abi {_os:#C47, _architecture:#C18}
#C50 = ffi::_OS {index:#C24, _name:#C49} #C50 = "windows"
#C51 = ffi::Abi {_os:#C50, _architecture:#C10} #C51 = ffi::_OS {index:#C20, _name:#C50}
#C52 = ffi::Uint16 {} #C52 = ffi::Abi {_os:#C51, _architecture:#C10}
#C53 = ffi::Abi {_os:#C50, _architecture:#C14} #C53 = ffi::Uint16 {}
#C54 = ffi::Abi {_os:#C50, _architecture:#C18} #C54 = ffi::Abi {_os:#C51, _architecture:#C14}
#C55 = <ffi::Abi, ffi::NativeType>{#C6:#C7, #C11:#C7, #C15:#C7, #C19:#C7, #C22:#C7, #C23:#C7, #C27:#C7, #C30:#C7, #C31:#C7, #C32:#C7, #C35:#C7, #C36:#C7, #C37:#C38, #C39:#C38, #C43:#C38, #C44:#C38, #C47:#C7, #C48:#C7, #C51:#C52, #C53:#C52, #C54:#C52} #C55 = ffi::Abi {_os:#C51, _architecture:#C18}
#C56 = ffi::AbiSpecificIntegerMapping {mapping:#C55} #C56 = <ffi::Abi, ffi::NativeType>{#C6:#C7, #C11:#C7, #C15:#C7, #C19:#C7, #C23:#C24, #C27:#C7, #C28:#C7, #C29:#C7, #C32:#C7, #C33:#C7, #C34:#C7, #C37:#C7, #C38:#C7, #C39:#C24, #C40:#C24, #C44:#C24, #C45:#C24, #C48:#C7, #C49:#C7, #C52:#C53, #C54:#C53, #C55:#C53}
#C57 = "vm:ffi:abi-specific-mapping" #C57 = ffi::AbiSpecificIntegerMapping {mapping:#C56}
#C58 = TypeLiteralConstant(ffi::Uint32) #C58 = "vm:ffi:abi-specific-mapping"
#C59 = TypeLiteralConstant(ffi::Int32) #C59 = TypeLiteralConstant(ffi::Uint32)
#C60 = TypeLiteralConstant(ffi::Uint16) #C60 = TypeLiteralConstant(ffi::Int32)
#C61 = <core::Type?>[#C58, #C58, #C58, #C58, #C58, #C58, #C58, #C58, #C58, #C58, #C58, #C58, #C59, #C59, #C59, #C59, #C58, #C58, #C60, #C60, #C60] #C61 = TypeLiteralConstant(ffi::Uint16)
#C62 = ffi::_FfiAbiSpecificMapping {nativeTypes:#C61} #C62 = <core::Type?>[#C59, #C59, #C59, #C59, #C60, #C59, #C59, #C59, #C59, #C59, #C59, #C59, #C59, #C60, #C60, #C60, #C60, #C59, #C59, #C61, #C61, #C61]
#C63 = core::pragma {name:#C57, options:#C62} #C63 = ffi::_FfiAbiSpecificMapping {nativeTypes:#C62}
#C64 = "vm:prefer-inline" #C64 = core::pragma {name:#C58, options:#C63}
#C65 = null #C65 = "vm:prefer-inline"
#C66 = core::pragma {name:#C64, options:#C65} #C66 = null
#C67 = <core::int*>[#C40, #C40, #C40, #C40, #C40, #C40, #C40, #C40, #C40, #C40, #C40, #C40, #C40, #C40, #C40, #C40, #C40, #C40, #C12, #C12, #C12] #C67 = core::pragma {name:#C65, options:#C66}
#C68 = "vm:ffi:struct-fields" #C68 = <core::int*>[#C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C41, #C12, #C12, #C12]
#C69 = TypeLiteralConstant(self::WChar) #C69 = "vm:ffi:struct-fields"
#C70 = <core::Type>[#C69, #C69] #C70 = TypeLiteralConstant(self::WChar)
#C71 = ffi::_FfiStructLayout {fieldTypes:#C70, packing:#C65} #C71 = <core::Type>[#C70, #C70]
#C72 = core::pragma {name:#C68, options:#C71} #C72 = ffi::_FfiStructLayout {fieldTypes:#C71, packing:#C66}
#C73 = self::WChar {} #C73 = core::pragma {name:#C69, options:#C72}
#C74 = <core::int*>[#C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1] #C74 = self::WChar {}
#C75 = 8 #C75 = <core::int*>[#C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1, #C1]
#C76 = <core::int*>[#C75, #C75, #C75, #C75, #C75, #C75, #C75, #C75, #C75, #C75, #C75, #C75, #C75, #C75, #C75, #C75, #C75, #C75, #C40, #C40, #C40] #C76 = 8
#C77 = 100 #C77 = <core::int*>[#C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C76, #C41, #C41, #C41]
#C78 = ffi::_FfiInlineArray {elementType:#C69, length:#C77} #C78 = 100
#C79 = <core::Type>[#C78] #C79 = ffi::_FfiInlineArray {elementType:#C70, length:#C78}
#C80 = ffi::_FfiStructLayout {fieldTypes:#C79, packing:#C65} #C80 = <core::Type>[#C79]
#C81 = core::pragma {name:#C68, options:#C80} #C81 = ffi::_FfiStructLayout {fieldTypes:#C80, packing:#C66}
#C82 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C77, dimension2:#C65, dimension3:#C65, dimension4:#C65, dimension5:#C65, dimensions:#C65} #C82 = core::pragma {name:#C69, options:#C81}
#C83 = 400 #C83 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C78, dimension2:#C66, dimension3:#C66, dimension4:#C66, dimension5:#C66, dimensions:#C66}
#C84 = 200 #C84 = 400
#C85 = <core::int*>[#C83, #C83, #C83, #C83, #C83, #C83, #C83, #C83, #C83, #C83, #C83, #C83, #C83, #C83, #C83, #C83, #C83, #C83, #C84, #C84, #C84] #C85 = 200
#C86 = <core::int*>[] #C86 = <core::int*>[#C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C84, #C85, #C85, #C85]
#C87 = core::_Override {} #C87 = <core::int*>[]
#C88 = self::_DummyAllocator {} #C88 = core::_Override {}
#C89 = self::_DummyAllocator {}
} }

View file

@ -94,22 +94,22 @@ constants {
#C1 = "vm:ffi:abi-specific-mapping" #C1 = "vm:ffi:abi-specific-mapping"
#C2 = null #C2 = null
#C3 = TypeLiteralConstant(ffi::Uint32) #C3 = TypeLiteralConstant(ffi::Uint32)
#C4 = <core::Type?>[#C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C3, #C3, #C3, #C3, #C2, #C2, #C2, #C2, #C2, #C2, #C2] #C4 = <core::Type?>[#C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C3, #C3, #C3, #C3, #C2, #C2, #C2, #C2, #C2, #C2, #C2]
#C5 = ffi::_FfiAbiSpecificMapping {nativeTypes:#C4} #C5 = ffi::_FfiAbiSpecificMapping {nativeTypes:#C4}
#C6 = core::pragma {name:#C1, options:#C5} #C6 = core::pragma {name:#C1, options:#C5}
#C7 = "vm:prefer-inline" #C7 = "vm:prefer-inline"
#C8 = core::pragma {name:#C7, options:#C2} #C8 = core::pragma {name:#C7, options:#C2}
#C9 = 4 #C9 = 4
#C10 = <core::int*>[#C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C9, #C9, #C9, #C9, #C2, #C2, #C2, #C2, #C2, #C2, #C2] #C10 = <core::int*>[#C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C9, #C9, #C9, #C9, #C2, #C2, #C2, #C2, #C2, #C2, #C2]
#C11 = "vm:ffi:struct-fields" #C11 = "vm:ffi:struct-fields"
#C12 = TypeLiteralConstant(self::Incomplete) #C12 = TypeLiteralConstant(self::Incomplete)
#C13 = <core::Type>[#C12, #C12] #C13 = <core::Type>[#C12, #C12]
#C14 = ffi::_FfiStructLayout {fieldTypes:#C13, packing:#C2} #C14 = ffi::_FfiStructLayout {fieldTypes:#C13, packing:#C2}
#C15 = core::pragma {name:#C11, options:#C14} #C15 = core::pragma {name:#C11, options:#C14}
#C16 = 0 #C16 = 0
#C17 = <core::int*>[#C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16] #C17 = <core::int*>[#C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16]
#C18 = 8 #C18 = 8
#C19 = <core::int*>[#C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C18, #C18, #C18, #C18, #C2, #C2, #C2, #C2, #C2, #C2, #C2] #C19 = <core::int*>[#C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C18, #C18, #C18, #C18, #C2, #C2, #C2, #C2, #C2, #C2, #C2]
#C20 = 100 #C20 = 100
#C21 = ffi::_FfiInlineArray {elementType:#C12, length:#C20} #C21 = ffi::_FfiInlineArray {elementType:#C12, length:#C20}
#C22 = <core::Type>[#C21] #C22 = <core::Type>[#C21]
@ -117,6 +117,6 @@ constants {
#C24 = core::pragma {name:#C11, options:#C23} #C24 = core::pragma {name:#C11, options:#C23}
#C25 = <core::int*>[] #C25 = <core::int*>[]
#C26 = 400 #C26 = 400
#C27 = <core::int*>[#C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C26, #C26, #C26, #C26, #C2, #C2, #C2, #C2, #C2, #C2, #C2] #C27 = <core::int*>[#C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C2, #C26, #C26, #C26, #C26, #C2, #C2, #C2, #C2, #C2, #C2, #C2]
#C28 = self::_DummyAllocator {} #C28 = self::_DummyAllocator {}
} }

View file

@ -143,22 +143,22 @@ constants {
#C22 = "vm:ffi:abi-specific-mapping" #C22 = "vm:ffi:abi-specific-mapping"
#C23 = null #C23 = null
#C24 = TypeLiteralConstant(ffi::Uint32) #C24 = TypeLiteralConstant(ffi::Uint32)
#C25 = <core::Type?>[#C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C24, #C24, #C24, #C24, #C23, #C23, #C23, #C23, #C23, #C23, #C23] #C25 = <core::Type?>[#C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C24, #C24, #C24, #C24, #C23, #C23, #C23, #C23, #C23, #C23, #C23]
#C26 = ffi::_FfiAbiSpecificMapping {nativeTypes:#C25} #C26 = ffi::_FfiAbiSpecificMapping {nativeTypes:#C25}
#C27 = core::pragma {name:#C22, options:#C26} #C27 = core::pragma {name:#C22, options:#C26}
#C28 = "vm:prefer-inline" #C28 = "vm:prefer-inline"
#C29 = core::pragma {name:#C28, options:#C23} #C29 = core::pragma {name:#C28, options:#C23}
#C30 = 4 #C30 = 4
#C31 = <core::int*>[#C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C30, #C30, #C30, #C30, #C23, #C23, #C23, #C23, #C23, #C23, #C23] #C31 = <core::int*>[#C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C30, #C30, #C30, #C30, #C23, #C23, #C23, #C23, #C23, #C23, #C23]
#C32 = "vm:ffi:struct-fields" #C32 = "vm:ffi:struct-fields"
#C33 = TypeLiteralConstant(self::Incomplete) #C33 = TypeLiteralConstant(self::Incomplete)
#C34 = <core::Type>[#C33, #C33] #C34 = <core::Type>[#C33, #C33]
#C35 = ffi::_FfiStructLayout {fieldTypes:#C34, packing:#C23} #C35 = ffi::_FfiStructLayout {fieldTypes:#C34, packing:#C23}
#C36 = core::pragma {name:#C32, options:#C35} #C36 = core::pragma {name:#C32, options:#C35}
#C37 = self::Incomplete {} #C37 = self::Incomplete {}
#C38 = <core::int*>[#C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4] #C38 = <core::int*>[#C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4, #C4]
#C39 = 8 #C39 = 8
#C40 = <core::int*>[#C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C39, #C39, #C39, #C39, #C23, #C23, #C23, #C23, #C23, #C23, #C23] #C40 = <core::int*>[#C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C39, #C39, #C39, #C39, #C23, #C23, #C23, #C23, #C23, #C23, #C23]
#C41 = 100 #C41 = 100
#C42 = ffi::_FfiInlineArray {elementType:#C33, length:#C41} #C42 = ffi::_FfiInlineArray {elementType:#C33, length:#C41}
#C43 = <core::Type>[#C42] #C43 = <core::Type>[#C42]
@ -166,7 +166,7 @@ constants {
#C45 = core::pragma {name:#C32, options:#C44} #C45 = core::pragma {name:#C32, options:#C44}
#C46 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C41, dimension2:#C23, dimension3:#C23, dimension4:#C23, dimension5:#C23, dimensions:#C23} #C46 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C41, dimension2:#C23, dimension3:#C23, dimension4:#C23, dimension5:#C23, dimensions:#C23}
#C47 = 400 #C47 = 400
#C48 = <core::int*>[#C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C47, #C47, #C47, #C47, #C23, #C23, #C23, #C23, #C23, #C23, #C23] #C48 = <core::int*>[#C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C23, #C47, #C47, #C47, #C47, #C23, #C23, #C23, #C23, #C23, #C23, #C23]
#C49 = <core::int*>[] #C49 = <core::int*>[]
#C50 = core::_Override {} #C50 = core::_Override {}
#C51 = self::_DummyAllocator {} #C51 = self::_DummyAllocator {}

View file

@ -72,13 +72,13 @@ constants {
#C6 = core::pragma {name:#C1, options:#C5} #C6 = core::pragma {name:#C1, options:#C5}
#C7 = ffi::Int64 {} #C7 = ffi::Int64 {}
#C8 = 0 #C8 = 0
#C9 = <core::int*>[#C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8] #C9 = <core::int*>[#C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8, #C8]
#C10 = 8 #C10 = 8
#C11 = <core::int*>[#C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10] #C11 = <core::int*>[#C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10, #C10]
#C12 = "vm:prefer-inline" #C12 = "vm:prefer-inline"
#C13 = core::pragma {name:#C12, options:#C4} #C13 = core::pragma {name:#C12, options:#C4}
#C14 = 16 #C14 = 16
#C15 = <core::int*>[#C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14] #C15 = <core::int*>[#C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14]
#C16 = TypeLiteralConstant(self::Coordinate) #C16 = TypeLiteralConstant(self::Coordinate)
#C17 = <core::Type>[#C16, #C2] #C17 = <core::Type>[#C16, #C2]
#C18 = ffi::_FfiStructLayout {fieldTypes:#C17, packing:#C4} #C18 = ffi::_FfiStructLayout {fieldTypes:#C17, packing:#C4}

View file

@ -128,10 +128,10 @@ constants {
#C9 = ffi::_FfiStructLayout {fieldTypes:#C8, packing:#C4} #C9 = ffi::_FfiStructLayout {fieldTypes:#C8, packing:#C4}
#C10 = core::pragma {name:#C1, options:#C9} #C10 = core::pragma {name:#C1, options:#C9}
#C11 = 0 #C11 = 0
#C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11] #C12 = <core::int*>[#C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11, #C11]
#C13 = 4 #C13 = 4
#C14 = 8 #C14 = 8
#C15 = <core::int*>[#C13, #C14, #C13, #C14, #C14, #C14, #C14, #C13, #C14, #C14, #C13, #C14, #C13, #C14, #C13, #C14, #C14, #C14, #C14, #C13, #C14] #C15 = <core::int*>[#C13, #C14, #C13, #C14, #C14, #C14, #C14, #C14, #C13, #C14, #C14, #C13, #C14, #C13, #C14, #C13, #C14, #C14, #C14, #C14, #C13, #C14]
#C16 = static-tearoff self::useStruct3 #C16 = static-tearoff self::useStruct3
#C17 = static-tearoff self::returnStruct7 #C17 = static-tearoff self::returnStruct7
#C18 = 1 #C18 = 1

View file

@ -108,7 +108,7 @@ def Main():
is64bit = 0 is64bit = 0
if options.target_arch: if options.target_arch:
if options.target_arch in ["arm64", "x64"]: if options.target_arch in ["arm64", "x64", "riscv64"]:
is64bit = 1 is64bit = 1
if options.target_os in ["win"]: if options.target_os in ["win"]:

View file

@ -24,6 +24,7 @@ enum class Abi {
kAndroidArm64, kAndroidArm64,
kAndroidIA32, kAndroidIA32,
kAndroidX64, kAndroidX64,
kAndroidRiscv64,
kFuchsiaArm64, kFuchsiaArm64,
kFuchsiaX64, kFuchsiaX64,
kFuchsiaRiscv64, kFuchsiaRiscv64,
@ -50,9 +51,9 @@ const int64_t num_abis = static_cast<int64_t>(Abi::kWindowsX64) + 1;
// - runtime/vm/compiler/frontend/kernel_to_il.cc // - runtime/vm/compiler/frontend/kernel_to_il.cc
static_assert(static_cast<int64_t>(Abi::kAndroidArm) == 0, static_assert(static_cast<int64_t>(Abi::kAndroidArm) == 0,
"Enum value unexpected."); "Enum value unexpected.");
static_assert(static_cast<int64_t>(Abi::kWindowsX64) == 20, static_assert(static_cast<int64_t>(Abi::kWindowsX64) == 21,
"Enum value unexpected."); "Enum value unexpected.");
static_assert(num_abis == 21, "Enum value unexpected."); static_assert(num_abis == 22, "Enum value unexpected.");
// The target ABI. Defines sizes and alignment of native types. // The target ABI. Defines sizes and alignment of native types.
Abi TargetAbi(); Abi TargetAbi();

View file

@ -16,44 +16,63 @@ CpuInfoMethod CpuInfo::method_ = kCpuInfoDefault;
const char* CpuInfo::fields_[kCpuInfoMax] = {}; const char* CpuInfo::fields_[kCpuInfoMax] = {};
void CpuInfo::Init() { void CpuInfo::Init() {
// Initialize our read from /proc/cpuinfo.
method_ = kCpuInfoSystem;
ProcCpuInfo::Init();
#if defined(HOST_ARCH_IA32) || defined(HOST_ARCH_X64) #if defined(HOST_ARCH_IA32) || defined(HOST_ARCH_X64)
fields_[kCpuInfoProcessor] = "vendor_id"; fields_[kCpuInfoProcessor] = "vendor_id";
fields_[kCpuInfoModel] = "model name"; fields_[kCpuInfoModel] = "model name";
fields_[kCpuInfoHardware] = "model name"; fields_[kCpuInfoHardware] = "model name";
fields_[kCpuInfoFeatures] = "flags"; fields_[kCpuInfoFeatures] = "flags";
fields_[kCpuInfoArchitecture] = "CPU architecture"; fields_[kCpuInfoArchitecture] = "CPU architecture";
method_ = kCpuInfoSystem;
ProcCpuInfo::Init();
#elif defined(HOST_ARCH_ARM) || defined(HOST_ARCH_ARM64) #elif defined(HOST_ARCH_ARM) || defined(HOST_ARCH_ARM64)
fields_[kCpuInfoProcessor] = "Processor"; fields_[kCpuInfoProcessor] = "Processor";
fields_[kCpuInfoModel] = "model name"; fields_[kCpuInfoModel] = "model name";
fields_[kCpuInfoHardware] = "Hardware"; fields_[kCpuInfoHardware] = "Hardware";
fields_[kCpuInfoFeatures] = "Features"; fields_[kCpuInfoFeatures] = "Features";
fields_[kCpuInfoArchitecture] = "CPU architecture"; fields_[kCpuInfoArchitecture] = "CPU architecture";
method_ = kCpuInfoSystem;
ProcCpuInfo::Init();
#elif defined(HOST_ARCH_RISCV64)
// We only rely on the base Linux configuration of IMAFDC, so don't need
// dynamic feature detection.
method_ = kCpuInfoNone;
#else #else
#error Unrecognized target architecture #error Unrecognized target architecture
#endif #endif
} }
void CpuInfo::Cleanup() { void CpuInfo::Cleanup() {
ProcCpuInfo::Cleanup(); if (method_ == kCpuInfoSystem) {
ProcCpuInfo::Cleanup();
} else {
ASSERT(method_ == kCpuInfoNone);
}
} }
bool CpuInfo::FieldContains(CpuInfoIndices idx, const char* search_string) { bool CpuInfo::FieldContains(CpuInfoIndices idx, const char* search_string) {
ASSERT(method_ != kCpuInfoDefault); if (method_ == kCpuInfoSystem) {
return ProcCpuInfo::FieldContains(FieldName(idx), search_string); return ProcCpuInfo::FieldContains(FieldName(idx), search_string);
} else {
UNREACHABLE();
}
} }
const char* CpuInfo::ExtractField(CpuInfoIndices idx) { const char* CpuInfo::ExtractField(CpuInfoIndices idx) {
ASSERT(method_ != kCpuInfoDefault); if (method_ == kCpuInfoSystem) {
return ProcCpuInfo::ExtractField(FieldName(idx)); return ProcCpuInfo::ExtractField(FieldName(idx));
} else {
UNREACHABLE();
}
} }
bool CpuInfo::HasField(const char* field) { bool CpuInfo::HasField(const char* field) {
ASSERT(method_ != kCpuInfoDefault); if (method_ == kCpuInfoSystem) {
return ProcCpuInfo::HasField(field); return ProcCpuInfo::HasField(field);
} else if (method_ == kCpuInfoNone) {
return false;
} else {
UNREACHABLE();
}
} }
} // namespace dart } // namespace dart

View file

@ -180,7 +180,7 @@ int64_t OS::GetCurrentMonotonicMicrosForTimeline() {
// into a architecture specific file e.g: os_ia32_linux.cc // into a architecture specific file e.g: os_ia32_linux.cc
intptr_t OS::ActivationFrameAlignment() { intptr_t OS::ActivationFrameAlignment() {
#if defined(TARGET_ARCH_IA32) || defined(TARGET_ARCH_X64) || \ #if defined(TARGET_ARCH_IA32) || defined(TARGET_ARCH_X64) || \
defined(TARGET_ARCH_ARM64) defined(TARGET_ARCH_ARM64) || defined(TARGET_ARCH_RISCV64)
const int kMinimumAlignment = 16; const int kMinimumAlignment = 16;
#elif defined(TARGET_ARCH_ARM) #elif defined(TARGET_ARCH_ARM)
const int kMinimumAlignment = 8; const int kMinimumAlignment = 8;

View file

@ -21,6 +21,8 @@ uintptr_t SignalHandler::GetProgramCounter(const mcontext_t& mcontext) {
pc = static_cast<uintptr_t>(mcontext.arm_pc); pc = static_cast<uintptr_t>(mcontext.arm_pc);
#elif defined(HOST_ARCH_ARM64) #elif defined(HOST_ARCH_ARM64)
pc = static_cast<uintptr_t>(mcontext.pc); pc = static_cast<uintptr_t>(mcontext.pc);
#elif defined(HOST_ARCH_RISCV64)
pc = static_cast<uintptr_t>(mcontext.__gregs[REG_PC]);
#else #else
#error Unsupported architecture. #error Unsupported architecture.
#endif // HOST_ARCH_... #endif // HOST_ARCH_...
@ -45,6 +47,8 @@ uintptr_t SignalHandler::GetFramePointer(const mcontext_t& mcontext) {
} }
#elif defined(HOST_ARCH_ARM64) #elif defined(HOST_ARCH_ARM64)
fp = static_cast<uintptr_t>(mcontext.regs[29]); fp = static_cast<uintptr_t>(mcontext.regs[29]);
#elif defined(HOST_ARCH_RISCV64)
fp = static_cast<uintptr_t>(mcontext.__gregs[REG_S0]);
#else #else
#error Unsupported architecture. #error Unsupported architecture.
#endif // HOST_ARCH_... #endif // HOST_ARCH_...
@ -63,6 +67,8 @@ uintptr_t SignalHandler::GetCStackPointer(const mcontext_t& mcontext) {
sp = static_cast<uintptr_t>(mcontext.arm_sp); sp = static_cast<uintptr_t>(mcontext.arm_sp);
#elif defined(HOST_ARCH_ARM64) #elif defined(HOST_ARCH_ARM64)
sp = static_cast<uintptr_t>(mcontext.sp); sp = static_cast<uintptr_t>(mcontext.sp);
#elif defined(HOST_ARCH_RISCV64)
sp = static_cast<uintptr_t>(mcontext.__gregs[REG_SP]);
#else #else
#error Unsupported architecture. #error Unsupported architecture.
#endif // HOST_ARCH_... #endif // HOST_ARCH_...
@ -88,6 +94,8 @@ uintptr_t SignalHandler::GetLinkRegister(const mcontext_t& mcontext) {
lr = static_cast<uintptr_t>(mcontext.arm_lr); lr = static_cast<uintptr_t>(mcontext.arm_lr);
#elif defined(HOST_ARCH_ARM64) #elif defined(HOST_ARCH_ARM64)
lr = static_cast<uintptr_t>(mcontext.regs[30]); lr = static_cast<uintptr_t>(mcontext.regs[30]);
#elif defined(HOST_ARCH_RISCV64)
lr = static_cast<uintptr_t>(mcontext.__gregs[REG_RA]);
#else #else
#error Unsupported architecture. #error Unsupported architecture.
#endif // HOST_ARCH_... #endif // HOST_ARCH_...

View file

@ -27,6 +27,7 @@ int get _intPtrSize => (const [
8, // androidArm64, 8, // androidArm64,
4, // androidIA32, 4, // androidIA32,
8, // androidX64, 8, // androidX64,
8, // androidRiscv64,
8, // fuchsiaArm64, 8, // fuchsiaArm64,
8, // fuchsiaX64, 8, // fuchsiaX64,
8, // fuchsiaRiscv64, 8, // fuchsiaRiscv64,

View file

@ -25,9 +25,12 @@ class Abi {
/// The application binary interface for Android on the IA32 architecture. /// The application binary interface for Android on the IA32 architecture.
static const androidIA32 = _androidIA32; static const androidIA32 = _androidIA32;
/// The application binary interface for android on the X64 architecture. /// The application binary interface for Android on the X64 architecture.
static const androidX64 = _androidX64; static const androidX64 = _androidX64;
/// The application binary interface for Android on 64-bit RISC-V.
static const androidRiscv64 = _androidRiscv64;
/// The application binary interface for Fuchsia on the Arm64 architecture. /// The application binary interface for Fuchsia on the Arm64 architecture.
static const fuchsiaArm64 = _fuchsiaArm64; static const fuchsiaArm64 = _fuchsiaArm64;
@ -90,6 +93,7 @@ class Abi {
androidArm64, androidArm64,
androidIA32, androidIA32,
androidX64, androidX64,
androidRiscv64,
fuchsiaArm64, fuchsiaArm64,
fuchsiaX64, fuchsiaX64,
fuchsiaRiscv64, fuchsiaRiscv64,
@ -133,6 +137,7 @@ class Abi {
static const _androidArm64 = Abi._(_Architecture.arm64, _OS.android); static const _androidArm64 = Abi._(_Architecture.arm64, _OS.android);
static const _androidIA32 = Abi._(_Architecture.ia32, _OS.android); static const _androidIA32 = Abi._(_Architecture.ia32, _OS.android);
static const _androidX64 = Abi._(_Architecture.x64, _OS.android); static const _androidX64 = Abi._(_Architecture.x64, _OS.android);
static const _androidRiscv64 = Abi._(_Architecture.riscv64, _OS.android);
static const _fuchsiaArm64 = Abi._(_Architecture.arm64, _OS.fuchsia); static const _fuchsiaArm64 = Abi._(_Architecture.arm64, _OS.fuchsia);
static const _fuchsiaX64 = Abi._(_Architecture.x64, _OS.fuchsia); static const _fuchsiaX64 = Abi._(_Architecture.x64, _OS.fuchsia);
static const _fuchsiaRiscv64 = Abi._(_Architecture.riscv64, _OS.fuchsia); static const _fuchsiaRiscv64 = Abi._(_Architecture.riscv64, _OS.fuchsia);

View file

@ -24,6 +24,7 @@ part of dart.ffi;
/// Abi.androidArm64: Uint64(), /// Abi.androidArm64: Uint64(),
/// Abi.androidIA32: Uint32(), /// Abi.androidIA32: Uint32(),
/// Abi.androidX64: Uint64(), /// Abi.androidX64: Uint64(),
/// Abi.androidRiscv64: Uint64(),
/// Abi.fuchsiaArm64: Uint64(), /// Abi.fuchsiaArm64: Uint64(),
/// Abi.fuchsiaX64: Uint64(), /// Abi.fuchsiaX64: Uint64(),
/// Abi.fuchsiaRiscv64: Uint64(), /// Abi.fuchsiaRiscv64: Uint64(),

View file

@ -27,6 +27,7 @@ part of dart.ffi;
Abi.androidArm64: Uint8(), Abi.androidArm64: Uint8(),
Abi.androidIA32: Int8(), Abi.androidIA32: Int8(),
Abi.androidX64: Int8(), Abi.androidX64: Int8(),
Abi.androidRiscv64: Uint8(),
Abi.fuchsiaArm64: Uint8(), Abi.fuchsiaArm64: Uint8(),
Abi.fuchsiaX64: Int8(), Abi.fuchsiaX64: Int8(),
Abi.fuchsiaRiscv64: Uint8(), Abi.fuchsiaRiscv64: Uint8(),
@ -65,6 +66,7 @@ final class Char extends AbiSpecificInteger {
Abi.androidArm64: Int8(), Abi.androidArm64: Int8(),
Abi.androidIA32: Int8(), Abi.androidIA32: Int8(),
Abi.androidX64: Int8(), Abi.androidX64: Int8(),
Abi.androidRiscv64: Int8(),
Abi.fuchsiaArm64: Int8(), Abi.fuchsiaArm64: Int8(),
Abi.fuchsiaX64: Int8(), Abi.fuchsiaX64: Int8(),
Abi.fuchsiaRiscv64: Int8(), Abi.fuchsiaRiscv64: Int8(),
@ -103,6 +105,7 @@ final class SignedChar extends AbiSpecificInteger {
Abi.androidArm64: Uint8(), Abi.androidArm64: Uint8(),
Abi.androidIA32: Uint8(), Abi.androidIA32: Uint8(),
Abi.androidX64: Uint8(), Abi.androidX64: Uint8(),
Abi.androidRiscv64: Uint8(),
Abi.fuchsiaArm64: Uint8(), Abi.fuchsiaArm64: Uint8(),
Abi.fuchsiaX64: Uint8(), Abi.fuchsiaX64: Uint8(),
Abi.fuchsiaRiscv64: Uint8(), Abi.fuchsiaRiscv64: Uint8(),
@ -141,6 +144,7 @@ final class UnsignedChar extends AbiSpecificInteger {
Abi.androidArm64: Int16(), Abi.androidArm64: Int16(),
Abi.androidIA32: Int16(), Abi.androidIA32: Int16(),
Abi.androidX64: Int16(), Abi.androidX64: Int16(),
Abi.androidRiscv64: Int16(),
Abi.fuchsiaArm64: Int16(), Abi.fuchsiaArm64: Int16(),
Abi.fuchsiaX64: Int16(), Abi.fuchsiaX64: Int16(),
Abi.fuchsiaRiscv64: Int16(), Abi.fuchsiaRiscv64: Int16(),
@ -179,6 +183,7 @@ final class Short extends AbiSpecificInteger {
Abi.androidArm64: Uint16(), Abi.androidArm64: Uint16(),
Abi.androidIA32: Uint16(), Abi.androidIA32: Uint16(),
Abi.androidX64: Uint16(), Abi.androidX64: Uint16(),
Abi.androidRiscv64: Uint16(),
Abi.fuchsiaArm64: Uint16(), Abi.fuchsiaArm64: Uint16(),
Abi.fuchsiaX64: Uint16(), Abi.fuchsiaX64: Uint16(),
Abi.fuchsiaRiscv64: Uint16(), Abi.fuchsiaRiscv64: Uint16(),
@ -217,6 +222,7 @@ final class UnsignedShort extends AbiSpecificInteger {
Abi.androidArm64: Int32(), Abi.androidArm64: Int32(),
Abi.androidIA32: Int32(), Abi.androidIA32: Int32(),
Abi.androidX64: Int32(), Abi.androidX64: Int32(),
Abi.androidRiscv64: Int32(),
Abi.fuchsiaArm64: Int32(), Abi.fuchsiaArm64: Int32(),
Abi.fuchsiaX64: Int32(), Abi.fuchsiaX64: Int32(),
Abi.fuchsiaRiscv64: Int32(), Abi.fuchsiaRiscv64: Int32(),
@ -255,6 +261,7 @@ final class Int extends AbiSpecificInteger {
Abi.androidArm64: Uint32(), Abi.androidArm64: Uint32(),
Abi.androidIA32: Uint32(), Abi.androidIA32: Uint32(),
Abi.androidX64: Uint32(), Abi.androidX64: Uint32(),
Abi.androidRiscv64: Uint32(),
Abi.fuchsiaArm64: Uint32(), Abi.fuchsiaArm64: Uint32(),
Abi.fuchsiaX64: Uint32(), Abi.fuchsiaX64: Uint32(),
Abi.fuchsiaRiscv64: Uint32(), Abi.fuchsiaRiscv64: Uint32(),
@ -294,6 +301,7 @@ final class UnsignedInt extends AbiSpecificInteger {
Abi.androidArm64: Int64(), Abi.androidArm64: Int64(),
Abi.androidIA32: Int32(), Abi.androidIA32: Int32(),
Abi.androidX64: Int64(), Abi.androidX64: Int64(),
Abi.androidRiscv64: Int64(),
Abi.fuchsiaArm64: Int64(), Abi.fuchsiaArm64: Int64(),
Abi.fuchsiaX64: Int64(), Abi.fuchsiaX64: Int64(),
Abi.fuchsiaRiscv64: Int64(), Abi.fuchsiaRiscv64: Int64(),
@ -333,6 +341,7 @@ final class Long extends AbiSpecificInteger {
Abi.androidArm64: Uint64(), Abi.androidArm64: Uint64(),
Abi.androidIA32: Uint32(), Abi.androidIA32: Uint32(),
Abi.androidX64: Uint64(), Abi.androidX64: Uint64(),
Abi.androidRiscv64: Uint64(),
Abi.fuchsiaArm64: Uint64(), Abi.fuchsiaArm64: Uint64(),
Abi.fuchsiaX64: Uint64(), Abi.fuchsiaX64: Uint64(),
Abi.fuchsiaRiscv64: Uint64(), Abi.fuchsiaRiscv64: Uint64(),
@ -371,6 +380,7 @@ final class UnsignedLong extends AbiSpecificInteger {
Abi.androidArm64: Int64(), Abi.androidArm64: Int64(),
Abi.androidIA32: Int64(), Abi.androidIA32: Int64(),
Abi.androidX64: Int64(), Abi.androidX64: Int64(),
Abi.androidRiscv64: Int64(),
Abi.fuchsiaArm64: Int64(), Abi.fuchsiaArm64: Int64(),
Abi.fuchsiaX64: Int64(), Abi.fuchsiaX64: Int64(),
Abi.fuchsiaRiscv64: Int64(), Abi.fuchsiaRiscv64: Int64(),
@ -409,6 +419,7 @@ final class LongLong extends AbiSpecificInteger {
Abi.androidArm64: Uint64(), Abi.androidArm64: Uint64(),
Abi.androidIA32: Uint64(), Abi.androidIA32: Uint64(),
Abi.androidX64: Uint64(), Abi.androidX64: Uint64(),
Abi.androidRiscv64: Uint64(),
Abi.fuchsiaArm64: Uint64(), Abi.fuchsiaArm64: Uint64(),
Abi.fuchsiaX64: Uint64(), Abi.fuchsiaX64: Uint64(),
Abi.fuchsiaRiscv64: Uint64(), Abi.fuchsiaRiscv64: Uint64(),
@ -442,6 +453,7 @@ final class UnsignedLongLong extends AbiSpecificInteger {
Abi.androidArm64: Int64(), Abi.androidArm64: Int64(),
Abi.androidIA32: Int32(), Abi.androidIA32: Int32(),
Abi.androidX64: Int64(), Abi.androidX64: Int64(),
Abi.androidRiscv64: Int64(),
Abi.fuchsiaArm64: Int64(), Abi.fuchsiaArm64: Int64(),
Abi.fuchsiaX64: Int64(), Abi.fuchsiaX64: Int64(),
Abi.fuchsiaRiscv64: Int64(), Abi.fuchsiaRiscv64: Int64(),
@ -476,6 +488,7 @@ final class IntPtr extends AbiSpecificInteger {
Abi.androidArm64: Uint64(), Abi.androidArm64: Uint64(),
Abi.androidIA32: Uint32(), Abi.androidIA32: Uint32(),
Abi.androidX64: Uint64(), Abi.androidX64: Uint64(),
Abi.androidRiscv64: Uint64(),
Abi.fuchsiaArm64: Uint64(), Abi.fuchsiaArm64: Uint64(),
Abi.fuchsiaX64: Uint64(), Abi.fuchsiaX64: Uint64(),
Abi.fuchsiaRiscv64: Uint64(), Abi.fuchsiaRiscv64: Uint64(),
@ -510,6 +523,7 @@ final class UintPtr extends AbiSpecificInteger {
Abi.androidArm64: Uint64(), Abi.androidArm64: Uint64(),
Abi.androidIA32: Uint32(), Abi.androidIA32: Uint32(),
Abi.androidX64: Uint64(), Abi.androidX64: Uint64(),
Abi.androidRiscv64: Uint64(),
Abi.fuchsiaArm64: Uint64(), Abi.fuchsiaArm64: Uint64(),
Abi.fuchsiaX64: Uint64(), Abi.fuchsiaX64: Uint64(),
Abi.fuchsiaRiscv64: Uint64(), Abi.fuchsiaRiscv64: Uint64(),
@ -547,6 +561,7 @@ final class Size extends AbiSpecificInteger {
Abi.androidArm64: Uint32(), Abi.androidArm64: Uint32(),
Abi.androidIA32: Uint32(), Abi.androidIA32: Uint32(),
Abi.androidX64: Uint32(), Abi.androidX64: Uint32(),
Abi.androidRiscv64: Int32(),
Abi.fuchsiaArm64: Uint32(), Abi.fuchsiaArm64: Uint32(),
Abi.fuchsiaX64: Int32(), Abi.fuchsiaX64: Int32(),
Abi.fuchsiaRiscv64: Int32(), Abi.fuchsiaRiscv64: Int32(),