Commit graph

447 commits

Author SHA1 Message Date
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
Siva Annamalai
42e4370818 Adjust status files for some test failures.
TBR

BUG=

Review URL: https://codereview.chromium.org/2530783002 .
2016-11-23 22:54:29 -08:00
Siva Annamalai
ae7c951b6b Fix status file.
TBR

BUG=

Review URL: https://codereview.chromium.org/2527613004 .
2016-11-23 16:44:52 -08:00
Siva Annamalai
22ac70a563 Fix status file
- Some DBC tests (regexp, field guards) was turned on inadvertantly
 - Skip cc/Profiler_InliningIntervalBoundry on release builds
  (need to figure how to handle the inlining difference between
   debug/release builds)

BUG=

Review URL: https://codereview.chromium.org/2528793003 .
2016-11-23 16:34:38 -08:00
Siva Annamalai
501720c644 Retry landing cl for issue with TSAN.
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2525103003 .
2016-11-23 15:40:26 -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
Siva Annamalai
7bbdbe3541 Skip multiple references to fuchsia test.
Review URL: https://codereview.chromium.org/2519133007 .
2016-11-23 09:09:12 -08:00
Siva Annamalai
373aa1980f Skip Fuchsia test on non VM runtimes.
BUG=#27867

Review URL: https://codereview.chromium.org/2530613002 .
2016-11-23 09:05:30 -08:00
William Hesse
4bfe727db6 Update status for Firefox 50
BUG=https://github.com/dart-lang/sdk/issues/27873
BUG=https://github.com/dart-lang/sdk/issues/27872
BUG=https://github.com/dart-lang/sdk/issues/27871
BUG=https://github.com/dart-lang/sdk/issues/27867
R=sortie@google.com

Review URL: https://codereview.chromium.org/2526493004 .
2016-11-23 09:49:01 +01: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
Ryan Macnak
b83fb06741 Fuchsia sockets:
- Enable FDUtils::AvailableBytes.
 - Disable Socket::SetNoDelay.
 - Implement Socket::GetRemotePeer same as Linux.
 - Implement Socket::ParseAddress same as Linux.

R=asiva@google.com

Review URL: https://codereview.chromium.org/2522923002 .
2016-11-22 12:49:01 -08:00
William Hesse
dbf8d06eab Update status for hello_fuchsia test on dartium.
BUG=https://github.com/dart-lang/sdk/issues/27867
R=sortie@google.com

Review URL: https://codereview.chromium.org/2517113003 .
2016-11-21 14:14:24 +01:00
Zachary Anderson
14233482d9 Fuchsia: Partial implementation of dart:io sockets
This changes the eventhandler to epoll and adds some code for sockets
to runtime/bin/sockets_fuchsia.cc. It also adds some simple tests
to hello_fuchsia.dart.

R=asiva@google.com

Review URL: https://codereview.chromium.org/2515643004 .
2016-11-20 22:04:14 -08:00
John McCutchan
f0f32a0e29 Map deleted enum values to a sentinel value.
Fixes #27802

BUG=
R=asiva@google.com, rmacnak@google.com

Review URL: https://codereview.chromium.org/2498863002 .
2016-11-15 14:15:36 -08:00
Zachary Anderson
a64272b912 DBC: Fix checked mode stack traces
fixes #27732

R=fschneider@google.com

Review URL: https://codereview.chromium.org/2493353002 .
2016-11-11 21:39:47 -08:00
Siva Annamalai
84ad096687 - Turn on canonicalization verification after a reload in debug mode.
- Rehash the canonical constants table for all new classes, this fixes
  numerous issues found with the canonical verification
  also fixes https://github.com/dart-lang/sdk/issues/26868
- Added issue https://github.com/dart-lang/sdk/issues/27803 and
  https://github.com/dart-lang/sdk/issues/27802 for remaining bugs.

BUG=#26868
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2490233004 .
2016-11-10 16:13:33 -08:00
Ryan Macnak
d8bb15f915 Mark failing DBC tests.
Issue #27731
Issue #27732
Issue #27733

R=zra@google.com

Review URL: https://codereview.chromium.org/2465253007 .
2016-11-02 15:28:57 -07:00
William Hesse
61eee9ee52 Use checked-in .package file for building and testing
Stop creating [build dir]/packages directory with symbolic links.

BUG=https://github.com/dart-lang/sdk/issues/23565
R=rnystrom@google.com

Committed: 5d3e356ca7

Review URL: https://codereview.chromium.org/1746743002 .

Reverted: 6d238ba197
2016-09-16 15:03:18 +02:00
John McCutchan
268082769b Initial status file updates for $hot_reload_rollback
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2207653002 .
2016-08-02 11:03:44 -07:00
Ryan Macnak
585c476973 DBC: Add single stepping check to fast Smi ops.
Issue #26405

R=zra@google.com

Review URL: https://codereview.chromium.org/2189253002 .
2016-07-29 10:03:31 -07:00
Ryan Macnak
f6a320b973 DBC: Implement coverage by adding missing count increments to unoptimized static and instance calls.
These counts also factor into inlining decisions.

