Commit Graph

48 Commits

Author SHA1 Message Date
Alexander Markov c3b5939965 [vm] Remove --limit-ints-to-64-bits option and old _Bigint class
Closes https://github.com/dart-lang/sdk/issues/33306

Change-Id: I7088d8b7143edbe24f5cefe4be037ad2006e0625
Reviewed-on: https://dart-review.googlesource.com/58101
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2018-06-04 20:10:40 +00:00
Ankur Mittal f50873d345 [fuchsia] Renaming component FIDL to fuchsia.sys.
Bug: https://fuchsia.atlassian.net/browse/CP-39
Change-Id: Id66157f592a005d555d6f406e56a75a8cf6aeb48
Reviewed-on: https://dart-review.googlesource.com/57160
Reviewed-by: Zach Anderson <zra@google.com>
2018-05-30 14:48:59 +00:00
P.Y. Laligand 499c25d886 [fuchsia] Update FIDL include paths.
Change-Id: I42b0f0acc8385d567971c044bb31f9348e982c44
Reviewed-on: https://dart-review.googlesource.com/55503
Reviewed-by: Zach Anderson <zra@google.com>
2018-05-16 20:41:04 +00:00
Ryan Macnak 265ab831b6 [vm] Partial fixes for LTO.
Change-Id: Ic867777a7fc5df6631ce11030195d1323d7111ed
Reviewed-on: https://dart-review.googlesource.com/52983
Reviewed-by: Zach Anderson <zra@google.com>
2018-04-30 19:23:58 +00:00
Adam Barth b20bab56a0 [fuchsia] Update timezone service integration
We now use the usual ConnectToEnvironmentService instead of going
through the subtle variant. Also, we don't leak the timezone string
anymore (at the cost of not dealing with timezone changes properly).

Change-Id: I997f6b74fc4d9186d5ffbbc8bbd3248712d3e8f6
Reviewed-on: https://dart-review.googlesource.com/50843
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Adam Barth <abarth@google.com>
2018-04-12 03:21:41 +00:00
Ian McKellar 477a773cdb [fidl] Port Dart runtime to FIDL2.
Change-Id: I0423c17514027b282856f5796a550ceaa3b66baf
Reviewed-on: https://dart-review.googlesource.com/48840
Reviewed-by: Zach Anderson <zra@google.com>
Reviewed-by: Adam Barth <abarth@google.com>
2018-03-30 05:23:36 +00:00
Adam Barth 3c6961fcc2 [fuchsia] Update to the FIDL2 String API
Change-Id: Ie7dc0ee3236587c9e86fba862c9ae2275f8e44dc
Reviewed-on: https://dart-review.googlesource.com/46200
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Adam Barth <abarth@google.com>
2018-03-12 22:58:29 +00:00
Ryan Macnak 558a931409 [vm] Move some string utils from runtime/vm to runtime/platform.
Change-Id: I552086445a7e07792f9da85afa5edf23b6c450d5
Reviewed-on: https://dart-review.googlesource.com/44402
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2018-03-01 02:07:46 +00:00
Adam Barth ec97188f7a [fuchsia] Rename fidl namespace to f1dl
This change prepares for the migrationt to FIDL2.

Change-Id: Ia9acbc3e7c77d6c3bec226543ab9a21f6531ed45
Reviewed-on: https://dart-review.googlesource.com/43495
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
2018-02-23 22:22:30 +00:00
Adam Barth b447a3989c [fuchsia] Update FIDL1 C++ bindings to match FIDL2 interface
This change will make it easier to transition to FIDL2.

Change-Id: Ibd69f9cb60687630b81306d5931134916d4d1d84
Reviewed-on: https://dart-review.googlesource.com/37640
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Alexander Aprelev <aam@google.com>
2018-01-30 21:39:52 +00:00
Adam Barth 85b73ddd40 [fuchsia] Migrate from zx_time_get to zx_clock_get
Change-Id: I498d751037ae240cb639d30adc125e0b14d756ef
Reviewed-on: https://dart-review.googlesource.com/36321
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
2018-01-22 22:46:35 +00:00
Andrew Davies fcc6836b88 [dart vm] Add in call to time svc for UTC offset
Dart VM will now call the time service to get the UTC offset.

