Alexander Aprelev
8ce78ca107
[vm/msan] Fix msan error triggered when building debug gen_snapshot.
...
Fixes https://github.com/dart-lang/sdk/issues/43433 .
Change-Id: Ia7558251ab7a6115c3e0092ad57011e7e1f42340
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/163722
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Alexander Aprelev <aam@google.com >
2020-09-21 19:42:42 +00:00
Martin Kustermann
3d53df52af
Revert "[vm] Call OSThread::Cleanup() during VM shutdown (as with all other Init/Cleanup functions)"
...
See b/157883819: Custom embedder doesn't correctly join threads that
interacted with Dart API, which causes us to hit the newly added
RELEASE_ASSERT.
This reverts commit ea4b17533c .
Change-Id: I9fec45196646f67ae46efccc2f83a43e8941a626
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149592
Reviewed-by: David Morgan <davidmorgan@google.com >
Commit-Queue: Martin Kustermann <kustermann@google.com >
2020-06-02 13:25:01 +00:00
Martin Kustermann
ea4b17533c
[vm] Call OSThread::Cleanup() during VM shutdown (as with all other Init/Cleanup functions)
...
Change-Id: I3cfa51714247a62fe39951636ca1a75c34f6c95b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149293
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Martin Kustermann <kustermann@google.com >
2020-05-29 08:02:59 +00:00
Ryan Macnak
16253c0a54
[vm] Fix LSAN when used without ASAN.
...
Mostly interesting on Mac, where ASAN does not include LSAN.
Bug: https://github.com/dart-lang/sdk/issues/41811
Change-Id: Icbbe57946a6d3b3406a9e3a6541b6c4958cbfa91
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147685
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2020-05-12 17:38:19 +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
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
Matthew Dempsky
6d5f763952
[vm] Eliminate Mutex/Monitor indirection where possible
...
In many cases, the Mutexes and Monitors have to be marked "mutable"
because they're used to synchronize const accessor methods.
Small text segment improvement for Product builds:
$ size dart.{arm,x64}.{before,after}
text data bss dec hex filename
19726069 409960 392332 20528361 1393ce9 dart.arm.before
19725525 409960 392332 20527817 1393ac9 dart.arm.after
22576021 600376 1782824 24959221 17cd8f5 dart.x64.before
22574821 600376 1782824 24958021 17cd445 dart.x64.after
Change-Id: I68f5cd5ad452044df8bfebd160910496036a3e6b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101745
Commit-Queue: Matthew Dempsky <mdempsky@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2019-05-13 21:17:51 +00:00
Liam Appelbe
924a934fe1
Shrink the stack headroom if the stack is very small
...
Bug: https://github.com/dart-lang/sdk/issues/36100
Change-Id: I9d887e74c7f888dbeebaf02556522d375e30b97f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95703
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Liam Appelbe <liama@google.com >
2019-03-07 17:32:59 +00:00
Liam Appelbe
df59b09756
Fail early if a thread has no stack headroom
...
Bug: https://github.com/dart-lang/sdk/issues/35745
Change-Id: I6a9dff8608385d4dde74a16b6d4dea42fe91460f
Reviewed-on: https://dart-review.googlesource.com/c/95041
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Liam Appelbe <liama@google.com >
2019-03-01 22:34:21 +00:00
Ryan Macnak
06a1e6e9e3
[vm] Enable timeline on Fuchsia even in product mode.
...
On Fuchsia, the timeline is accessed without involving the service isolate or vm-service.
Change-Id: Ia0d4e1ca252604e8fcef466a31e3d2a8b0912251
Reviewed-on: https://dart-review.googlesource.com/c/90100
Reviewed-by: Zach Anderson <zra@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-01-18 00:06:10 +00:00
Ryan Macnak
07f95e7761
Revert "[vm] Enable timeline on Fuchsia even in product mode."
...
This reverts commit 3f7b371f2c .
Reason for revert: Some modes failing to find new constant?
Original change's description:
> [vm] Enable timeline on Fuchsia even in product mode.
>
> On Fuchsia, the timeline is accessed without involving the service isolate or vm-service.
>
> Change-Id: I0d2351dcadcfc47835732235e1b8fafa8212f883
> Reviewed-on: https://dart-review.googlesource.com/c/89880
> Reviewed-by: Zach Anderson <zra@google.com >
> Commit-Queue: Ryan Macnak <rmacnak@google.com >
TBR=rmacnak@google.com ,alexmarkov@google.com ,zra@google.com ,asiva@google.com
Change-Id: Ic03a78d14821e0361d54587f1f7510bc9ebfef1c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/89942
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-01-17 00:39:39 +00:00
Ryan Macnak
3f7b371f2c
[vm] Enable timeline on Fuchsia even in product mode.
...
On Fuchsia, the timeline is accessed without involving the service isolate or vm-service.
Change-Id: I0d2351dcadcfc47835732235e1b8fafa8212f883
Reviewed-on: https://dart-review.googlesource.com/c/89880
Reviewed-by: Zach Anderson <zra@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-01-16 22:55:51 +00:00
Vyacheslav Egorov
a9ce969e53
[vm] Decouple growable_array.h and zone.h from thread.h
...
- Introduce a slimmed down version of thread.h, which just depends on the
Zone and StackResource.
- Introduce a layering check that would prevent the coupling in the future.
This is the first step towards decoupling compiler from runtime.
There are multiple reasons to introduce the decoupling but the main
reason currently is to introduce a controlled surface through which
compiler reaches into runtime to catch any places where runtime word size
might influence the compiler and then enable building compiler that
targets 32-bit runtime but is embedded into a 64-bit runtime.
Issue https://github.com/dart-lang/sdk/issues/31709
Change-Id: Id63ebbaddca55dd097298e51c90d957a73fa476e
Reviewed-on: https://dart-review.googlesource.com/c/87182
Commit-Queue: Vyacheslav Egorov <vegorov@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-01-11 20:47:10 +00:00
Ben Konyi
07852532e3
[ VM ] Additional cleanup in Dart_Initialize and Dart_Cleanup
...
Change-Id: I6dc02b3d9de16cc176eb97613bc0c7f0bb9b16eb
Reviewed-on: https://dart-review.googlesource.com/77013
Commit-Queue: Ben Konyi <bkonyi@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Auto-Submit: Ben Konyi <bkonyi@google.com >
2018-09-28 23:18:59 +00:00
Ben Konyi
3c4c62d79a
Reland "[VM] Dart_Initialize no longer crashes after Dart_Cleanup"
...
This is a reland of 519ee905f9
Original change's description:
> [VM] Dart_Initialize no longer crashes after Dart_Cleanup
>
> Change-Id: I3cfdab9553aad045f024b6f9aec0b40b08234007
> Reviewed-on: https://dart-review.googlesource.com/75786
> Reviewed-by: Ryan Macnak <rmacnak@google.com >
> Commit-Queue: Ben Konyi <bkonyi@google.com >
Change-Id: Icdd901bf1ab0b675cc5f1497061a2b7b8a05d956
Reviewed-on: https://dart-review.googlesource.com/76561
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
2018-09-26 17:54:45 +00:00
Ben Konyi
b6284b41e3
Revert "[VM] Dart_Initialize no longer crashes after Dart_Cleanup"
...
This reverts commit 519ee905f9 .
Reason for revert: Seeing multiple crashes on Windows
Original change's description:
> [VM] Dart_Initialize no longer crashes after Dart_Cleanup
>
> Change-Id: I3cfdab9553aad045f024b6f9aec0b40b08234007
> Reviewed-on: https://dart-review.googlesource.com/75786
> Reviewed-by: Ryan Macnak <rmacnak@google.com >
> Commit-Queue: Ben Konyi <bkonyi@google.com >
TBR=bkonyi@google.com ,rmacnak@google.com ,zra@google.com
Change-Id: I33ad79dbc3fcf44f93612ff63bd2d8431f6067c8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/76342
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2018-09-25 02:17:37 +00:00
Ben Konyi
519ee905f9
[VM] Dart_Initialize no longer crashes after Dart_Cleanup
...
Change-Id: I3cfdab9553aad045f024b6f9aec0b40b08234007
Reviewed-on: https://dart-review.googlesource.com/75786
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2018-09-25 01:20:24 +00:00
Ryan Macnak
c2628192a2
[vm] Use C++11 thread_local instead of platform TLS for Thread::Current().
...
Allows the C compiler more freedom to optimize.
Change-Id: I274f5b6c4f7bfb152ba9d3432c9ae7ecc550c6d9
Reviewed-on: https://dart-review.googlesource.com/63270
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-07-11 23:52:43 +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
Ryan Macnak
d9c3190e44
[vm] Remove some bin -> vm includes.
...
Change-Id: Id304de9618a299a201b946a901a54352772f56fb
Reviewed-on: https://dart-review.googlesource.com/48704
Reviewed-by: Siva Annamalai <asiva@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-03-28 23:16:09 +00:00
Ryan Macnak
bd06ffc2c6
[vm] Check for mis-matched thread type in OSThread TLS destructor.
...
Change-Id: I1d878d4d31877749cf47ddd3ef973386592fd714
Reviewed-on: https://dart-review.googlesource.com/42104
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
2018-02-16 23:20:37 +00:00
Ryan Macnak
d01d0ea8e6
[vm] Check for stack headroom before starting a hot reload.
...
Split up the StackOverflow runtime entry.
Bug: https://github.com/dart-lang/sdk/issues/31578
Change-Id: Ibe26101db1651d6e776c3da5fde6b44fd27cd00e
Reviewed-on: https://dart-review.googlesource.com/27414
Reviewed-by: Zach Anderson <zra@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2017-12-08 18:07:31 +00:00
Ryan Macnak
b85a7fecd0
Reapply "[vm] Prefer stack bounds from the system thread library for overflow checks."
...
Mark some profiler tests on Windows as failing.
Bug: https://github.com/dart-lang/sdk/issues/31137
Change-Id: I46a5d4838443e5cfdac6043ea8dcfeb3d05d4823
Reviewed-on: https://dart-review.googlesource.com/14920
Reviewed-by: Zach Anderson <zra@google.com >
2017-10-18 21:15:49 +00:00
Dmitry Stefantsov
a227b168da
Revert "Reapply "[vm] Prefer stack bounds from the system thread library for overflow checks.""
...
This reverts commit 5a022b9db6 .
The reverted CL caused some redness on some vm and vm-precomp bots.
TBR=rmacnak@google.com
Change-Id: I9be670f3c3e341ec6d95082f288bc569834e38c7
Reviewed-on: https://dart-review.googlesource.com/13460
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Karl Klose <karlklose@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2017-10-12 07:32:30 +00:00
Ryan Macnak
5a022b9db6
Reapply "[vm] Prefer stack bounds from the system thread library for overflow checks."
...
Fix accounting of guard pages to move the stack limit up instead of down.
Change-Id: I2f6577a12cf95707c186884f0bd3def03eac12ed
Reviewed-on: https://dart-review.googlesource.com/13381
Reviewed-by: Zach Anderson <zra@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2017-10-12 02:17:11 +00:00
Ryan Macnak
6ecf6dd0a3
Revert "[vm] Prefer stack bounds from the system thread library for overflow checks."
...
This reverts commit af251ddfec .
Reason for revert: Crashes on Windows.
Original change's description:
> [vm] Prefer stack bounds from the system thread library for overflow checks.
>
> Before this change, we would assume all stacks have the size the VM specifies for threads it creates, but this won't be accurate for the initial thread or threads created by the embedder.
>
> Change-Id: I6605a88d6666a6f9d47fbe047d3fdd02aa22c80a
> Reviewed-on: https://dart-review.googlesource.com/10209
> Reviewed-by: Zach Anderson <zra@google.com >
TBR=rmacnak@google.com ,zra@google.com
Change-Id: I96eaccdc8edf6e3d319827a63d168534bad0518e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/13106
Reviewed-by: Ryan Macnak <rmacnak@google.com >
2017-10-11 21:17:28 +00:00
Ryan Macnak
af251ddfec
[vm] Prefer stack bounds from the system thread library for overflow checks.
...
Before this change, we would assume all stacks have the size the VM specifies for threads it creates, but this won't be accurate for the initial thread or threads created by the embedder.
Change-Id: I6605a88d6666a6f9d47fbe047d3fdd02aa22c80a
Reviewed-on: https://dart-review.googlesource.com/10209
Reviewed-by: Zach Anderson <zra@google.com >
2017-10-11 19:35:44 +00: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
a1bcf051d8
clang-format runtime/vm
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org/2481873005 .
2016-11-08 13:54:47 -08:00
Florian Schneider
8cd73fd94c
Revert "Add new atomic operations and use them in two places."
...
This reverts commit 27863288db .
Cross ARM and Windows build failing.
TBR=rmacnak@google.com ,
Review URL: https://codereview.chromium.org/2178693002 .
2016-07-22 15:54:24 -07:00
Florian Schneider
27863288db
Add new atomic operations and use them in two places.
...
1. Setting the IC data array. This may have caused corrupt IC data seen by the
background compiler when cloning IC data.
2. Reading the thread_interrupt_disabled_ flag. This was reported as a race with TSAN.
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org/2176803003 .
2016-07-22 15:40:54 -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
Zach Anderson
5f59a954f8
Uses an open thread handle as the ThreadJoinId on Windows.
...
Also:
- Reaps exited threads in the thread pool before putting
a thread on the idle list so that a new arriving task
isn't blocked on a supposedly idle thread in the middle
of a join.
- Stops trying to join eventhandler threads on
Windows. Now that we're using the correct exit() call,
we probably don't have to worry about exit code pollution,
so joining the threads is unnecessary.
related #26400
R=asiva@google.com , iposva@google.com
Review URL: https://codereview.chromium.org/1978153002 .
2016-05-17 13:18:13 -07:00
John McCutchan
6302c1cc41
Add API to set thread name
...
BUG=
R=chinmaygarde@google.com , rmacnak@google.com
Review URL: https://codereview.chromium.org/1851953002 .
2016-04-04 07:12:57 -07:00
John McCutchan
c65114b6b4
Timeline API fixes for Flutter
...
API changes:
- Remove isolate specific Timeline APIs.
- Remove Dart_EmbedderTimelineGetTimeline callback.
- Add Dart_TimelineEvent so that arbitrary trace events can be added.
Internal changes:
- Remove isolate specific streams which were never used or controllable from outside the VM.
R=rmacnak@google.com
Review URL: https://codereview.chromium.org/1811613002 .
2016-03-16 12:18:46 -07:00
John McCutchan
e2e7af1229
Remove more feature in product mode
...
- Remove Timeline.
- Remove more vmservice code.
- Remove AST printing.
- Remove IL printing.
- Remove profiler.
- Remove thread interrupter.
- Remove disassembler.
- Remove Library::CheckFunctionFingerprints.
- Update test status files for product mode.
Size of dart_bootstrap before: 5287631
Size of dart_bootstrap after: 5112783
Reduction in size: 174848 bytes.
Total reduction in size (382734 + 174848): 557582 bytes.
R=rmacnak@google.com
Review URL: https://codereview.chromium.org/1678203002 .
2016-02-09 08:45:32 -08:00
Zachary Anderson
18929970a0
Fixes for OSThread creation shutdown race.
...
Also, backs out bad change to the thread pool. The real fix is to
move the disable of OSThread creation until after the thread pool
shuts down.
R=asiva@google.com
Review URL: https://codereview.chromium.org/1557033002 .
2016-01-04 15:22:02 -08:00
Zachary Anderson
a6818de006
Thread fixes for shutdown.
...
- Don't disable thread creation until isolates have shutdown.
- A thread-pool thread may try to start up after thread creation has
been disabled. We must reap the Worker objects for these threads.
- A thread may try to start up after OSThread::thread_list_lock_ has
been destroyed. Detect this.
R=asiva@google.com
Review URL: https://codereview.chromium.org/1555643002 .
2015-12-30 15:01:33 -08:00
Siva Annamalai
b40775549f
Fix for issue 25236
...
- Ensure that no new OSThreads are created once the VM is in shutdown mode
- Do not query thread_list_head_ without a lock (this leads to the race which causes two threads to delete the lock and TLS at the same time)
BUG=25236
R=zra@google.com
Review URL: https://codereview.chromium.org/1537543002 .
2015-12-18 10:16:28 -08:00
Florian Schneider
59fd6c8397
VM: Small clean up and const-ness fix for Thread/OSThread constants.
...
BUG=
R=srdjan@google.com
Review URL: https://codereview.chromium.org/1482243006 .
2015-12-02 12:30:12 +01:00
Zachary Anderson
618d4ee9b7
Thread and Timeline fixes for Mojo.
...
Creates an OSThread in OSThread::Current() if a thread doesn't
already have one.
Also removes the setup of an unneeded StackZone from a Timeline API
function.
BUG=
Review URL: https://codereview.chromium.org/1483113002 .
2015-12-01 10:52:19 -08:00
Siva Annamalai
569b3f77ee
Copy the passed in name string into the os_thread structure and delete it in the destructor.
...
R=iposva@google.com
Review URL: https://codereview.chromium.org/1475863002 .
2015-11-25 09:23:08 -08:00
Siva Annamalai
9e19d236ca
- Add an OSThread structure which is the generic TLS structure for all C++
...
fields in a thread (i.e fields that are not Dart VM related)
- Split the Thread structure to be a pure Dart per thread structure and add
a pointer to os_thread which points to the OSThread structure
- Change Schedule/UnSchedule to set the Dart Thread structure as the TLS of
the thread when it is inside the Dart world and reset the TLS back to the
OSThread strcuture when is exits the Dart World.
- Moved the stack_base and few stack size related functions to OSThread from Isolate
R=johnmccutchan@google.com , zra@google.com
Review URL: https://codereview.chromium.org/1439483003 .
2015-11-19 13:45:10 -08:00