Skip to content

Commit 706f6b2

Browse files
dcharkesCommit Queue
authored and
Commit Queue
committed
[vm/ffi] Cleanup old RTEs
The cleanup isn't symmetrical in all files: - 1x `Ffi_loadStruct` wasn't referenced from the Dart patch file. - 4x `Unaligned` loads and stores were never runtime entries. This sums up to a 4 - 1 = 3 diff between the diffs of the .h files. TEST=ffi test suite Change-Id: I0a4ab023b7eb116f87cf9bc10a970e6a531c5319 Cq-Include-Trybots: luci.dart.try:vm-aot-linux-debug-x64c-try,vm-aot-linux-debug-x64-try,vm-ffi-android-debug-arm-try,vm-ffi-android-debug-arm64c-try,vm-ffi-qemu-linux-release-arm-try,vm-ffi-qemu-linux-release-riscv64-try,vm-reload-rollback-linux-debug-x64-try,vm-reload-linux-debug-x64-try Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/305942 Reviewed-by: Martin Kustermann <[email protected]> Commit-Queue: Daco Harkes <[email protected]> Auto-Submit: Daco Harkes <[email protected]>
1 parent 193c4cc commit 706f6b2

File tree

4 files changed

+38
-148
lines changed

4 files changed

+38
-148
lines changed

runtime/lib/ffi.cc

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -33,48 +33,11 @@
3333

