Samir Jindel
43329adf84
[vm/aot] Remove uses of blobs from tests and scripts.
...
Change-Id: I03ccdba1f45ddb1b6774557d55b8fd47f87c7dd3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121842
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-11-07 14:06:07 +00:00
Zichang Guo
46ae3e4e7a
[vm] not remove port if socket was listening by other isolates
...
Crashes come from assertion in ReturnTokens() and new_mask() in Eventhandler.
Another issue is when multiple serversockets bind to the same address, Socket will be reused to all Dart_Ports. But Socket didn't keep track of corresponding Dart Port.
When one of isolates is killed, finalizer wakes up and close most recent Dart Port that sends data.
After this cl, Socket may not be reused by different Dart Sockets. All Dart socket will has its own Socket object. But Sockets can have same fd.
This will guarantee finalizer will close right Dart Port.
Bug: https://github.com/dart-lang/sdk/issues/36106
Change-Id: Ib4620ada5f120ffda719052297009280c73b4315
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122490
Commit-Queue: Zichang Guo <zichangguo@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-11-06 16:28:12 +00:00
Martin Kustermann
ab5cf0f854
[vm] Ensure create_sdk GN build has working dart2native iff AOT is supported
...
This CL
* adds a GN flag "include_dart2native" off by-default (switched on explicitly for our GN build)
* ensures every GN build of the "create_sdk" target has a working dart2native (except ia32)
* removes not-working dart2native script from ia32 dart-sdk (no AOT support in ia32)
* removes the "dartaotruntime" GN target, since it is the same as "dart_precompiled_runtime"
This should ensure every downstream consumer of the "create_sdk" GN target will
have a working version of dart2native.
For the particular "dart-sdk" we create on dart-sdk-{linux,windows,mac}
we will override the default AOT compiler&runtime with the product mode,
which produces smaller AOT snapshots and has smaller AOT runtime (making
the native executables significantly smaller)
Change-Id: Ib5042589297cdb055c41dc56abdff86a4612ef5c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123724
Commit-Queue: Martin Kustermann <kustermann@google.com >
Reviewed-by: Michael Thomsen <mit@google.com >
2019-11-04 12:01:56 +00:00
Ben Konyi
3224a6633b
[ VM / dart:io ] Replace usage of SecTrustEvaluate with SecTrustEvaluateWithError on MacOS >= 10.14
...
SecTrustEvaluate is now deprecated as of 10.15.
Fixes https://github.com/dart-lang/sdk/issues/38887
Change-Id: Id057ef47d4c4be0ad012203dbabc0266be58ad8a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123556
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
2019-10-31 22:17:17 +00:00
Maxim
cb2f45ea6b
Fixed Dart->C++ mapping of IPPROTO_IPV6 socket option
...
Fixes mapping of Dart `RawSocketOption` in `RawSocketOption_GetOptionValue` function.
Closes #39165
https://github.com/dart-lang/sdk/pull/39165
GitOrigin-RevId: 696478de091bfb2221edc565ff55d4e69b1b2e1f
Change-Id: Ibcd67a25ab2f85d30696a6050bf844a5b09aa819
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123440
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Commit-Queue: Vyacheslav Egorov <vegorov@google.com >
2019-10-30 14:53:54 +00:00
Samir Jindel
c885bdde1d
[vm] DBC is obsolete. Remove dead code.
...
Change-Id: Ica33af158cca53c8e951e4b2582de83660e8a60d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121851
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-10-27 18:18:29 +00:00
Ryan Macnak
c873220e43
[vm, arm64] Adjust CSP during the invocation stub instead of each function prologue.
...
Since 6e2c4636cd , we have more reliable information about the stack limit.
This saves 8 bytes from each function.
Flutter Gallery:
Instructions(CodeSize): 6491472 -> 6375472 (-1.79%)
Total(CodeSize): 10375882 -> 10258802 (-1.13%)
Bug: https://github.com/dart-lang/sdk/issues/26472
Bug: https://github.com/dart-lang/sdk/issues/39083
Change-Id: I1d8e4c4bfd858eca1d0e4e5640faae15f4dbbe8e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122845
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-10-25 19:21:56 +00:00
Ryan Macnak
86af66a3ee
Revert "[vm, arm64] Adjust CSP during the invocation stub instead of each function prologue."
...
This reverts commit b5b322962a .
Reason for revert: low frequency of crashes in service tests
Original change's description:
> [vm, arm64] Adjust CSP during the invocation stub instead of each function prologue.
>
> Since 6e2c4636cd , we have more reliable information about the stack limit.
>
> This saves 8 bytes from each function.
>
> Flutter Gallery:
> Instructions(CodeSize): 6491472 -> 6375472 (-1.79%)
> Total(CodeSize): 10375882 -> 10258802 (-1.13%)
>
> Bug: http://dartbug.com/26472
> Change-Id: Ief1ddd25eecd32a8314c71fdb470dd73046e5dc0
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122408
> Commit-Queue: Ryan Macnak <rmacnak@google.com >
> Reviewed-by: Alexander Markov <alexmarkov@google.com >
TBR=rmacnak@google.com ,alexmarkov@google.com ,ajcbik@google.com
Change-Id: I0b45e1c81c1534e123dd85d27b7af27217e08795
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: http://dartbug.com/26472
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122725
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-10-24 04:12:16 +00:00
Ryan Macnak
b5b322962a
[vm, arm64] Adjust CSP during the invocation stub instead of each function prologue.
...
Since 6e2c4636cd , we have more reliable information about the stack limit.
This saves 8 bytes from each function.
Flutter Gallery:
Instructions(CodeSize): 6491472 -> 6375472 (-1.79%)
Total(CodeSize): 10375882 -> 10258802 (-1.13%)
Bug: http://dartbug.com/26472
Change-Id: Ief1ddd25eecd32a8314c71fdb470dd73046e5dc0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122408
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-10-24 02:40:43 +00:00
Ryan Macnak
635c47b1c9
Reland "Update BoringSSL to 4dfd5af70191b068aebe567b8e29ce108cee85ce."
...
This reverts commit 7eeaeade6b .
Change-Id: I6e2d9f5b3f9a43b70db321d15c81e568857f303e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122488
Reviewed-by: Alexander Aprelev <aam@google.com >
Reviewed-by: Jonas Termansen <sortie@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-10-23 18:08:16 +00:00
Daco Harkes
5fd6c8a3c1
[vm] Do not fuse constants with different representations
...
Issue: https://github.com/dart-lang/sdk/issues/39044
Change-Id: I19b1309adb769742b498ed0b6fe80ae38a779405
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try,vm-ffi-android-debug-arm64-try,app-kernel-linux-debug-x64-try,vm-kernel-linux-debug-ia32-try,vm-dartkb-linux-debug-simarm64-try,vm-kernel-win-debug-x64-try,vm-kernel-win-debug-ia32-try,vm-dartkb-linux-debug-x64-try,vm-kernel-precomp-linux-debug-x64-try,vm-dartkb-linux-release-x64-abi-try,vm-kernel-precomp-android-release-arm64-try,vm-kernel-asan-linux-release-x64-try,vm-kernel-linux-release-simarm-try,vm-kernel-linux-release-simarm64-try,vm-kernel-precomp-android-release-arm_x64-try,vm-kernel-precomp-obfuscate-linux-release-x64-try,vm-kernel-reload-rollback-linux-debug-x64-try,vm-kernel-precomp-mac-release-simarm_x64-try,dart-sdk-linux-try,flutter-engine-linux-try,analyzer-analysis-server-linux-try,analyzer-linux-release-try,front-end-linux-release-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122396
Commit-Queue: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-10-23 12:59:28 +00:00
Ryan Macnak
6a65ea9cad
[vm] Remove shared snapshot and reused instructions features.
...
Shared snapshots have been disused by Fuchsia deduping.
Reused instruction has been disused by Flutter code push.
Change-Id: Ia4cb570935c233a9365d521ca04a477c5550ef83
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122421
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-10-22 19:02:26 +00:00
Siva Annamalai
e1c409792c
Revert "Reland "Update BoringSSL to 4dfd5af70191b068aebe567b8e29ce108cee85ce.""
...
This reverts commit 7eeaeade6b .
Reason for revert: This change requires some changes to he Flutter license script before it can be rolled into Flutter, Since changes on the Dart side are mounting up I am reverting this change so the roll can move forward and then we will reland this change with the right fixes to the license checking script.
Original change's description:
> Reland "Update BoringSSL to 4dfd5af70191b068aebe567b8e29ce108cee85ce."
>
> Change-Id: I7bdc0f0d55af2ecced789f1aa8f37b804641eaf4
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121887
> Reviewed-by: Jonas Termansen <sortie@google.com >
> Commit-Queue: Ryan Macnak <rmacnak@google.com >
TBR=sortie@google.com ,rmacnak@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I548844e9d58559e6ed5796dff08f3ab0644c6dc2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122410
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
2019-10-22 05:54:53 +00:00
Liam Appelbe
aa569dfff0
[vm] Enable non-nullable experiment when building platform dill with --nnbd flag.
...
Change-Id: I00632cc2dcf5e929698ee6b88eefbd5c58752297
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122174
Commit-Queue: Liam Appelbe <liama@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-10-21 19:14:04 +00:00
asiva
d0139e8e38
[VM] More cleanup in the loader code
...
- Removed ResolveDependenciesAsFilePaths functionality as the loader
does not track any dependencies (this is now provided by the kernel
isolate)
- Removed ResolveAsFilePath functionality from the loader class
- Removed some left over code related to deferred loading
Change-Id: Ic1b1a79b07020bb7082e9efb7544b73931290faf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122220
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
2019-10-21 17:44:18 +00:00
Clement Skau
8d8faa7dea
[SDK] Fixes loading appended snapshots when executed with PATH.
...
Loading of appended snapshots used to try read the executable itself
via arg[0] which holds the "path" to the executable.
However, when the executable is being invoked via PATH the "path"
can be just the name of the executable with no actual path.
This would cause the file reading to fail to find the file and
therefore fail to read.
This in turn caused standalone executables to fail to run when invoked
via PATH.
Bug: https://github.com/dart-lang/sdk/issues/38912
Change-Id: I08501661441db90ce6cff96a9337a5770ec3524d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121853
Commit-Queue: Clement Skau <cskau@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-10-18 10:30:48 +00:00
asiva
cd95fcc810
[VM] Start the kernel isolate only when compilations are needed
...
- Start the kernel isolate only when a compilation is needed
- Remove some dead code and state in the loader path
Change-Id: I39e14cd79cda18b155af6334a11635c44e2fc11f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121923
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
2019-10-18 00:27:16 +00:00
Daco Harkes
d2b39d1a07
[cfe/ffi] asFunction/fromFunction variance in CFE + regression test
...
Issue: https://github.com/dart-lang/sdk/issues/37385
Change-Id: I0a0704f3513bf8de802e7481d813f72678837e0b
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try,vm-ffi-android-debug-arm64-try,dart-sdk-linux-try,analyzer-win-release-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107511
Commit-Queue: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-10-17 17:44:06 +00:00
Ryan Macnak
ecd7977928
[vm] Fix gcc build.
...
Change-Id: I8a0a9a695403dc6d048dccb9f33642d70cc5d588
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121866
Reviewed-by: Liam Appelbe <liama@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-10-17 16:51:32 +00:00
Ryan Macnak
7eeaeade6b
Reland "Update BoringSSL to 4dfd5af70191b068aebe567b8e29ce108cee85ce."
...
Change-Id: I7bdc0f0d55af2ecced789f1aa8f37b804641eaf4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121887
Reviewed-by: Jonas Termansen <sortie@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-10-17 15:39:40 +00:00
Samir Jindel
548f7f3d6e
[vm/aot] Deprecate blob snapshots.
...
Change-Id: I850d28bf6dd405b41646482e810d4d0b4498c66c
Cq-Include-Trybots:luci.dart.try:vm-kernel-precomp-bare-linux-release-simarm64-try,vm-kernel-precomp-linux-debug-x64-try,vm-kernel-precomp-linux-release-simarm-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121704
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-10-17 13:13:39 +00:00
Ben Konyi
558875d480
[ VM / dart:io ] Added service extension scaffolding for dart:io network profiling
...
Change-Id: I531f002da65a3ea1439a6ed93d9698323f48bd31
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121888
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2019-10-16 22:48:46 +00:00
Martin Kustermann
5688d7ba67
[vm/ffi] Make gen_snapshot use the compile-time error exit code if the isolate failed to load the kernel file
...
This will make the ffi/enable_ffi_test test pass in AOT mode as well.
Change-Id: I41457aaeb02da8a303c1484b3637201224a085f5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121065
Reviewed-by: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Samir Jindel <sjindel@google.com >
Commit-Queue: Martin Kustermann <kustermann@google.com >
2019-10-10 17:07:17 +00:00
Ryan Macnak
f4f0831c69
[vm] Fix TSAN failures related to object headers and GC task phases.
...
Change-Id: I15078e845712e8e712e2cb0a044fc7550127ea36
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120629
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
2019-10-09 21:48:20 +00:00
Zichang Guo
8866cdb8be
[vm] throw exception if directory buffer overflows on Windows
...
According to https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-readdirectorychangesw ,
When using ReadDirectoryChangesW, buffer overflows will still return true. It ends up closing the stream without any notification.
Throw an exception to notify users.
Bug: https://github.com/dart-lang/sdk/issues/37233
Change-Id: I9aebed8b1f30b5e843ad37a51b87d234aa1d8ce6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119524
Commit-Queue: Zichang Guo <zichangguo@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
Reviewed-by: Alexander Aprelev <aam@google.com >
2019-10-09 19:59:52 +00:00
Tamir Duberstein
4539536b34
[eventhandler] generalize socket initialization
...
Change-Id: Iac2ef051a822223a20b2a440756de18f9b2bf11e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120601
Reviewed-by: Zach Anderson <zra@google.com >
Commit-Queue: Zach Anderson <zra@google.com >
2019-10-07 22:10:59 +00:00
Samir Jindel
afac6a3714
Re-land "[vm] Use ELF loader in dart2native."
...
Fixes symbol resolution on Darwin.
The original commit is in patchset 1.
Change-Id: If71e9a72b8a2f45db2591bfa45ec4018745ee2c4
Cq-Include-Trybots:luci.dart.try:dart-sdk-mac-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119646
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-10-03 13:40:12 +00:00
Samir Jindel
9e738b94b4
[vm] Remove #include from elf_loader.h so it can be used imported in Flutter.
...
Change-Id: I72ff785709ee1f5f5fbbd57d2433ca96e9866470
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118986
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Samir Jindel <sjindel@google.com >
2019-10-02 20:11:20 +00:00
Samir Jindel
d0b799f39c
Revert "[vm] Use ELF loader in dart2native."
...
This reverts commit 98b286de21 .
Reason for revert: Breaks on Mac
Original change's description:
> [vm] Use ELF loader in dart2native.
>
> Change-Id: I58834e3626cb18830ad9f9b1b95bdfa9d1ebd040
> Cq-Include-Trybots:luci.dart.try:vm-kernel-precomp-linux-debug-x64-try,vm-kernel-precomp-linux-release-simarm-try
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119150
> Commit-Queue: Samir Jindel <sjindel@google.com >
> Reviewed-by: Clement Skau <cskau@google.com >
TBR=sjindel@google.com ,cskau@google.com ,dianamichesa@google.com
Change-Id: I61c5c36e4ccd09d91cdb58c7c87f679f02579f03
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-linux-debug-x64-try, vm-kernel-precomp-linux-release-simarm-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119643
Reviewed-by: Samir Jindel <sjindel@google.com >
Commit-Queue: Samir Jindel <sjindel@google.com >
2019-10-02 14:02:51 +00:00
Samir Jindel
98b286de21
[vm] Use ELF loader in dart2native.
...
Change-Id: I58834e3626cb18830ad9f9b1b95bdfa9d1ebd040
Cq-Include-Trybots:luci.dart.try:vm-kernel-precomp-linux-debug-x64-try,vm-kernel-precomp-linux-release-simarm-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119150
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Clement Skau <cskau@google.com >
2019-10-02 13:42:39 +00:00
Alexander Aprelev
692230b484
[build] Introduce gen_snapshot_host_targeting_host.
...
This is to allow flutter to build x64-version of gen_snapshot as part of host x86 build.
Change-Id: I54948e03e50fc19ade74d9165781957b116075c4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119205
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Alexander Aprelev <aam@google.com >
2019-09-30 18:10:37 +00:00
Ben Konyi
7e4058e3a5
[ VM / Service ] Update service tests to no longer use --disable-service-auth-codes
...
Also fixed issue where --write-service-info could not accept URIs.
Change-Id: I0b136dd83335f0aed260850b2e5a5aed36df4317
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119083
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2019-09-30 17:47:03 +00:00
Kaushik Iska
b7019a0340
[fuchsia] Currently Flutter/Dart -> Fuchsia rolls are broken
...
https://dart-review.googlesource.com/c/sdk/+/117620 missed updating
a few dependencies.
tqr/147436 is the failure situation.
Change-Id: I01f33b0fa6519e7d10a67b2af28a78ac534477a1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119178
Reviewed-by: Zach Anderson <zra@google.com >
Reviewed-by: Chinmay Garde <chinmaygarde@google.com >
Auto-Submit: Kaushik Iska <kaushikiska@google.com >
Commit-Queue: Zach Anderson <zra@google.com >
2019-09-27 23:14:51 +00:00
Samir Jindel
fbea9d2e3c
[vm] Fix use of Utils::Maximum in elf_loader.cc
...
Change-Id: Iae70a6b9bf1656fe101f0f7f945cc9bf99659600
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119148
Reviewed-by: Samir Jindel <sjindel@google.com >
2019-09-27 14:51:02 +00:00
Samir Jindel
9852c135a7
[vm] Fix Mac build.
...
Change-Id: I08357aa5fad17becdfc314b7909ef11218cb314a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119144
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Samir Jindel <sjindel@google.com >
2019-09-27 13:24:59 +00:00
Samir Jindel
ee1ab89987
[vm/infra] Fix compiler_configuration to use existing cross-compiler.
...
Also fix the ELF loader to allow segment alignment >page size.
Change-Id: Icc4c2eaae44171e74cc41d9f2b06701acad86a90
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118983
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Alexander Thomas <athom@google.com >
2019-09-27 11:56:55 +00:00
Ryan Macnak
7901c508c8
[build] Enable ASAN leak detection during the build, not just tests.
...
Fix two leaks in gen_snapshot.cc.
Change-Id: Ie05771bf0386371842d327c9927319f207603cc1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119065
Reviewed-by: Liam Appelbe <liama@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-09-26 23:19:42 +00:00
Jason Simmons
f0e5b380ab
[build] Fix the depfile for gen_kernel_bytecode_dill
...
The depfile should not be listed as an output, and the target name in the
depfile must exactly match the target name in the Ninja file
Change-Id: If5f5371c6ef36f5b8fcff0de16a093fefa35019f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119040
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-09-26 19:54:38 +00:00
Samir Jindel
9a683de40d
[vm] Support testing assembly snapshots for ARM.
...
We have had several bugs propagate to Flutter end-users due to our lack of testing of
AOT Assembly snapshots on ARM (SIMARM_X64 in particular), causing reverts of SDK commits
and disrupting the Dart -> Flutter roll.
This leverages our custom ELF loader to load the generated ELF objects, which cannot be
loaded by dlopen() because they are marked with the ARM ABI.
For example, see:
- https://github.com/flutter/flutter/issues/40114
- https://github.com/flutter/flutter/issues/41228
Also do some tree-shaking of the snapshot writers for dart_precompiled_runtime.
Fixes https://github.com/dart-lang/sdk/issues/38433 .
Change-Id: I5990769c623b8a13131b1848349af2c0a026272b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118569
Reviewed-by: Clement Skau <cskau@google.com >
Reviewed-by: Alexander Thomas <athom@google.com >
Commit-Queue: Samir Jindel <sjindel@google.com >
2019-09-25 17:09:16 +00:00
Ben Konyi
103d54b304
Revert "[ VM ] Update embedding API to perform Platform initialization"
...
This reverts commit 729099cc5b .
Reason for revert: Causing crashes in google3 after roll (b/270314587).
Original change's description:
> [ VM ] Update embedding API to perform Platform initialization
>
> Platform::Init (now Platform::InitOnce) was only being called directly
> from the CL embedder and could not be invoked via any path in the embedding
> API. Platform::InitOnce is now invoked in both dart::bin::BootstrapDartIo and
> dart::embedder::InitOnce.
>
> Fixes https://github.com/dart-lang/sdk/issues/37586
>
> Change-Id: I594908895c19e3058f707f920e265e79ca4cecd7
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117591
> Commit-Queue: Ben Konyi <bkonyi@google.com >
> Reviewed-by: Zach Anderson <zra@google.com >
TBR=bkonyi@google.com ,zra@google.com ,kpozin@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I23253631e13d703e9e5384f9ec4ff6b79ef4ef21
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118643
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2019-09-24 20:43:20 +00:00
Samir Jindel
362ef8e67c
[vm/aot] Add a custom ELF loader in dart_precompiled_runtime.
...
Also switch some CQ bots using blobs to ELF. Once all embedders have migrated, we will remove blobs
support entirely.
Change-Id: Ie5e8c1187ad6c1af362b5715daafd3641bc8cc0e
Cq-Include-Trybots:luci.dart.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-bare-linux-release-simarm-try,vm-kernel-precomp-mac-debug-simarm_x64-try,vm-kernel-precomp-mac-release-simarm64-try,vm-kernel-precomp-win-release-x64-try,vm-kernel-precomp-android-release-arm-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116620
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-09-24 15:03:19 +00:00
Clement Skau
f546362691
[SDK] Adds dart2exe to create standalone executables.
...
Tested:
./tools/build.py --arch x64 --mode release --verbose create_sdk copy_gen_kernel_snapshot copy_dart2aot
./tools/build.py --arch x64 --mode product --verbose copy_gen_snapshot copy_dartaotruntime
cp -r out/ProductX64/dart-sdk/bin/{dartaotruntime,utils/} out/ReleaseX64/dart-sdk/bin/
out/ReleaseX64/dart-sdk/bin/dart2native ~/src/hello_world.dart
~/tmp/hello_world.exe
dart tools/bots/aot_smoke_tests.dart
python tools/test.py -n dartkp-linux-release-x64 vm/dart/run_appended_aot_snapshot_test
Change-Id: I149fcd18405cdf0a87b8f4b4072c0f0e8f98c067
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117140
Commit-Queue: Clement Skau <cskau@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-09-23 12:00:08 +00:00
Ben Konyi
729099cc5b
[ VM ] Update embedding API to perform Platform initialization
...
Platform::Init (now Platform::InitOnce) was only being called directly
from the CL embedder and could not be invoked via any path in the embedding
API. Platform::InitOnce is now invoked in both dart::bin::BootstrapDartIo and
dart::embedder::InitOnce.
Fixes https://github.com/dart-lang/sdk/issues/37586
Change-Id: I594908895c19e3058f707f920e265e79ca4cecd7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117591
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
2019-09-20 18:26:19 +00:00
Tamir Duberstein
4c666569b5
Reland "[fuchsia] migrate from ioctls to FIDL"
...
This is a reland of 085f81224a
Original change's description:
> [fuchsia] migrate from ioctls to FIDL
>
> Bug: https://bugs.fuchsia.dev/p/fuchsia/issues/detail?id=6250
> Change-Id: If2756bca0b226bfe8e89b4c793933abac540801e
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117620
> Commit-Queue: Zach Anderson <zra@google.com >
> Auto-Submit: Tamir Duberstein <tamird@google.com >
> Reviewed-by: Zach Anderson <zra@google.com >
> Reviewed-by: Chinmay Garde <chinmaygarde@google.com >
Bug: https://bugs.fuchsia.dev/p/fuchsia/issues/detail?id=6250
Change-Id: Ifbaa12e920088c74a1946cc258533e0fb9d85840
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117960
Commit-Queue: Zach Anderson <zra@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
2019-09-19 22:58:54 +00:00
asiva
7c1821c4aa
[NNBD/VM] Restructure VM patch files for the NNBD dart sdk split
...
- Move all VM patch files from the lib directory to
sdk/lib/_internal/vm/lib
- Move all VM patch files from the bin directory to
sdk/lib/_internal/vm/bin
- Fixed paths for above patch files in libraries.yaml file.
- Created copies of these patch files in sdk_nnbd directory
- Cleaned up *.gni files by removing the unused dart patch files lists.
Change-Id: I3109d22f3b729a073a6b40175a0d29162a455830
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117685
Reviewed-by: Régis Crelier <regis@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
2019-09-19 03:57:30 +00:00
Ben Konyi
108fe9cbcf
Revert "[fuchsia] migrate from ioctls to FIDL"
...
This reverts commit 085f81224a .
Reason for revert: Blocking Dart SDK -> Flutter engine roll
Build failure:
[9/132] CXX obj/third_party/dart/runtime/bin/dart_io_api.socket_base_fuchsia.o
FAILED: obj/third_party/dart/runtime/bin/dart_io_api.socket_base_fuchsia.o
/usr/local/google/home/bkonyi/goma/gomacc ../../fuchsia/toolchain/linux/bin//clang++ -MD -MF obj/third_party/dart/runtime/bin/dart_io_api.socket_base_fuchsia.o.d --target=x86_64-fuchsia --sysroot ../../fuchsia/sdk/linux/arch/x64/sysroot -DDART_IO_ROOT_CERTS_DISABLED -DUSE_OPENSSL=1 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS -D_DEBUG -DTARGET_ARCH_X64 -DNDEBUG -DFUCHSIA_SDK -DTARGET_OS_FUCHSIA -I../../third_party/dart/runtime -I../../third_party -I../.. -Igen -I../../third_party/dart/runtime/include -I../../third_party/dart/runtime -I../../third_party/dart/runtime/include -I../../fuchsia/sdk/linux/pkg/fdio/include -I../../third_party/zlib -I../../third_party/boringssl/src/include -Igen/build/fuchsia/fidl -I../../fuchsia/sdk/linux/pkg/fidl_cpp/include -I../../fuchsia/sdk/linux/pkg/fidl_cpp_sync/include -I../../fuchsia/sdk/linux/pkg/fidl_cpp_base/include -I../../fuchsia/sdk/linux/pkg/fidl_base/include -I../../fuchsia/sdk/linux/pkg/fit/include -I../../fuchsia/sdk/linux/pkg/fidl-async/include -I../../fuchsia/sdk/linux/pkg/async/include -I../../fuchsia/sdk/linux/pkg/fidl/include -I../../fuchsia/sdk/linux/pkg/zx/include -I../../fuchsia/sdk/linux/pkg/async-default/include -Igen/build/fuchsia/fidl -Igen/build/fuchsia/fidl -Igen/build/fuchsia/fidl -Igen/build/fuchsia/fidl -Igen/build/fuchsia/fidl -fno-strict-aliasing -m64 -march=x86-64 -fcolor-diagnostics -Wall -Wextra -Wendif-labels -Werror -Wno-missing-field-initializers -Wno-unused-parameter -fvisibility=hidden -Wheader-hygiene -Wstring-conversion -Wnewline-eof -Wthread-safety -Wno-implicit-int-float-conversion -O0 -g2 -Werror -Wall -Wextra -Wno-unused-parameter -Wno-unused-private-field -Wnon-virtual-dtor -Wvla -Wno-conversion-null -Woverloaded-virtual -Wno-comments -g3 -ggdb3 -fno-rtti -fno-exceptions -Wimplicit-fallthrough -O3 -fno-sanitize=safe-stack -fvisibility-inlines-hidden -std=c++17 -fno-rtti -fno-exceptions -c ../../third_party/dart/runtime/bin/socket_base_fuchsia.cc -o obj/third_party/dart/runtime/bin/dart_io_api.socket_base_fuchsia.o
../../third_party/dart/runtime/bin/socket_base_fuchsia.cc:13:10: fatal error: 'lib/sys/cpp/service_directory.h' file not found
#include <lib/sys/cpp/service_directory.h>
Original change's description:
> [fuchsia] migrate from ioctls to FIDL
>
> Bug: https://bugs.fuchsia.dev/p/fuchsia/issues/detail?id=6250
> Change-Id: If2756bca0b226bfe8e89b4c793933abac540801e
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117620
> Commit-Queue: Zach Anderson <zra@google.com >
> Auto-Submit: Tamir Duberstein <tamird@google.com >
> Reviewed-by: Zach Anderson <zra@google.com >
> Reviewed-by: Chinmay Garde <chinmaygarde@google.com >
TBR=zra@google.com ,chinmaygarde@google.com ,tamird@google.com ,stijlist@google.com ,tkilbourn@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: https://bugs.fuchsia.dev/p/fuchsia/issues/detail?id=6250
Change-Id: I0adfdd3657e7c291afff7fad6b25f165d140f33f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117926
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Ben Konyi <bkonyi@google.com >
2019-09-18 22:51:31 +00:00
Ryan Macnak
7305ae6c35
Revert "Update BoringSSL to 4dfd5af70191b068aebe567b8e29ce108cee85ce."
...
This reverts commit 93f1324449 .
Reason for revert: asm build failure for ia32 mac (e.g., simarm)
Original change's description:
> Update BoringSSL to 4dfd5af70191b068aebe567b8e29ce108cee85ce.
>
> Update usage of PKCS12_parse to PKCS12_get_key_and_certs, since the former changed behavior when the PKCS12 has no private key.
>
> Change-Id: I040c1a17e2994ac66cf03ad1efa80e423136cdbd
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116828
> Reviewed-by: Jonas Termansen <sortie@google.com >
> Reviewed-by: Zach Anderson <zra@google.com >
> Commit-Queue: Ryan Macnak <rmacnak@google.com >
TBR=sortie@google.com ,rmacnak@google.com ,zra@google.com
Change-Id: I85e9c4e5bd457b72c7df4986a127c169329c178c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117921
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-09-18 21:38:18 +00:00
Ryan Macnak
93f1324449
Update BoringSSL to 4dfd5af70191b068aebe567b8e29ce108cee85ce.
...
Update usage of PKCS12_parse to PKCS12_get_key_and_certs, since the former changed behavior when the PKCS12 has no private key.
Change-Id: I040c1a17e2994ac66cf03ad1efa80e423136cdbd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116828
Reviewed-by: Jonas Termansen <sortie@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-09-18 20:02:10 +00:00
Samir Jindel
205b90f0de
Take 3 for '[vm/ffi] Implement FFI callbacks on AOT for ELF and Asm snapshots (excl. blobs).'
...
Fixes the changes to assembly snapshot writer in SIMARM_X64 mode. This unfortunately can't be tested until the ELF loader is available.
Take 2 is in patchset 1.
Change-Id: Ib8b067dd4f09dcba3b142705e9cb4dfbf4e3eb53
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117726
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-09-18 14:56:27 +00:00
Tamir Duberstein
085f81224a
[fuchsia] migrate from ioctls to FIDL
...
Bug: https://bugs.fuchsia.dev/p/fuchsia/issues/detail?id=6250
Change-Id: If2756bca0b226bfe8e89b4c793933abac540801e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117620
Commit-Queue: Zach Anderson <zra@google.com >
Auto-Submit: Tamir Duberstein <tamird@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
Reviewed-by: Chinmay Garde <chinmaygarde@google.com >
2019-09-17 22:17:08 +00:00