Ben Konyi
c262cbd414
Revert "[vm/ffi] Enable creating an ExternalTypedData from a Pointer."
...
This reverts commit ddd83d256f .
Reason for revert: Causing build failures in the Flutter engine, blocking the SDK roll. Build error:
org-dartlang-sdk:///third_party/dart/runtime/lib/ffi_patch.dart:76:3: Error: Type 'TypedData' not found.
TypedData asExternalTypedData({int count: 1}) =>
^^^^^^^^^
Original change's description:
> [vm/ffi] Enable creating an ExternalTypedData from a Pointer.
>
> Fixes dartbug.com/37738
>
> Change-Id: I65c6741978d36cd1c255039a4dd8a06190ea4366
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111736
> Commit-Queue: Samir Jindel <sjindel@google.com >
> Reviewed-by: Daco Harkes <dacoharkes@google.com >
TBR=vegorov@google.com ,sjindel@google.com ,dacoharkes@google.com
Change-Id: I90a9cb5e2894c0bc064e620cef0a0f51505ac05d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112047
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2019-08-06 19:52:11 +00:00
Samir Jindel
ddd83d256f
[vm/ffi] Enable creating an ExternalTypedData from a Pointer.
...
Fixes dartbug.com/37738
Change-Id: I65c6741978d36cd1c255039a4dd8a06190ea4366
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111736
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
2019-08-06 15:38:27 +00:00
Samir Jindel
fcc72ad83f
[vm/ffi] Support FFI in AOT (excluding callbacks).
...
Move generation of Function objects for native trampolines to the Precompiler, so they can be generated during AOT and tree-shaken if possible.
Issue dartbug.com/35765
Change-Id: I0e69b7e0b22db73e3a40f2fe445660e57ddb6fa9
Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-bare-linux-release-simarm64-try, vm-kernel-precomp-bare-linux-release-x64-try, vm-kernel-precomp-linux-debug-x64-try, vm-dartkb-linux-debug-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107407
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-07-05 21:59:27 +00:00
Samir Jindel
fc6cb0ac21
[vm/ffi] Revamp struct representation in FFI.
...
See dartbug.com/37229 for details.
Change-Id: I63490e41c512ffc9312803985a6f6d4be1586c0a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101291
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-07-02 23:12:13 +00:00
Samir Jindel
496345e2e1
[vm/ffi] Update exception behavior of FFI callbacks and fix callbacks returning void
...
Issues dartbug.com/36856 and dartbug.com/37301
Change-Id: I96595b0781a3a6ddf73bba5595ed5c1aa08be257
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106352
Reviewed-by: Martin Kustermann <kustermann@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
2019-06-27 18:26:27 +00:00
Daco Harkes
04c984ce3f
[vm/ffi] Make overflow checks consistent
...
This CL changes the semantics of Pointer.allocate() to not do any range or overflow checks. This is consistent with the truncating behavior that the rest of the FFI has.
Fixes: https://github.com/dart-lang/sdk/issues/37250
Change-Id: Icc2b53e229cd6a2faae99c833ea5df372eb35b74
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107503
Commit-Queue: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Samir Jindel <sjindel@google.com >
2019-06-27 14:26:33 +00:00
Daco Harkes
3cce6fc8d6
[vm/ffi] Fix direct interaction with Pointer<Native>
...
This CL changes the static checks and runtime behavior of Pointer<T>.store<T>(T v) and T Pointer<T>.load() behavior to be consistent with the way Dart handles instances methods with generics. For more details see the issue.
Fixes: https://github.com/dart-lang/sdk/issues/37254
Change-Id: Ifcf89646f8e357d8592c38bb340942d522dac941
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107404
Commit-Queue: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-06-27 13:14:11 +00:00
Daco Harkes
04c1a2886f
[vm/ffi] SimDBC64 align stack frame
...
And regression test for dartbug.com/37069
Fixes: https://github.com/dart-lang/sdk/issues/37176
Follow up of: https://dart-review.googlesource.com/c/sdk/+/103814
Bug: https://github.com/dart-lang/sdk/issues/37069
Change-Id: I066561b487c691952496e2ca6878ac82cee0e02e
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try, app-kernel-linux-debug-x64-try, vm-kernel-linux-debug-simdbc64-try,vm-kernel-mac-debug-simdbc64-try,vm-kernel-reload-mac-debug-simdbc64-try,vm-kernel-linux-debug-ia32-try,vm-dartkb-linux-debug-simarm64-try,vm-kernel-win-debug-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105941
Commit-Queue: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Samir Jindel <sjindel@google.com >
2019-06-13 16:26:40 +00:00
Samir Jindel
68b2d53da5
Revert "[vm/ffi] SimDBC64 align stack frame"
...
This reverts commit f1038ee771 .
Reason for revert: breaks function_gc_test on ARM64
Original change's description:
> [vm/ffi] SimDBC64 align stack frame
>
> And regression test for dartbug.com/37069
>
> Fixes: https://github.com/dart-lang/sdk/issues/37176
> Follow up of: https://dart-review.googlesource.com/c/sdk/+/103814
> Bug: https://github.com/dart-lang/sdk/issues/37069
> Change-Id: I2c791271f936580d66a48485a60ab6cddb1ba4f8
> Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try, app-kernel-linux-debug-x64-try, vm-kernel-linux-debug-simdbc64-try,vm-kernel-mac-debug-simdbc64-try,vm-kernel-reload-mac-debug-simdbc64-try,vm-kernel-linux-debug-ia32-try,vm-dartkb-linux-debug-simarm64-try,vm-kernel-win-debug-x64-try
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104824
> Commit-Queue: Daco Harkes <dacoharkes@google.com >
> Reviewed-by: Samir Jindel <sjindel@google.com >
TBR=sjindel@google.com ,dacoharkes@google.com
Change-Id: Ibefa2e854f4a58b41384aca73a3bbbe86d75bf80
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: https://github.com/dart-lang/sdk/issues/37069
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try, app-kernel-linux-debug-x64-try, vm-kernel-linux-debug-simdbc64-try, vm-kernel-mac-debug-simdbc64-try, vm-kernel-reload-mac-debug-simdbc64-try, vm-kernel-linux-debug-ia32-try, vm-dartkb-linux-debug-simarm64-try, vm-kernel-win-debug-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105840
Reviewed-by: Samir Jindel <sjindel@google.com >
Commit-Queue: Samir Jindel <sjindel@google.com >
2019-06-12 22:31:11 +00:00
Daco Harkes
f1038ee771
[vm/ffi] SimDBC64 align stack frame
...
And regression test for dartbug.com/37069
Fixes: https://github.com/dart-lang/sdk/issues/37176
Follow up of: https://dart-review.googlesource.com/c/sdk/+/103814
Bug: https://github.com/dart-lang/sdk/issues/37069
Change-Id: I2c791271f936580d66a48485a60ab6cddb1ba4f8
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try, app-kernel-linux-debug-x64-try, vm-kernel-linux-debug-simdbc64-try,vm-kernel-mac-debug-simdbc64-try,vm-kernel-reload-mac-debug-simdbc64-try,vm-kernel-linux-debug-ia32-try,vm-dartkb-linux-debug-simarm64-try,vm-kernel-win-debug-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/104824
Commit-Queue: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Samir Jindel <sjindel@google.com >
2019-06-12 16:25:34 +00:00
Samir Jindel
8cbb11cc55
[vm/ffi] FFI callbacks on ARM32.
...
Please see go/dart-ffi-callbacks for design context and motivation.
Change-Id: Ie5edcb8837157c679954a670fb19d545e22fec69
Cq-Include-Trybots: luci.dart.try:vm-kernel-linux-debug-simdbc64-try, vm-kernel-linux-release-simdbc64-try, vm-kernel-mac-debug-simdbc64-try, vm-kernel-mac-release-simdbc64-try, vm-kernel-reload-mac-debug-simdbc64-try, vm-kernel-reload-mac-release-simdbc64-try, vm-kernel-linux-debug-ia32-try, vm-dartkb-linux-debug-simarm64-try, vm-kernel-win-debug-ia32-try, vm-ffi-android-debug-arm-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101828
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Aart Bik <ajcbik@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
2019-06-03 14:36:04 +00:00
Samir Jindel
afc54e23e3
[vm/ffi] FFI callbacks on ARM64.
...
For design context and motivation, see go/dart-ffi-callbacks
Change-Id: Ie463a462c8676c4a1973f377acee067253aca9f0
Cq-Include-Trybots: luci.dart.try:vm-kernel-linux-debug-simdbc64-try, vm-kernel-linux-release-simdbc64-try, vm-kernel-mac-debug-simdbc64-try, vm-kernel-mac-release-simdbc64-try, vm-kernel-reload-mac-debug-simdbc64-try, vm-kernel-reload-mac-release-simdbc64-try, vm-kernel-linux-debug-ia32-try, vm-dartkb-linux-debug-simarm64-try, vm-kernel-win-debug-ia32-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101825
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Aart Bik <ajcbik@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
2019-05-27 11:05:18 +00:00
Samir Jindel
0a5e5995e8
[vm/ffi] FFI callbacks on IA32.
...
Second part of implementing FFI callbacks, see go/dart-ffi-callbacks for design context.
Change-Id: Ibe8195e8cb40e0c1932b179fbc6df2b9668e2fa2
Cq-Include-Trybots: luci.dart.try:vm-kernel-linux-debug-simdbc64-try, vm-kernel-linux-release-simdbc64-try, vm-kernel-mac-debug-simdbc64-try, vm-kernel-mac-release-simdbc64-try, vm-kernel-reload-mac-debug-simdbc64-try, vm-kernel-reload-mac-release-simdbc64-try, vm-kernel-linux-debug-ia32-try, vm-dartkb-linux-debug-simarm64-try, vm-kernel-win-debug-ia32-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/100582
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Aart Bik <ajcbik@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
2019-05-27 10:49:48 +00:00
Samir Jindel
225a301637
[vm/ffi] Re-land "[vm/ffi] FFI callbacks on X64."
...
There are minor fixes for dartkb and windows.
The original revision is in patchset 1.
Change-Id: I9ab6e5fdb33fb4e84ea520c283fe94323616a8ce
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103129
Commit-Queue: Samir Jindel <sjindel@google.com >
Auto-Submit: Samir Jindel <sjindel@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
2019-05-24 02:39:13 +00:00
Samir Jindel
ed169c4bb0
Revert "[vm/ffi] FFI callbacks on X64."
...
This reverts commit be209f7846 .
Reason for revert: failures on dartkb and windows bots
Original change's description:
> [vm/ffi] FFI callbacks on X64.
>
> For context on the design, see go/dart-ffi-callbacks
>
> Change-Id: I2482e3c932e73f9a4c00fa7e218ff85f9328fc51
> Cq-Include-Trybots: luci.dart.try:vm-kernel-linux-debug-simdbc64-try, vm-kernel-linux-release-simdbc64-try, vm-kernel-mac-debug-simdbc64-try, vm-kernel-mac-release-simdbc64-try, vm-kernel-reload-mac-debug-simdbc64-try, vm-kernel-reload-mac-release-simdbc64-try, vm-kernel-linux-debug-ia32-try, vm-dartkb-linux-debug-simarm64-try
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/100240
> Commit-Queue: Samir Jindel <sjindel@google.com >
> Reviewed-by: Daco Harkes <dacoharkes@google.com >
TBR=sjindel@google.com ,ajcbik@google.com ,dacoharkes@google.com
Change-Id: I4cb3d93675d68a51ac9e125ad1d572c47e8b5903
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Cq-Include-Trybots: luci.dart.try:vm-kernel-linux-debug-simdbc64-try, vm-kernel-linux-release-simdbc64-try, vm-kernel-mac-debug-simdbc64-try, vm-kernel-mac-release-simdbc64-try, vm-kernel-reload-mac-debug-simdbc64-try, vm-kernel-reload-mac-release-simdbc64-try, vm-kernel-linux-debug-ia32-try, vm-dartkb-linux-debug-simarm64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102983
Reviewed-by: Samir Jindel <sjindel@google.com >
Commit-Queue: Samir Jindel <sjindel@google.com >
2019-05-18 15:29:19 +00:00
Samir Jindel
be209f7846
[vm/ffi] FFI callbacks on X64.
...
For context on the design, see go/dart-ffi-callbacks
Change-Id: I2482e3c932e73f9a4c00fa7e218ff85f9328fc51
Cq-Include-Trybots: luci.dart.try:vm-kernel-linux-debug-simdbc64-try, vm-kernel-linux-release-simdbc64-try, vm-kernel-mac-debug-simdbc64-try, vm-kernel-mac-release-simdbc64-try, vm-kernel-reload-mac-debug-simdbc64-try, vm-kernel-reload-mac-release-simdbc64-try, vm-kernel-linux-debug-ia32-try, vm-dartkb-linux-debug-simarm64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/100240
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
2019-05-18 06:15:46 +00:00
Daco Harkes
b2949d3436
fix Flutter build for "[vm/ffi] DBC support on x64 Linux/MacOS hosts"
...
Change-Id: I119776682e53f70f621107f2159670cb3e75b310
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101982
Reviewed-by: Daco Harkes <dacoharkes@google.com >
2019-05-09 12:19:21 +00:00
Daco Harkes
a8b93d9e78
[vm/ffi] DBC support on x64 Linux/MacOS hosts
...
Issue: https://github.com/dart-lang/sdk/issues/35773
Change-Id: Ib58fb8df6c5c18e604fbf2a156ab69025e5f57d7
Cq-Include-Trybots: luci.dart.try:vm-kernel-linux-debug-simdbc64-try, vm-kernel-linux-release-simdbc64-try, vm-kernel-mac-debug-simdbc64-try, vm-kernel-mac-release-simdbc64-try, vm-kernel-reload-mac-debug-simdbc64-try, vm-kernel-reload-mac-release-simdbc64-try, vm-kernel-linux-debug-ia32-try, vm-dartkb-linux-debug-simarm64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97221
Reviewed-by: Samir Jindel <sjindel@google.com >
Commit-Queue: Daco Harkes <dacoharkes@google.com >
2019-05-09 11:46:03 +00:00
Matthew Dempsky
4ce3aa7af1
[vm] Replace ^= assignments with = where possible
...
Change-Id: I04ac2e9c4b8bb654b7c660e728be3867aa4e1513
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/100923
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Matthew Dempsky <mdempsky@google.com >
2019-05-01 00:04:44 +00:00
Samir Jindel
f4e63990cb
[vm/ffi] Support FFI on ARM32.
...
Fixes dartbug.com/36311.
Addresses dartbug.com/35760.
Change-Id: Ib6c4db69f31dfb5317e4162b80d3e30a996e3a2e
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try,vm-ffi-android-release-arm-try,vm-ffi-android-product-arm-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97631
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
2019-04-10 13:15:16 +00:00
Samir Jindel
b032f1b284
[vm] Support FFI on 32-bit Intel.
...
Change-Id: I08acf6ef00e899f95dbaf2de36f1aea5e6e7ea3d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97108
Reviewed-by: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Aart Bik <ajcbik@google.com >
2019-03-20 17:45:23 +00:00
Samir Jindel
85f8d3c047
[vm] Build FFI trampolines with IL.
...
Bugs fixed: dartbug.com/36033, dartbug.com/36034, dartbug.com/36155.
Change-Id: Ic463dd2d299018e03f840ecedc8b7dfa350c6b95
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/94860
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Aart Bik <ajcbik@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2019-03-15 12:38:54 +00:00
Daco Harkes
a43c525de2
Reland "[vm/ffi] Support Windows 64 bit"
...
Enables dart:ffi on Windows 64 bit.
Note that function_stress_test.dart fails in two different ways, these are known bugs. https://github.com/dart-lang/sdk/issues/36138
Relanding: Fixed compilation on Android.
Closes: https://github.com/dart-lang/sdk/issues/35771
Change-Id: I7d0c8b64ca8c1726b7d264d4fd9213299a9f7df6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96781
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Daco Harkes <dacoharkes@google.com >
2019-03-13 11:47:37 +00:00
Vyacheslav Egorov
23eb57c2bf
Revert "[vm/ffi] Support Windows 64 bit"
...
This reverts commit 7f812dea1a .
Reason for revert: Flutter build is broken on Golem.
Original change's description:
> [vm/ffi] Support Windows 64 bit
>
> Enables dart:ffi on Windows 64 bit.
>
> Note that function_stress_test.dart fails in two different ways, these are known bugs. https://github.com/dart-lang/sdk/issues/36138
>
> Closes: https://github.com/dart-lang/sdk/issues/35771
> Change-Id: I73012123f2bd90b737fdc1c87c9a9630c20d5660
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95647
> Commit-Queue: Daco Harkes <dacoharkes@google.com >
> Reviewed-by: Samir Jindel <sjindel@google.com >
> Reviewed-by: Martin Kustermann <kustermann@google.com >
TBR=kustermann@google.com ,sjindel@google.com ,dacoharkes@google.com
Change-Id: I5be4538e3c99632a852e4dfb856248eb437fb3ea
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96683
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Commit-Queue: Vyacheslav Egorov <vegorov@google.com >
2019-03-12 19:55:17 +00:00
Daco Harkes
7f812dea1a
[vm/ffi] Support Windows 64 bit
...
Enables dart:ffi on Windows 64 bit.
Note that function_stress_test.dart fails in two different ways, these are known bugs. https://github.com/dart-lang/sdk/issues/36138
Closes: https://github.com/dart-lang/sdk/issues/35771
Change-Id: I73012123f2bd90b737fdc1c87c9a9630c20d5660
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95647
Commit-Queue: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Samir Jindel <sjindel@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-03-12 17:30:26 +00:00
Samir Jindel
bdb07f4a1f
[vm/ffi] Fix garbage collection of ffi.Pointer subtypes.
...
Fixes https://github.com/dart-lang/sdk/issues/36125 .
Change-Id: Ib9069d1e15684c785b86954ed8c14e5fdde35fec
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95652
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
2019-03-07 15:56:08 +00:00
Samir Jindel
f0042a3225
[vm/ffi] Factor out FFI code shared between compiler and runtime.
...
Change-Id: I0b4af9cb36fd5ebc163621951486333a68baa890
Reviewed-on: https://dart-review.googlesource.com/c/93503
Commit-Queue: Samir Jindel <sjindel@google.com >
Auto-Submit: Samir Jindel <sjindel@google.com >
Reviewed-by: Daco Harkes <dacoharkes@google.com >
2019-02-26 12:48:32 +00:00
Martin Kustermann
d3fde891bf
[VM] Fix deadlock between mutator and BG compiler
...
Here's how the deadlock can happen:
* The vm-service background compiler asks all threads to go to a
safepoint before it finalizes the code. Then it finalizes the
code and notifies code observers. A code observer posts a
message to the vm-service. Posting this message requires holding the
monitor of the receiving isolate's message handler (see
MessageHandler::PostMessage).
* The vm-service mutator holds it's message handlers monitor and
enters the isolate (see MessageHandler::HandleMessages). The
StartIsolateScope schedules the mutator thread, which will in return
see that BG compiler wants to safepoint, so it waits for BG compiler
to finish.
At this point the mutator holds the MessageHandler's monitor and waits
for BG compiler to finish safepoint. The BG compiler tries to post a
message to the message handler (and the monitor is locked).
-> This CL ensures the BG compiler only arranges a safepoint before it
starts creating the instructions object. It fills it in and exits the
safepoint again. Only then do we notify code observers.
Furthermore this CL ensures we transition out of VM to native state
before calling the Dart_PostCMessage() function.
Change-Id: I5320440d54ca303a1ccc7556600a42d37cd6e1de
Reviewed-on: https://dart-review.googlesource.com/c/93421
Commit-Queue: Martin Kustermann <kustermann@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
2019-02-19 14:00:04 +00:00
Daco Harkes
a85ae4e919
[vm/ffi] fix sizeOf on subtypes of Pointer
...
Change-Id: I9f1f0c6fc618039e0c50d0a70460e1d66d568bca
Reviewed-on: https://dart-review.googlesource.com/c/93502
Auto-Submit: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Samir Jindel <sjindel@google.com >
Commit-Queue: Samir Jindel <sjindel@google.com >
2019-02-19 12:57:04 +00:00
Daco Harkes
7d46d4b5cb
[vm / library] Foreign function interface prototype
...
Prototype for `dart:ffi` on Linux/MacOS x64 in JIT mode.
`dart:ffi` is experimental and its API is likely to change in the future.
Progress and design decisions are tracked in https://github.com/dart-lang/sdk/projects/13
issue: https://github.com/dart-lang/sdk/issues/34452
Change-Id: Ifa4566388e42c8757f154741d11e303465ef305d
Cq-Include-Trybots: luci.dart.try:vm-kernel-optcounter-threshold-linux-release-x64-try, vm-kernel-precomp-linux-debug-x64-try, vm-kernel-precomp-linux-release-simarm-try, vm-kernel-precomp-linux-release-simarm64-try, vm-kernel-precomp-linux-release-x64-try, vm-kernel-precomp-mac-release-simarm64-try, vm-kernel-precomp-win-release-x64-try, vm-kernel-mac-debug-x64-try, vm-kernel-asan-linux-release-x64
Reviewed-on: https://dart-review.googlesource.com/c/80124
Reviewed-by: Samir Jindel <sjindel@google.com >
Auto-Submit: Daco Harkes <dacoharkes@google.com >
2019-02-13 12:42:47 +00:00