3434
namespace dart {
3535

36-
// The remainder of this file implements the dart:ffi native methods.
37-
38-
DEFINE_NATIVE_ENTRY(Ffi_fromAddress, 1, 1) {
39-
UNREACHABLE();
40-
}
41-
42-
DEFINE_NATIVE_ENTRY(Ffi_address, 0, 1) {
43-
UNREACHABLE();
44-
}
45-
46-
#define DEFINE_NATIVE_ENTRY_LOAD(type) \
47-
DEFINE_NATIVE_ENTRY(Ffi_load##type, 0, 2) { UNREACHABLE(); }
48-
CLASS_LIST_FFI_NUMERIC_FIXED_SIZE(DEFINE_NATIVE_ENTRY_LOAD)
49-
#undef DEFINE_NATIVE_ENTRY_LOAD
50-
51-
DEFINE_NATIVE_ENTRY(Ffi_loadPointer, 1, 2) {
52-
UNREACHABLE();
53-
}
54-
55-
DEFINE_NATIVE_ENTRY(Ffi_loadStruct, 0, 2) {
56-
UNREACHABLE();
57-
}
58-
59-
#define DEFINE_NATIVE_ENTRY_STORE(type) \
60-
DEFINE_NATIVE_ENTRY(Ffi_store##type, 0, 3) { UNREACHABLE(); }
61-
CLASS_LIST_FFI_NUMERIC_FIXED_SIZE(DEFINE_NATIVE_ENTRY_STORE)
62-
#undef DEFINE_NATIVE_ENTRY_STORE
63-
64-
DEFINE_NATIVE_ENTRY(Ffi_storePointer, 0, 3) {
65-
UNREACHABLE();
66-
}
67-
6836
// Static invocations to this method are translated directly in streaming FGB.
6937
DEFINE_NATIVE_ENTRY(Ffi_asFunctionInternal, 2, 2) {
7038
UNREACHABLE();
7139
}
7240

73-
#define DEFINE_NATIVE_ENTRY_AS_EXTERNAL_TYPED_DATA(type) \
74-
DEFINE_NATIVE_ENTRY(Ffi_asExternalTypedData##type, 0, 2) { UNREACHABLE(); }
75-
CLASS_LIST_FFI_NUMERIC_FIXED_SIZE(DEFINE_NATIVE_ENTRY_AS_EXTERNAL_TYPED_DATA)
76-
#undef DEFINE_NATIVE_ENTRY_AS_EXTERNAL_TYPED_DATA
77-
7841
DEFINE_NATIVE_ENTRY(Ffi_pointerFromFunction, 1, 1) {
7942
const auto& function = Function::CheckedHandle(zone, arguments->NativeArg0());
8043
void* pointer = isolate->CreateSyncFfiCallback(zone, function);

runtime/vm/bootstrap_natives.h

Lines changed: 0 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -362,47 +362,12 @@ namespace dart {
362362
V(VMService_DecodeAssets, 1) \
363363
V(VMService_AddUserTagsToStreamableSampleList, 1) \
364364
V(VMService_RemoveUserTagsFromStreamableSampleList, 1) \
365-
V(Ffi_loadInt8, 2) \
366-
V(Ffi_loadInt16, 2) \
367-
V(Ffi_loadInt32, 2) \
368-
V(Ffi_loadInt64, 2) \
369-
V(Ffi_loadUint8, 2) \
370-
V(Ffi_loadUint16, 2) \
371-
V(Ffi_loadUint32, 2) \
372-
V(Ffi_loadUint64, 2) \
373-
V(Ffi_loadFloat, 2) \
374-
V(Ffi_loadDouble, 2) \
375-
V(Ffi_loadPointer, 2) \
376-
V(Ffi_loadStruct, 2) \
377-
V(Ffi_storeInt8, 3) \
378-
V(Ffi_storeInt16, 3) \
379-
V(Ffi_storeInt32, 3) \
380-
V(Ffi_storeInt64, 3) \
381-
V(Ffi_storeUint8, 3) \
382-
V(Ffi_storeUint16, 3) \
383-
V(Ffi_storeUint32, 3) \
384-
V(Ffi_storeUint64, 3) \
385-
V(Ffi_storeFloat, 3) \
386-
V(Ffi_storeDouble, 3) \
387-
V(Ffi_storePointer, 3) \
388-
V(Ffi_address, 1) \
389-
V(Ffi_fromAddress, 1) \
390365
V(Ffi_asFunctionInternal, 2) \
391366
V(Ffi_pointerFromFunction, 1) \
392367
V(Ffi_dl_open, 1) \
393368
V(Ffi_dl_lookup, 2) \
394369
V(Ffi_dl_getHandle, 1) \
395370
V(Ffi_dl_providesSymbol, 2) \
396-
V(Ffi_asExternalTypedDataInt8, 2) \
397-
V(Ffi_asExternalTypedDataInt16, 2) \
398-
V(Ffi_asExternalTypedDataInt32, 2) \
399-
V(Ffi_asExternalTypedDataInt64, 2) \
400-
V(Ffi_asExternalTypedDataUint8, 2) \
401-
V(Ffi_asExternalTypedDataUint16, 2) \
402-
V(Ffi_asExternalTypedDataUint32, 2) \
403-
V(Ffi_asExternalTypedDataUint64, 2) \
404-
V(Ffi_asExternalTypedDataFloat, 2) \
405-
V(Ffi_asExternalTypedDataDouble, 2) \
406371
V(Ffi_dl_processLibrary, 0) \
407372
V(Ffi_dl_executableLibrary, 0) \
408373
V(Ffi_GetFfiNativeResolver, 0) \

runtime/vm/compiler/recognized_methods_list.h

Lines changed: 38 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -276,46 +276,46 @@ namespace dart {
276276
V(::, _nativeEffect, NativeEffect, 0x537dce91) \
277277
V(::, _loadAbiSpecificInt, FfiLoadAbiSpecificInt, 0x7807e872) \
278278
V(::, _loadAbiSpecificIntAtIndex, FfiLoadAbiSpecificIntAtIndex, 0x6aa4cab4) \
279-
V(::, _loadInt8, FfiLoadInt8, 0x0f04e397) \
280-
V(::, _loadInt16, FfiLoadInt16, 0xec4434ee) \
281-
V(::, _loadInt32, FfiLoadInt32, 0xee224384) \
282-
V(::, _loadInt64, FfiLoadInt64, 0xdeefc364) \
283-
V(::, _loadUint8, FfiLoadUint8, 0xe14e2092) \
284-
V(::, _loadUint16, FfiLoadUint16, 0x0cd660ab) \
285-
V(::, _loadUint32, FfiLoadUint32, 0xf66e9416) \
286-
V(::, _loadUint64, FfiLoadUint64, 0x0506018d) \
287-
V(::, _loadFloat, FfiLoadFloat, 0xf8d9845d) \
288-
V(::, _loadFloatUnaligned, FfiLoadFloatUnaligned, 0xc8c8dfff) \
289-
V(::, _loadDouble, FfiLoadDouble, 0xf70cc619) \
290-
V(::, _loadDoubleUnaligned, FfiLoadDoubleUnaligned, 0xc99ebd39) \
291-
V(::, _loadPointer, FfiLoadPointer, 0x9a0810c4) \
279+
V(::, _loadInt8, FfiLoadInt8, 0x0f04dfd6) \
280+
V(::, _loadInt16, FfiLoadInt16, 0xec44312d) \
281+
V(::, _loadInt32, FfiLoadInt32, 0xee223fc3) \
282+
V(::, _loadInt64, FfiLoadInt64, 0xdeefbfa3) \
283+
V(::, _loadUint8, FfiLoadUint8, 0xe14e1cd1) \
284+
V(::, _loadUint16, FfiLoadUint16, 0x0cd65cea) \
285+
V(::, _loadUint32, FfiLoadUint32, 0xf66e9055) \
286+
V(::, _loadUint64, FfiLoadUint64, 0x0505fdcc) \
287+
V(::, _loadFloat, FfiLoadFloat, 0xf8d9809c) \
288+
V(::, _loadFloatUnaligned, FfiLoadFloatUnaligned, 0xc8c8dc3e) \
289+
V(::, _loadDouble, FfiLoadDouble, 0xf70cc258) \
290+
V(::, _loadDoubleUnaligned, FfiLoadDoubleUnaligned, 0xc99eb978) \
291+
V(::, _loadPointer, FfiLoadPointer, 0x9a080d03) \
292292
V(::, _storeAbiSpecificInt, FfiStoreAbiSpecificInt, 0xc70954c0) \
293293
V(::, _storeAbiSpecificIntAtIndex, FfiStoreAbiSpecificIntAtIndex, 0xc64efe4b)\
294-
V(::, _storeInt8, FfiStoreInt8, 0xdf50b2cd) \
295-
V(::, _storeInt16, FfiStoreInt16, 0xd84df6f3) \
296-
V(::, _storeInt32, FfiStoreInt32, 0xfbe6301e) \
297-
V(::, _storeInt64, FfiStoreInt64, 0xf1d4113b) \
298-
V(::, _storeUint8, FfiStoreUint8, 0x056dd6b7) \
299-
V(::, _storeUint16, FfiStoreUint16, 0xe2fdae9f) \
300-
V(::, _storeUint32, FfiStoreUint32, 0xe5d7ec86) \
301-
V(::, _storeUint64, FfiStoreUint64, 0xe2d935fa) \
302-
V(::, _storeFloat, FfiStoreFloat, 0x6484f07e) \
303-
V(::, _storeFloatUnaligned, FfiStoreFloatUnaligned, 0x600a9203) \
304-
V(::, _storeDouble, FfiStoreDouble, 0x42998c64) \
305-
V(::, _storeDoubleUnaligned, FfiStoreDoubleUnaligned, 0x3dced75b) \
306-
V(::, _storePointer, FfiStorePointer, 0x8b68e519) \
307-
V(::, _fromAddress, FfiFromAddress, 0x811e2220) \
308-
V(Pointer, get:address, FfiGetAddress, 0x7cde87be) \
309-
V(::, _asExternalTypedDataInt8, FfiAsExternalTypedDataInt8, 0x768a0698) \
310-
V(::, _asExternalTypedDataInt16, FfiAsExternalTypedDataInt16, 0xd09cf9c6) \
311-
V(::, _asExternalTypedDataInt32, FfiAsExternalTypedDataInt32, 0x38248946) \
312-
V(::, _asExternalTypedDataInt64, FfiAsExternalTypedDataInt64, 0xafaa47fb) \
313-
V(::, _asExternalTypedDataUint8, FfiAsExternalTypedDataUint8, 0x35228834) \
314-
V(::, _asExternalTypedDataUint16, FfiAsExternalTypedDataUint16, 0x89a51e3a) \
315-
V(::, _asExternalTypedDataUint32, FfiAsExternalTypedDataUint32, 0xd272dc41) \
316-
V(::, _asExternalTypedDataUint64, FfiAsExternalTypedDataUint64, 0x06be71c5) \
317-
V(::, _asExternalTypedDataFloat, FfiAsExternalTypedDataFloat, 0x6f465e0c) \
318-
V(::, _asExternalTypedDataDouble, FfiAsExternalTypedDataDouble, 0x40cdd9e1) \
294+
V(::, _storeInt8, FfiStoreInt8, 0xdf50af0c) \
295+
V(::, _storeInt16, FfiStoreInt16, 0xd84df332) \
296+
V(::, _storeInt32, FfiStoreInt32, 0xfbe62c5d) \
297+
V(::, _storeInt64, FfiStoreInt64, 0xf1d40d7a) \
298+
V(::, _storeUint8, FfiStoreUint8, 0x056dd2f6) \
299+
V(::, _storeUint16, FfiStoreUint16, 0xe2fdaade) \
300+
V(::, _storeUint32, FfiStoreUint32, 0xe5d7e8c5) \
301+
V(::, _storeUint64, FfiStoreUint64, 0xe2d93239) \
302+
V(::, _storeFloat, FfiStoreFloat, 0x6484ecbd) \
303+
V(::, _storeFloatUnaligned, FfiStoreFloatUnaligned, 0x600a8e42) \
304+
V(::, _storeDouble, FfiStoreDouble, 0x429988a3) \
305+
V(::, _storeDoubleUnaligned, FfiStoreDoubleUnaligned, 0x3dced39a) \
306+
V(::, _storePointer, FfiStorePointer, 0x8b68e158) \
307+
V(::, _fromAddress, FfiFromAddress, 0x811e1e5f) \
308+
V(Pointer, get:address, FfiGetAddress, 0x7cde83fd) \
309+
V(::, _asExternalTypedDataInt8, FfiAsExternalTypedDataInt8, 0x768a02d7) \
310+
V(::, _asExternalTypedDataInt16, FfiAsExternalTypedDataInt16, 0xd09cf605) \
311+
V(::, _asExternalTypedDataInt32, FfiAsExternalTypedDataInt32, 0x38248585) \
312+
V(::, _asExternalTypedDataInt64, FfiAsExternalTypedDataInt64, 0xafaa443a) \
313+
V(::, _asExternalTypedDataUint8, FfiAsExternalTypedDataUint8, 0x35228473) \
314+
V(::, _asExternalTypedDataUint16, FfiAsExternalTypedDataUint16, 0x89a51a79) \
315+
V(::, _asExternalTypedDataUint32, FfiAsExternalTypedDataUint32, 0xd272d880) \
316+
V(::, _asExternalTypedDataUint64, FfiAsExternalTypedDataUint64, 0x06be6e04) \
317+
V(::, _asExternalTypedDataFloat, FfiAsExternalTypedDataFloat, 0x6f465a4b) \
318+
V(::, _asExternalTypedDataDouble, FfiAsExternalTypedDataDouble, 0x40cdd620) \
319319
V(::, _getNativeField, GetNativeField, 0xa0139b85) \
320320
V(::, reachabilityFence, ReachabilityFence, 0x730f2b7f) \
321321
V(_Utf8Decoder, _scan, Utf8DecoderScan, 0xb99d2ee1) \

sdk/lib/_internal/vm/lib/ffi_patch.dart

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ int sizeOf<T extends NativeType>() {
7777
}
7878

7979
@pragma("vm:recognized", "other")
80-
@pragma("vm:external-name", "Ffi_fromAddress")
8180
external Pointer<T> _fromAddress<T extends NativeType>(int ptr);
8281

8382
// The real implementation of this function (for interface calls) lives in
@@ -89,43 +88,33 @@ external DS _asFunctionInternal<DS extends Function, NS extends Function>(
8988
Pointer<NativeFunction<NS>> ptr, bool isLeaf);
9089

9190
@pragma("vm:recognized", "other")
92-
@pragma("vm:external-name", "Ffi_asExternalTypedDataInt8")
9391
external Int8List _asExternalTypedDataInt8(Pointer<Int8> ptr, int length);
9492

9593
@pragma("vm:recognized", "other")
96-
@pragma("vm:external-name", "Ffi_asExternalTypedDataInt16")
9794
external Int16List _asExternalTypedDataInt16(Pointer<Int16> ptr, int length);
9895

9996
@pragma("vm:recognized", "other")
100-
@pragma("vm:external-name", "Ffi_asExternalTypedDataInt32")
10197
external Int32List _asExternalTypedDataInt32(Pointer<Int32> ptr, int length);
10298

10399
@pragma("vm:recognized", "other")
104-
@pragma("vm:external-name", "Ffi_asExternalTypedDataInt64")
105100
external Int64List _asExternalTypedDataInt64(Pointer<Int64> ptr, int length);
106101

107102
@pragma("vm:recognized", "other")
108-
@pragma("vm:external-name", "Ffi_asExternalTypedDataUint8")
109103
external Uint8List _asExternalTypedDataUint8(Pointer<Uint8> ptr, int length);
110104

111105
@pragma("vm:recognized", "other")
112-
@pragma("vm:external-name", "Ffi_asExternalTypedDataUint16")
113106
external Uint16List _asExternalTypedDataUint16(Pointer<Uint16> ptr, int length);
114107

115108
@pragma("vm:recognized", "other")
116-
@pragma("vm:external-name", "Ffi_asExternalTypedDataUint32")
117109
external Uint32List _asExternalTypedDataUint32(Pointer<Uint32> ptr, int length);
118110

119111
@pragma("vm:recognized", "other")
120-
@pragma("vm:external-name", "Ffi_asExternalTypedDataUint64")
121112
external Uint64List _asExternalTypedDataUint64(Pointer<Uint64> ptr, int length);
122113

123114
@pragma("vm:recognized", "other")
124-
@pragma("vm:external-name", "Ffi_asExternalTypedDataFloat")
125115
external Float32List _asExternalTypedDataFloat(Pointer<Float> ptr, int length);
126116

127117
@pragma("vm:recognized", "other")
128-
@pragma("vm:external-name", "Ffi_asExternalTypedDataDouble")
129118
external Float64List _asExternalTypedDataDouble(
130119
Pointer<Double> ptr, int length);
131120

@@ -175,7 +164,6 @@ final class Pointer<T extends NativeType> {
175164

176165
@patch
177166
@pragma("vm:recognized", "other")
178-
@pragma("vm:external-name", "Ffi_address")
179167
external int get address;
180168

181169
@patch
@@ -266,42 +254,34 @@ external void _memCopy(Object target, int targetOffsetInBytes, Object source,
266254
// getting rid of these allocations by inlining these functions.
267255
@pragma("vm:entry-point")
268256
@pragma("vm:recognized", "other")
269-
@pragma("vm:external-name", "Ffi_loadInt8")
270257
external int _loadInt8(Object typedDataBase, int offsetInBytes);
271258

272259
@pragma("vm:entry-point")
273260
@pragma("vm:recognized", "other")
274-
@pragma("vm:external-name", "Ffi_loadInt16")
275261
external int _loadInt16(Object typedDataBase, int offsetInBytes);
276262

277263
@pragma("vm:entry-point")
278264
@pragma("vm:recognized", "other")
279-
@pragma("vm:external-name", "Ffi_loadInt32")
280265
external int _loadInt32(Object typedDataBase, int offsetInBytes);
281266

282267
@pragma("vm:entry-point")
283268
@pragma("vm:recognized", "other")
284-
@pragma("vm:external-name", "Ffi_loadInt64")
285269
external int _loadInt64(Object typedDataBase, int offsetInBytes);
286270

287271
@pragma("vm:entry-point")
288272
@pragma("vm:recognized", "other")
289-
@pragma("vm:external-name", "Ffi_loadUint8")
290273
external int _loadUint8(Object typedDataBase, int offsetInBytes);
291274

292275
@pragma("vm:entry-point")
293276
@pragma("vm:recognized", "other")
294-
@pragma("vm:external-name", "Ffi_loadUint16")
295277
external int _loadUint16(Object typedDataBase, int offsetInBytes);
296278

297279
@pragma("vm:entry-point")
298280
@pragma("vm:recognized", "other")
299-
@pragma("vm:external-name", "Ffi_loadUint32")
300281
external int _loadUint32(Object typedDataBase, int offsetInBytes);
301282

302283
@pragma("vm:entry-point")
303284
@pragma("vm:recognized", "other")
304-
@pragma("vm:external-name", "Ffi_loadUint64")
305285
external int _loadUint64(Object typedDataBase, int offsetInBytes);
306286

307287
@pragma("vm:recognized", "other")
@@ -313,64 +293,51 @@ external int _loadAbiSpecificIntAtIndex<T extends AbiSpecificInteger>(
313293
Object typedDataBase, int index);
314294

315295
@pragma("vm:recognized", "other")
316-
@pragma("vm:external-name", "Ffi_loadFloat")
317296
external double _loadFloat(Object typedDataBase, int offsetInBytes);
318297

319298
@pragma("vm:recognized", "other")
320-
@pragma("vm:external-name", "Ffi_loadDouble")
321299
external double _loadDouble(Object typedDataBase, int offsetInBytes);
322300

323301
@pragma("vm:recognized", "other")
324-
@pragma("vm:external-name", "Ffi_loadFloatUnaligned")
325302
external double _loadFloatUnaligned(Object typedDataBase, int offsetInBytes);
326303

327304
@pragma("vm:recognized", "other")
328-
@pragma("vm:external-name", "Ffi_loadDoubleUnaligned")
329305
external double _loadDoubleUnaligned(Object typedDataBase, int offsetInBytes);
330306

331307
@pragma("vm:recognized", "other")
332-
@pragma("vm:external-name", "Ffi_loadPointer")
333308
external Pointer<S> _loadPointer<S extends NativeType>(
334309
Object typedDataBase, int offsetInBytes);
335310

336311
@pragma("vm:entry-point")
337312
@pragma("vm:recognized", "other")
338-
@pragma("vm:external-name", "Ffi_storeInt8")
339313
external void _storeInt8(Object typedDataBase, int offsetInBytes, int value);
340314

341315
@pragma("vm:entry-point")
342316
@pragma("vm:recognized", "other")
343-
@pragma("vm:external-name", "Ffi_storeInt16")
344317
external void _storeInt16(Object typedDataBase, int offsetInBytes, int value);
345318

346319
@pragma("vm:entry-point")
347320
@pragma("vm:recognized", "other")
348-
@pragma("vm:external-name", "Ffi_storeInt32")
349321
external void _storeInt32(Object typedDataBase, int offsetInBytes, int value);
350322

351323
@pragma("vm:entry-point")
352324
@pragma("vm:recognized", "other")
353-
@pragma("vm:external-name", "Ffi_storeInt64")
354325
external void _storeInt64(Object typedDataBase, int offsetInBytes, int value);
355326

356327
@pragma("vm:entry-point")
357328
@pragma("vm:recognized", "other")
358-
@pragma("vm:external-name", "Ffi_storeUint8")
359329
external void _storeUint8(Object typedDataBase, int offsetInBytes, int value);
360330

361331
@pragma("vm:entry-point")
362332
@pragma("vm:recognized", "other")
363-
@pragma("vm:external-name", "Ffi_storeUint16")
364333
external void _storeUint16(Object typedDataBase, int offsetInBytes, int value);
365334

366335
@pragma("vm:entry-point")
367336
@pragma("vm:recognized", "other")
368-
@pragma("vm:external-name", "Ffi_storeUint32")
369337
external void _storeUint32(Object typedDataBase, int offsetInBytes, int value);
370338

371339
@pragma("vm:entry-point")
372340
@pragma("vm:recognized", "other")
373-
@pragma("vm:external-name", "Ffi_storeUint64")
374341
external void _storeUint64(Object typedDataBase, int offsetInBytes, int value);
375342

376343
@pragma("vm:recognized", "other")
@@ -382,27 +349,22 @@ external int _storeAbiSpecificIntAtIndex<T extends AbiSpecificInteger>(
382349
Object typedDataBase, int index, int value);
383350

384351
@pragma("vm:recognized", "other")
385-
@pragma("vm:external-name", "Ffi_storeFloat")
386352
external void _storeFloat(
387353
Object typedDataBase, int offsetInBytes, double value);
388354

389355
@pragma("vm:recognized", "other")
390-
@pragma("vm:external-name", "Ffi_storeDouble")
391356
external void _storeDouble(
392357
Object typedDataBase, int offsetInBytes, double value);
393358

394359
@pragma("vm:recognized", "other")
395-
@pragma("vm:external-name", "Ffi_storeFloatUnaligned")
396360
external void _storeFloatUnaligned(
397361
Object typedDataBase, int offsetInBytes, double value);
398362

399363
@pragma("vm:recognized", "other")
400-
@pragma("vm:external-name", "Ffi_storeDoubleUnaligned")
401364
external void _storeDoubleUnaligned(
402365
Object typedDataBase, int offsetInBytes, double value);
403366

404367
@pragma("vm:recognized", "other")
405-
@pragma("vm:external-name", "Ffi_storePointer")
406368
external void _storePointer<S extends NativeType>(
407369
Object typedDataBase, int offsetInBytes, Pointer<S> value);
408370

0 commit comments

Comments
 (0)