Change-Id: Iec5f1a375d1fbc00c534eed10c8f1ba6b01e87a2
Reviewed-on: https://dart-review.googlesource.com/20824
Reviewed-by: Zach Anderson <zra@google.com>
2017-12-20 21:59:13 +00:00
Alexander Markov 59cdc65dc7 [VM] Relax constraints for integer literals according to int64 spec
Handling of integer literals is corrected according to the informal spec
for the fixed-size integers:

https://github.com/dart-lang/sdk/blob/master/docs/language/informal/int64.md

This change allows unsigned 64-bit hexadecimal literals and MIN_INT64
to be used when running on the VM with --limit-ints-to-64-bits option.

Change-Id: Ied7a7688768bcf4ff40ab5b499dd71622d2c3948
Reviewed-on: https://dart-review.googlesource.com/19400
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2017-11-09 16:58:38 +00:00
George Kulakowski 7800d2a995 Rename Magenta to Zircon, along with related abbreviations
Change-Id: Ic4215ceb00f5a60d21ec1398fd398a9f78a9eb94
Reviewed-on: https://dart-review.googlesource.com/6100
Reviewed-by: Zach Anderson <zra@google.com>
2017-09-15 14:54:18 +00:00
Carlo Bernaschina 0cbbeeb288 Restore "Add current rss and embedder name to Observatory"
Made benchmark_test.cc independent from Service by using the
implementation of MaxRSS from bin::Process

Related https://github.com/dart-lang/sdk/commit/ce736d3ef009bf334a92d5b7d354fc0b04805b4f

R=bkonyi@google.com
TBR=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2994223002 .
2017-08-14 17:02:30 -07:00
Carlo Bernaschina 2f5a59e658 Revert "Add current rss and embedder name to Observatory"
This reverts commit ce736d3ef0.

TBR=zra@google.com

Review-Url: https://codereview.chromium.org/2999933002 .
2017-08-14 15:45:13 -07:00
Carlo Bernaschina ce736d3ef0 Add current rss and embedder name to Observatory
Moved the responsibility to provide MaxRSS and CurrentRSS from the VM to
the embedder.

The embedder can opt-it by setting a Dart_GetEmbedderInformation
callback using the public Dart_SetEmbedderInformationCallback API.

The implementation of the Dart_GetEmbedderInformation should mandatory
fill the version field and the ones it is able to fill.
The name field must reference a constant C style string, it will not be
freed by the VM code.

R=zra@google.com

Review-Url: https://codereview.chromium.org/2996803002 .
2017-08-14 15:22:46 -07:00
Zachary Anderson 6cd8a79078 VM: Re-format to use at most one newline between functions
R=asiva@google.com

Review-Url: https://codereview.chromium.org/2974233002 .
2017-07-13 08:08:37 -07:00
Zachary Anderson ac16656161 Remove MIPS support
R=asiva@google.com

Review-Url: https://codereview.chromium.org/2858623002 .
2017-06-22 08:49:22 -07:00
Zachary Anderson a834e6dcf3 Update Fuchsia-specific code to use the new MX_ error names
R=zra@google.com

Review-Url: https://codereview.chromium.org/2935483002 .
2017-06-09 13:19:54 -07:00
Zachary Anderson 9779e2db96 [Fuchsia] Calculate RSS using new task stat fields
mem_committed_bytes is deprecated and will go away.

R=zra@google.com

Review-Url: https://codereview.chromium.org/2906943002 .
2017-05-26 15:15:50 -07:00
Martin Kustermann ac8d2056a3 Fix asserts in StackFrameIterator which were effectively disabled
The assertions which tried to assert that we only use
StackFrameIterator to walk frames of the current thread was incorrect.
We already have cases where other threads will walk the stack of the
mutator thread, see below for an example where this can happen.