R=zra@google.com

Review URL: https://codereview.chromium.org/2187423002 .
2016-07-28 16:43:47 -07:00
Ryan Macnak
3dba3a77c1 DBC: Fix not-stopping/crashing at fast Smi op breakpoints.
When setting a breakpoint at a fast Smi op, replace the fast Smi op instruction with a Nop so we don't skip the following DebugBreak in the Smi case and don't attempt to increment an ICData counter through pool slot 0.

R=zra@google.com

Review URL: https://codereview.chromium.org/2194493002 .
2016-07-28 13:41:22 -07:00
Ryan Macnak
708334c614 DBC: Fix reading locals out of a deopt frame.
R=zra@google.com

Review URL: https://codereview.chromium.org/2176413003 .
2016-07-26 10:36:07 -07:00
Zachary Anderson
53374c3b99 Fuchsia: Build standalone VM. Make it run "Hello, World!".
This CL adds targets to the GN build that build the standalone Dart VM
without the observatory, and with dart:io enabled but with most of the
functionality stubbed out as UNIMPLEMENTED(). It also adds a simple
eventhandler for Fuchsia for implementing Timers.

R=asiva@google.com, johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2168193002 .
2016-07-22 14:00:31 -07:00
Zachary Anderson
2c6449087d DBC: Misc double instructions
- DoubleToSmi
- MathUnary
- MathMinMax

R=fschneider@google.com

Review URL: https://codereview.chromium.org/2162173002 .
2016-07-20 09:46:32 -07:00
Zachary Anderson
43e89ccdd3 DBC: Make unoptimized static calls call through ICData
Isolate reloading works by manipulating ICData. Unoptimized
static calls won't go to the new function after a reload unless
the calls go through the ICData.

R=vegorov@google.com

Review URL: https://codereview.chromium.org/2149993006 .
2016-07-18 10:39:09 -07:00
Zachary Anderson
b43b9bad86 DBC: UnboxedConstantInstr
R=fschneider@google.com

Review URL: https://codereview.chromium.org/2150933008 .
2016-07-15 14:25:40 -07:00
Zachary Anderson
fe2b7b35c4 DBC: Enables unboxed doubles
This CL enables unboxed doubles for simdbc64. Unboxed
doubles are stored in regular dbc registers, which are
really 64-bit stack slots. It also implements binary
and unary double operations and comparisons.

R=vegorov@google.com

Review URL: https://codereview.chromium.org/2120703002 .
2016-07-14 16:05:20 -07:00
John McCutchan
04dc67e2b3 More hot reload status file updates
BUG=

Review URL: https://codereview.chromium.org/2143213002 .
2016-07-12 13:54:16 -07:00
Zachary Anderson
fcf4578c03 Remove STL use from platform/assert.cc
R=asiva@google.com

Review URL: https://codereview.chromium.org/2085703002 .
2016-06-21 12:50:43 -07:00
Ryan Macnak
4c5e9421ff Skip byte_array_test on precompilation.
Review URL: https://codereview.chromium.org/2086693002 .
2016-06-20 15:10:55 -07:00
Zachary Anderson
6e90ca4e0a DBC: Eager deoptimization and CheckSmi instruction.
R=vegorov@google.com

Review URL: https://codereview.chromium.org/2039913006 .
2016-06-09 09:47:56 -07:00
Zachary Anderson
7cd20ac709 Fix status file for asan test no longer crashing
related #26487

Review URL: https://codereview.chromium.org/2037753003 .
2016-06-03 08:50:53 -07:00
Ryan Macnak
ef8baa8760 Add test harness option for app snapshots with unoptimized code.
./tools/test.py -m all -c dart2appjit -r dart_app --use-blobs

Rename 'dart_product' runtime to 'dart_app'.

Rename Dart_PrecompiledJITSnapshotBlob to Dart_CreateAppJITSnapshot and add documentation.

Remove out-of-date scripts in tools/precompilation.

R=fschneider@google.com

Review URL: https://codereview.chromium.org/1992703005 .
2016-05-26 10:37:47 -07:00
Florian Schneider
374baf4979 Remove timeout status for some tests to check if they pass now.
BUG=#24596
R=zra@google.com

Review URL: https://codereview.chromium.org/2015533002 .
2016-05-25 17:35:05 +02:00
Vyacheslav Egorov
655bc90489 Enable optimizer pipeline for DBC.
Most of the infrastructure is fixed to work with DBC stack layout:

- register allocator allocates DBC registers with the limitation that we allocate only 20 registers and bail out if anything needs spilling (there is no use implementing spilling on DBC because registers are memory locations themselves). We should be able to bump number of CPU registers on DBC up to 256 but this requires major surgery in some parts - so I postponed this;
- lazy deoptimization is implemented, eager deoptimization is not - because we don't emit any code that actually requires it. it's a minor change to support it once we have a target;
- stack scanning respects stack maps built by registers allocator;

We bailout from all unsupported instructions.

R=zra@google.com

