Commit graph

34687 commits

Author SHA1 Message Date
Kevin Millikin 45004655a1 Mark returns from inside the try of a try/catch as ones that exit the try.
At construction time, jumps from within the try block of a try/catch are
marked as ones that exit the try block.  This is relied on for correctness.
Specifically, it prevents moving code from outside the try into the scope of
the try.

Return jumps were from within the try were not marked because it was
unnecessary.  In the presence of inlining, returns are turned into jumps to a
local join-point continuation.  These jumps must be marked for correctness.

R=asgerf@google.com
BUG=

Review URL: https://codereview.chromium.org/1414043011 .
2015-11-06 09:31:07 +01:00
Søren Gjesse 95bb2159d9 Web Socket compression - take two
Resolve issues with typed data tests and compression.
Uses HeaderValues to parse permessage_deflate option.

Includes changes from https://codereview.chromium.org/1208473005/

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

Committed: 59bb84127b

Reverted: d1e01e205a

Additional fixes for failing tests.

Review URL: https://codereview.chromium.org/1390353005 .
2015-11-06 08:59:02 +01:00
Stephen Adams 9efe59cc02 Fix for 23806 - don't optimize out Array allocation that may throw
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/1431513012 .
2015-11-05 18:11:23 -08:00
Stephen Adams b3a4cc337c dart2js Uri patch: avoid unnecessary code-unit to String conversions
results in:

H.Primitives_stringFromCharCode(C.JSString_methods.codeUnitAt$1("0123456789ABCDEF", $byte & 15)
-->
"0123456789ABCDEF"[$byte & 15]

dart2js does not know how to do this yet.

R=lrn@google.com

Review URL: https://codereview.chromium.org/1420303011 .
2015-11-05 17:55:41 -08:00
Alan Knight 42b9d7b702 Serialize the data argument to History's state-related APIs.
BUG=

Review URL: https://codereview.chromium.org/1414903007 .
2015-11-05 16:23:44 -08:00
pq 82e83bb34d Experimental getDiagnostics request (#24480).
* Adds `getDiagnostics` request with *very* provisional diagnostics payload (primary goal here is to plumb this fully through and iterate).
* Updates codegenerator to skip doc generation for experimental APIs.

Additional context here: https://github.com/dart-lang/sdk/issues/24480.

BUG=24480
R=brianwilkerson@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org/1416093007 .
2015-11-05 15:05:21 -08:00
Terry Lucas 1492a5dedd Return the real error during custom element created failure
TBR=alanknight@google.com

Review URL: https://codereview.chromium.org/1405963015 .
2015-11-05 13:49:47 -08:00
Ryan Macnak ab77310444 Don't register code for CHA or field guard deopt when precompiling.
dart2js ARM -0.5% size

R=srdjan@google.com

Review URL: https://codereview.chromium.org/1430973005 .
2015-11-05 12:55:28 -08:00
Srdjan Mitrovic 720e67ea1a Redo background compilation queues to allocate queue and its element in the C-heap
BUG=
R=asiva@google.com

Review URL: https://codereview.chromium.org/1419533011 .
2015-11-05 12:13:37 -08:00
Kevin Moore 77d4faa6b9 update docs on noSuchMethod
R=floitsch@google.com

Review URL: https://codereview.chromium.org/1412243011 .
2015-11-05 12:10:19 -08:00
Alan Knight 73442c7cce Update Dartium DEPS for https://codereview.chromium.org/1428333002
BUG=

Review URL: https://codereview.chromium.org/1410203004 .
2015-11-05 11:31:03 -08:00
Zachary Anderson 59b9f02307 Add creation message flag to Debugger
Don't send the shutdown event if we never sent the creation event.

BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/1415603013 .
2015-11-05 11:27:40 -08:00
Asger Feldthaus 8568b9e4df dart2js cps: Narrow the receiver mask on InvokeMethod.
Improves tree shaking in cases where we infer better
types than the original type inference.

BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/1407743002 .
2015-11-05 19:45:32 +01:00
Ryan Macnak 165c21026a Add test precompiling dart2js.
R=fschneider@google.com

Review URL: https://codereview.chromium.org/1430993003 .
2015-11-05 10:43:15 -08:00
Stephen Adams 7b48eb2b7f dart2js cps_ir: propagate constant field values
The effect is to remove endianness logic in SHA1.

Mark some single-call methods as @NoInline()

R=asgerf@google.com

Review URL: https://codereview.chromium.org/1408193009 .
2015-11-05 10:40:12 -08:00
Stephen Adams f7a39a6241 Side effect characterization of String.fromCharCode
This allows dart2js to determine 'Primitive_stringFromCharCode' is effect free.

BUG=
R=floitsch@google.com

Review URL: https://codereview.chromium.org/1420273011 .
2015-11-05 10:36:06 -08:00
Asger Feldthaus c861e4d28a dart2js cps: Better side-effect tracking in loops.
This fixes an issue in the bounds checker that made it think a nested
loop had side effects.

In the first pass, the bounds checker would conservatively assume
each loop had side effects, but then mark it as effect-free for the
next pass if it did not see any effects in the loop. For nested loops
however, the "conservative" side effect of the inner loop would prevent
the outer loop from being marked as effect-free.

A separate pass now analysis loops for side effects.

BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/1426633005 .
2015-11-05 19:03:26 +01:00
Ryan Macnak 7e2e9cb949 ARM: Fix double use of IP when storing object fields with large offsets.
TEST=language/large_class_declaration --noopt
R=fschneider@google.com

Review URL: https://codereview.chromium.org/1409733009 .
2015-11-05 09:54:50 -08:00
Srdjan Mitrovic 9dcd1fd076 Background compilation fixes
BUG=
R=hausner@google.com

Review URL: https://codereview.chromium.org/1426513006 .
2015-11-05 09:53:13 -08:00
Konstantin Shcheglov 61ee6dff5f Roll instrumentation log files.
Keep up to 5 old log files.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/1418143006 .
2015-11-05 08:40:43 -08:00
William Hesse abcb3a4d4d Update status for Firefox 42.
BUG=https://github.com/dart-lang/sdk/issues/24838
R=sgjesse@google.com

Review URL: https://codereview.chromium.org/1415473006 .
2015-11-05 16:14:46 +01:00
Terry Lucas 839ed4fbdd Updated DEPS to point to change in WebKit
TBR=whesse@google.com

Review URL: https://codereview.chromium.org/1432753002 .
2015-11-05 07:04:36 -08:00
Asger Feldthaus b466453025 dart2js cps: Fix bug in trampoline visitor.
If a continuation was visited directly (as the root of the
trampoline) the actions pushed in traverseContinuation would
not get processed.

BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/1427643009 .
2015-11-05 13:14:55 +01:00
Lasse R.H. Nielsen b13607d247 Split _uriEncode into JS and VM versions.
R=iposva@google.com, sra@google.com

Review URL: https://codereview.chromium.org/1416373007.
2015-11-05 13:00:37 +01:00
Stephan Herhut 2cecb9ec9c Resolve some static warnings.
R=karlklose@google.com
BUG=

Review URL: https://codereview.chromium.org/1433543004 .
2015-11-05 12:49:45 +01:00
Stephan Herhut 6ba13e2570 Use better names for captured variables in closures.
BUG=
R=sra@google.com

Review URL: https://codereview.chromium.org/1428853004 .
2015-11-05 11:57:50 +01:00
Johnni Winther c1b102a94d Revert "Normalize type masks to use the least upper instantiated subclass/type."
This reverts commit d3c68df853.

BUG=

Review URL: https://codereview.chromium.org/1431513010.
2015-11-05 11:14:47 +01:00
Johnni Winther d3c68df853 Normalize type masks to use the least upper instantiated subclass/type.
BUG=
R=sigurdm@google.com

Review URL: https://codereview.chromium.org/1413613010.
2015-11-05 10:54:21 +01:00
Jacob Richman 2c6989df5f TBR: bug fixes for switch from [] to JsNative.SetProperty Make calls to .isExternal property more robust
BUG=

Review URL: https://codereview.chromium.org/1419503008 .
2015-11-04 17:47:03 -08:00
Jacob Richman 6bfbb93d72 Make Dartium JS interop implementation more robust in the presence of JS paths that touch dart:html types. Note that the dart2js implementation was already robust in the presence of dart:html types.
BUG=
R=alanknight@google.com

Review URL: https://codereview.chromium.org/1415463019 .
2015-11-04 15:47:46 -08:00
Ryan Macnak 862307ccac Output precompiled snapshot size.
R=fschneider@google.com

Review URL: https://codereview.chromium.org/1414083004 .
2015-11-04 15:13:16 -08:00
Florian Schneider f6b96b3d07 Start remove dependencies on compiler-related files.
Minimize the number of dependencies of compiler-related files.

This is needed to remove whole .cc/.h files from a compiler-less VM binary which
can be used for running precompiled code.

* removed dependencies of object.cc on flow_graph_compiler.h and flow_graph_builder.h

* removed unnecessary includes from object.h

BUG=
R=srdjan@google.com

Review URL: https://codereview.chromium.org/1411873005 .
2015-11-05 00:08:35 +01:00
Kevin Moore 928e30586e update pkg/js for changes is 1.13-dev.7.7
R=jacobr@google.com

Review URL: https://codereview.chromium.org/1421513006 .
2015-11-04 14:39:24 -08:00
Stephen Adams f51f25034e Uri: use List.unmodifiable
BUG=
R=lrn@google.com

Review URL: https://codereview.chromium.org/1406023018 .
2015-11-04 14:30:10 -08:00
pq dbbcedf231 DEPS bump to pull in linter 0.1.4.
BUG=
R=keertip@google.com

Review URL: https://codereview.chromium.org/1418513022 .
2015-11-04 13:13:18 -08:00
Paul Berry ca2721b5b4 Disable codegen test on browsers, since it uses dart:io
TBR=scheglov@google.com

Review URL: https://codereview.chromium.org/1414073006 .
2015-11-04 13:12:02 -08:00
Zachary Anderson ca7c39d8d2 Turn off shutdown
BUG=

Review URL: https://codereview.chromium.org/1403293007 .
2015-11-04 12:56:02 -08:00
Zachary Anderson a0c51df0ce Turn on shutdown
BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/1419333008 .
2015-11-04 12:19:11 -08:00
Jacob Richman 1e3fb098d5 TBR. Only the method test group fails. Updated the test expectations file to reflect that.
BUG=

Review URL: https://codereview.chromium.org/1405953006 .
2015-11-04 10:56:30 -08:00
Ryan Macnak f588c1b91b Short check for zero is tst not cmp...
R=fschneider@google.com

Review URL: https://codereview.chromium.org/1431003002 .
2015-11-04 10:54:17 -08:00
Konstantin Shcheglov dee2660831 Publish new analyzer version and use in analysis_server.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/1408943008 .
2015-11-04 10:33:38 -08:00
Paul Berry 9d550c4a0f Begin generating code for summary serialization/deserialization.
The generated code is not yet used.

R=brianwilkerson@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org/1414903005 .
2015-11-04 10:22:42 -08:00
Konstantin Shcheglov d49d0f7e06 Wait for InstrumentationService.shutdown() before exit(0).
Otherwise we don't get the last portion of instrumentation data in the
file at all.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/1413403007 .
2015-11-04 10:08:20 -08:00
Jacob Richman 1ea74a407b TBR: fix status file for html.status. Only expect test to fail when it is actually run (which requires a browser).
BUG=

Review URL: https://codereview.chromium.org/1423623007 .
2015-11-04 09:40:40 -08:00
Ryan Macnak 830bfe61b7 Precompilation: Generate instance calls as IC calls that can switch to Megamoprhic calls.
dart2js ARM -10.3% size

R=fschneider@google.com

Review URL: https://codereview.chromium.org/1418863003 .
2015-11-04 09:31:19 -08:00
pq 9e9b7c0aaf Add Server PID to Server Status page.
BUG=
R=brianwilkerson@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org/1415573012 .
2015-11-04 09:25:42 -08:00
John McCutchan 8269e837e3 Fix simulator builds
BUG=

Review URL: https://codereview.chromium.org/1412903007 .
2015-11-04 08:50:20 -08:00
John McCutchan ceb12c4f69 Switch profiler from isolates to threads
- API breakage: Dart_IsolateBlocked, Dart_IsolateUnblocked -> Dart_ThreadDisableProfiling, Dart_ThreadEnableProfiling.
- Remove IsolateProfilerData.
- Move thread at blocking call count from isolate to thread.
- Always interrupt threads unless they are blocked.
- We can no longer count "idle" ticks.
- Only record sample if thread is the current mutator of an isolate.
- Refactor ThreadInterrupterCallback to ensure that Thread* is valid.

Threads are only ever sent signals if ThreadInterruptsEnabled is true. Which is controlled by two functions:

void DisableThreadInterrupts();
void EnableThreadInterrupts();

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

Review URL: https://codereview.chromium.org/1423473004 .
2015-11-04 07:59:16 -08:00
Johnni Winther b297a4ffb4 Mark inference_stats_test as slow
BUG=
R=sigurdm@google.com

Review URL: https://codereview.chromium.org/1420803004.
2015-11-04 16:29:19 +01:00
John McCutchan 6f9a2f7cb9 Fix non-Windows builds
BUG=

Review URL: https://codereview.chromium.org/1410783005 .
2015-11-04 07:05:12 -08:00