Thread::VisitObjectPointers was incorrectly passing Thread::Current() to
the StackFrameIterator instead of 'this'.  (Code in thread_registry.cc will
loop over a number of threads and calls VisitObjectPointers on them)

  Mutator thread:

    0  pthread_cond_wait@@GLIBC_2.3.2
    1  dart::Monitor::WaitMicros
    2  dart::Monitor::Wait
    3  dart::MonitorLocker::Wait
    4  dart::ThreadBarrier::Sync
    5  dart::GCMarker::MarkObjects
    6  dart::PageSpace::MarkSweep
    7  dart::Heap::CollectOldSpaceGarbage
    8  dart::Heap::CollectNewSpaceGarbage
    9  dart::Heap::CollectGarbage
    10 dart::DN_HelperObject_<native>
    11 dart::BootstrapNatives::<native>
    <dart frames>

  MarkTask thread:

    1  dart::EntryFrame::VisitObjectPointers
    2  dart::Thread::VisitObjectPointers          <---- Walks mutator thread stack
    3  dart::ThreadRegistry::VisitObjectPointers  <---- Iterates over a number of threads
    4  dart::Isolate::VisitStackPointers
    5  dart::Isolate::VisitObjectPointers
    6  dart::GCMarker::IterateRoots
    7  dart::MarkTask::Run
    8  dart::ThreadPool::Worker::Loop
    9  dart::ThreadPool::Worker::Main
    10 dart::ThreadStart

R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2845053003 .
2017-05-03 10:27:01 +02:00
Zachary Anderson 9ce608e89d [dart:io] Adds ProcessInfo.{max,current}Rss. Adds OS::MaxRSS on Fuchsia.
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2822943002 .
2017-04-17 14:41:40 -07:00
Zach Anderson d42f61155f [fuchsia] Use new mx_deadline_after interface
BUG=
R=zra@google.com

Review-Url: https://codereview.chromium.org/2822833002 .
2017-04-17 13:49:49 -07:00
Ryan Macnak 877284947b Rename TARGET_OS_* to HOST_OS_*.
Like HOST_ARCH_*, HOST_OS_* describes the OS the VM is running on, which may be different from the OS the VM is generating code for during AOT compilation.

Currently we conflate the two when emitting AOT as assembly, and we get away with it because Flutter only uses assembly for targeting iOS and one can only target iOS from a Mac, but we expect to use assembly for Android as well so native tools can unwind Dart frames.

R=zra@google.com

Review-Url: https://codereview.chromium.org/2750843003 .
2017-03-15 13:11:05 -07:00
Ben Konyi 68a102cab2 Fixed tests not having MallocHooks initialized for tests in release mode.
Revert "Revert "Fixed issue in MallocHooks where a MallocHookScope was accidentally removed during a merge, causing a deadlock in the hooks. Also turned off stack trace collection in a test that was timing out as a result of the stack trace collection.""

This reverts commit 1a5b555aa9.

BUG=
R=zra@google.com

Review-Url: https://codereview.chromium.org/2711353003 .
2017-02-24 13:56:06 -08:00
Ben Konyi 1a5b555aa9 Revert "Fixed issue in MallocHooks where a MallocHookScope was accidentally removed during a merge, causing a deadlock in the hooks. Also turned off stack trace collection in a test that was timing out as a result of the stack trace collection."
This reverts commit 44a9a4ede3.

BUG=

Review-Url: https://codereview.chromium.org/2714083002 .
2017-02-23 19:21:00 -08:00
Ben Konyi 44a9a4ede3 Fixed issue in MallocHooks where a MallocHookScope was accidentally removed during a merge, causing a deadlock in the hooks. Also turned off stack trace collection in a test that was timing out as a result of the stack trace collection.
Updated MallocHooks to collect stack traces when memory is allocated.

BUG=
R=johnmccutchan@google.com

Review-Url: https://codereview.chromium.org/2718523003 .
2017-02-23 18:58:50 -08:00
Ben Konyi d4f026c2e0 Revert "Updated MallocHooks to collect stack traces when memory is allocated."
This reverts commit a486a8a26b51dce728373183ab02aeda70e6f2d0.

R=johnmccutchan@google.com
TBR=johnmccutchan@google.com
BUG=

Review-Url: https://codereview.chromium.org/2713803003 .
2017-02-23 13:13:44 -08:00
Ben Konyi 47f0da9cd7 Updated MallocHooks to collect stack traces when memory is allocated.
BUG=
R=johnmccutchan@google.com, zra@google.com

Review-Url: https://codereview.chromium.org/2680213002 .
2017-02-23 12:42:18 -08:00
Zachary Anderson 9b8ce83ef3 Fuchsia: Use new call to get thread CPU time
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2613283002 .
2017-01-07 14:45:34 -08:00
Ryan Macnak e60c9d52b6 Fuchsia: Enable newly working socket tests; use MX_CLOCK_UTC.
R=kulakowski@google.com, zra@google.com