Review URL: https://codereview.chromium.org/1992963002 .
2016-05-24 14:35:50 +02:00
Ryan Macnak
fa1a40c4ee Dart2JSCompilerStats also failing on ia32 asan.
Review URL: https://codereview.chromium.org/1993073002 .
2016-05-18 16:32:44 -07:00
Ryan Macnak
30a7308dbe Mark vm/cc/Dart2JSCompileAll as failing on ia32 asan.
BUG=http://dartbug.com/26487
R=hausner@google.com

Review URL: https://codereview.chromium.org/1996483002 .
2016-05-18 15:36:19 -07:00
Ryan Macnak
7d3cd143f7 Update status for
./tools/test.py -mall
  ./tools/test.py -mdebug,release --checked
  ./tools/test.py -mrelease,product -cdart2app -rdart_product
  ./tools/test.py -mrelease --checked -cdart2app -rdart_product

Missing
  ./tools/test.py -mdebug -cdart2app -rdart_product
  ./tools/test.py -mdebug --checked -cdart2app -rdart_product

R=asiva@google.com

Review URL: https://codereview.chromium.org/1991543002 .
2016-05-18 12:54:34 -07:00
John McCutchan
48c8ffa7f3 Initial isolate reload support
This is a cut of the work that Todd and I collaborated on in the reload branch.

In this CL, we've dropped the loader port hacks, in other words, on stack reloading in the standalone embedder does not work yet.

- [x] Support for hot reloading of isolate source code
- [x] Unit test harness and many tests
- [x] Service protocol and Observatory support
- [x] Product build does not include support for hot reloading.

R=rmacnak@google.com

Review URL: https://codereview.chromium.org/1965823002 .
2016-05-17 12:19:06 -07:00
Zachary Anderson
a6c686234c DBC: Adds DecodeLoadObjectFromPoolOrThread, enables tests
R=vegorov@google.com

Review URL: https://codereview.chromium.org/1961953003 .
2016-05-09 12:52:36 -07:00
Zachary Anderson
924214d695 Enable code object tests for DBC
R=vegorov@google.com

Review URL: https://codereview.chromium.org/1955473002 .
2016-05-05 13:49:33 -07:00
Zachary Anderson
db86be4901 Fixes and enables FindCodeObject test for dbc
DBC always encodes branches similarly to arm64's far branches. In
particular, the unconditional jump takes a signed 26-bit offset.
This CL just modifies the test to generate enough code to test that
dbc can handle branches the same distance as the other platforms.

R=iposva@google.com

Review URL: https://codereview.chromium.org/1919283003 .
2016-04-26 10:40:28 -07:00
Zachary Anderson
3d7202bad3 DBC: Adds simdbc64 target, adds arm64 arithmetic overflow logic
There were differences between linux gcc, android gcc,
MacOS clang, and 32 vs. 64-bit w.r.t the __builtin
functions for detecting arithmetic overflow. I couldn't get
them all working at the same time. Instead, I removed them,
and changed to always use the inline assembly. This works
in all the configurations above.

This change also adds a simdbc64 target for building simdbc
for 64-bit, and sets up the android targets. simdbc targets
arm, and simdbc64 targets arm64. You can build them with:

$ ./tools/build.py -m release -a simdbc{64} --os=android runtime

R=iposva@google.com

Review URL: https://codereview.chromium.org/1904153003 .
2016-04-25 12:48:34 -07:00
Vyacheslav Egorov
ee0f608ce4 Dart Byte Code interpreter.
This version is Clang/GCC only and does not support Windows because it uses computed goto's.

Only unoptimized mode is supported.

Architecture is described in constants_dbc.h and stack_frame_dbc.h.

R=fschneider@google.com, zra@google.com

Review URL: https://codereview.chromium.org/1858283002 .
2016-04-18 23:02:01 +02:00
Siva Annamalai
8364da0e1b Adjust status files for product mode to skip tests that require checked mode as we do not support the flags --enable_asserts and --enable_type_checks in product mode.
tools/test.py -mproduct -cdart2app -rdart_product

should run clean after this CL

R=rmacnak@google.com

Review URL: https://codereview.chromium.org/1817623003 .
2016-03-21 11:09:38 -07:00
Sigmund Cherem
76a77d8b42 Skip tests in cpsir+checked mode until it is implemented
TBR=sra@google.com

Review URL: https://codereview.chromium.org/1780843002 .
2016-03-09 17:21:49 -08:00
Ryan Macnak
46fea6cfb2 Update status file for some passing tests on MIPS and ARM.
R=regis@google.com

Review URL: https://codereview.chromium.org/1774613002 .
2016-03-07 12:17:27 -08:00
Sigmund Cherem
385f3350c5 Update status of cpsir tests in checked mode: skipping for now, since more than
75% fail for one reason, once we fix that we can triage in more detail.

Review URL: https://codereview.chromium.org/1771893002 .
2016-03-07 10:20:41 -08:00
Ryan Macnak
167616b83e Skip mirror tests more generally for $mode == product instead of $runtime == dart_product.
Reduces failures in tools/test.py -mproduct.

R=asiva@google.com

Review URL: https://codereview.chromium.org/1760043002 .
2016-03-03 10:06:59 -08:00