You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[dart2wasm] Don't use IDs as keys for export name mapping.
We have means of serializing References and Constants directly, so it is
unnecessary to generate IDs as indices. This does cause the export name
mapping to get split up a little (just as callable reference IDs were
stored separately from constant export IDs).
This is because the kernel metadata repositories are serialized by the
kernel's BinarySink, which correctly handles Constants, but cannot
serialize References from the TFA'd component to the metadata of the
un-TFA'd component. Meanwhile, the dart2wasm DataSerializer can
serialize these References, but does not handle Constants.
Therefore, the callable reference mapping is stored on the main module
metadata (just as callable reference IDs were), while the constant
mapping is stored in a metadata repository (just as constant IDs were).
The exporter must then be aware of both of these to be used as a
centralized interface.
Change-Id: I1c0fc3eed5a96b3c3e755826749ebd29c3fa2b4b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/446990
Reviewed-by: Nate Biggs <[email protected]>
0 commit comments