Review URL: https://codereview.chromium.org/2536943002 .
2016-11-28 15:50:54 -08:00
Ryan Macnak 8d57e3d540 Enable SecureSocket on Fuchsia using BoringSSL and compiled-in certificates from dart-sdk/root_certificates.
Implement OS::CurrentTimeMicros in terms of gettimeofday.

R=asiva@google.com

Review URL: https://codereview.chromium.org/2519133005 .
2016-11-23 10:48:18 -08:00
Ryan Macnak 171da0489f Fuchsia sockets:
- Remove CheckConnect.
  - Enable NODELAY.
  - Add testSimpleReadWriteClose to hello_fuchsia_test.

Add stub implementation of OS::MaxRSS so Observatory can load without crashing the target VM.

R=asiva@google.com

Review URL: https://codereview.chromium.org/2523133002 .
2016-11-22 16:52:21 -08:00
Zachary Anderson a1bcf051d8 clang-format runtime/vm
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2481873005 .
2016-11-08 13:54:47 -08:00
Adam Barth 823bb1a0a2 Remove use of the deprecated mx_current_time Fuchsia syscall
BUG=
R=abarth@google.com, zra@google.com

Review URL: https://codereview.chromium.org/2466003002 .
2016-11-01 14:01:04 -07:00
Zachary Anderson c9537f56e4 runtime: Use Linux timezone implementation on Fuchsia
BUG=
R=zra@google.com

Review URL: https://codereview.chromium.org/2435273003 .
2016-10-21 23:42:07 -07:00
Ryan Macnak 5c06127e2d Remove unused external typed data factories.
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2276803002 .
2016-08-25 10:29:17 -07:00
Zachary Anderson b94b0c06ef [Fuchsia] Fix build
Review URL: https://codereview.chromium.org/2257653002 .
2016-08-17 15:28:49 -07:00
James Robinson fa1bbc98cf [fuchsia] Use sysconf to get number of processors
We should be using standard interfaces to access information like
the nunber of processors.

R=zra@google.com

Review URL: https://codereview.chromium.org/2244253004 .
2016-08-15 15:21:36 -07:00
Zachary Anderson 31c98f0191 Fuchsia: Paralellize VM test wrapper. Update statuses for Fuchsia update
R=asiva@google.com

Review URL: https://codereview.chromium.org/2197773004 .
2016-07-29 14:20:46 -07:00
Zachary Anderson 74bbc7f55f Fuchsia: Make some more VM tests pass
R=asiva@google.com

Review URL: https://codereview.chromium.org/2189973003 .
2016-07-29 08:07:25 -07:00
Zachary Anderson 43668b55c7 Fuchsia: Make fuchsia_test use snapshots
R=asiva@google.com

Review URL: https://codereview.chromium.org/2171453002 .
2016-07-21 08:36:14 -07:00
Zachary Anderson b30da81483 Fuchsia: Hello, Fuchsia!
R=asiva@google.com

Review URL: https://codereview.chromium.org/2158673002 .
2016-07-18 10:35:03 -07:00
Zachary Anderson cf5eca5416 Fuchsia: Fixes for Debug build
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2154713004 .
2016-07-15 13:14:32 -07:00
Zachary Anderson 8ccb85e38e [fuchsia] Update to new spelling of magenta syscalls
These now have an mx_ prefix instead of a _magenta prefix as of
https://fuchsia.googlesource.com/magenta/+/937bde71d2

R=zra@google.com

Review URL: https://codereview.chromium.org/2154443002 .
2016-07-14 14:31:07 -07:00
Zachary Anderson 64e9017629 Fuchsia: Platform specific calls needed to Initialize and Cleanup VM.
fuchsia_test now succeeds.

R=asiva@google.com

Review URL: https://codereview.chromium.org/2148533002 .
2016-07-13 09:12:28 -07:00
Zachary Anderson a503570e3a Fuchsia: Initial check-in.
Instructions to build and run are in README.fuchsia.

R=asiva@google.com

Review URL: https://codereview.chromium.org/2117593002 .
2016-07-01 12:42:05 -07:00