Commit graph

34011 commits

Author SHA1 Message Date
Keerti Parthasarathy 6f775acc7b add performance tests
BUG=
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//1366923003 .
2015-09-25 08:35:42 -07:00
Florian Schneider 9fa3d7c9e4 VM: Initialize Instruction objects with break instructions instead of null.
On ia32 this is int3().  This also makes precompiled instruction snapshots
deterministic (to be precise the empty space due to alignment), and not depending
 on the address of the null object at snapshot creation time.

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1367973002 .
2015-09-25 14:10:32 +02:00
Asger Feldthaus 75da9e4907 dart2js: Measure time of individual optimization passes.
Passing the -v flag to dart2js now prints the time spent in individual
optimization passes.

It should also be easier to throw in ad-hoc timing of specific
procedures for some quick-and-dirty timing measurements.

BUG=
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1362953002 .
2015-09-25 12:49:52 +02:00
Ryan Macnak fcdd855859 Precompile invoke-field-dispatchers for closures.
Improves precompiled DeltaBlueClosures by 8.6x and increases
instructions size by 0.05% (0.0005) on ARM.

R=fschneider@google.com

Review URL: https://codereview.chromium.org//1371453002 .
2015-09-24 17:19:37 -07:00
Alan Knight 1b80b9013e Make sure we short-circuit the second corruption test, it might be crashing firefox
BUG=

Review URL: https://codereview.chromium.org//1371543002 .
2015-09-24 16:45:08 -07:00
Konstantin Shcheglov 805f6ec3ba Record HAS_ANCESTOR relations into index.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//1371463002 .
2015-09-24 16:21:09 -07:00
Vijay Menon cac248765b Remove CompilationUnit name requirement
Some of our language tests have '.lib' extensions for dart files that are imported.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//1372433003 .
2015-09-24 15:51:08 -07:00
Alan Knight a004579ccc Try suppressing node_validator test for ff/windows, see if it stops the crashing
BUG=

Review URL: https://codereview.chromium.org//1368043002 .
2015-09-24 15:43:54 -07:00
John McCutchan 08118282d7 Fix TimelinePauses_Basic test failure
BUG=

Review URL: https://codereview.chromium.org//1368823002 .
2015-09-24 15:31:24 -07:00
John McCutchan a44db4a0f3 Fix MacOS build
BUG=

Review URL: https://codereview.chromium.org//1365183002 .
2015-09-24 15:16:03 -07:00
Srdjan Mitrovic 1ffada9e98 Modify String::IdentifierPrettyName to work with zone allocated temporary strings instead of String heap objects.
BUG=
R=regis@google.com

Review URL: https://codereview.chromium.org//1368773002 .
2015-09-24 14:59:53 -07:00
John McCutchan 8685d2ebf5 Add OSThread::GetCurrentThreadTraceId and use it in the timeline implementation
- This ensures our trace-event thread ids match the thread ids used in Chromium's base.

R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1368793002 .
2015-09-24 14:57:30 -07:00
pq 5dd6a543e7 Plugin manifest parsing.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//1366023002 .
2015-09-24 14:53:15 -07:00
Alan Knight a4004b6e97 Fix one level of error in postmessage tests, suppress nested list tests
BUG=

Review URL: https://codereview.chromium.org//1371503002 .
2015-09-24 14:27:27 -07:00
Terry L. Lucas f4df270900 No longer crashes but has runtime errors
TBR=alanknight@google.com

Review URL: https://codereview.chromium.org//1366023003 .
2015-09-24 14:09:48 -07:00
John McCutchan 255fbac021 Fix off by one error in trace-event output
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1368783002 .
2015-09-24 14:02:40 -07:00
John McCutchan 037deed29d Make output of Dart_TimelineGetTrace consumable by mojo
- Mojo TraceCollector expects a comma separated stream of event maps. Adjust the output of Dart_TimelineGetTrace to match that.

R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1370553002 .
2015-09-24 13:25:18 -07:00
John Messerly 83a2449062 Infer setter parameter types in strong mode
This change also decouples setters and getters, which matches what DDC currently does. The benefit is they're inferred as independent methods, which allows code reuse between method/getter/setters. It also prevents ordering issues that might occur otherwise (i.e. if getter inference considers setter's type, and setter inference considers the getter's type).

More context: https://github.com/dart-lang/dev_compiler/issues/342#issuecomment-142713453

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//1359243003 .
2015-09-24 13:21:04 -07:00
Terry L. Lucas 54282ccd72 Update to handle expections in custom element's created constructor
TBR=alanknight@google.com

Review URL: https://codereview.chromium.org//1370513003 .
2015-09-24 13:17:35 -07:00
John McCutchan 9535715f92 Fix handling of empty .analysis_options files and test this case
Fixes #24431

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//1369573003 .
2015-09-24 12:38:53 -07:00
Alan Knight 5b6401e900 Move JS calls out of Dartium code
BUG=

Review URL: https://codereview.chromium.org//1369573004 .
2015-09-24 12:36:18 -07:00
John McCutchan db3421ecfc Make TimelineEventBlocks reclaimable
- Add Timeline::ReclaimAllBlocks and Timeline::ReclaimIsolateBlocks utility functions to ensure that all cached blocks are closed before reporting the timeline
- Adjust Timeline_Dart_GlobalTimelineGetTrace to exercise block reclaiming
- Add ability to reclaim blocks from threads entered into an isolate
- Fix IsolateTimelineEventFilter to actually filter out open blocks
- Make some existing tests call Timeline::ReclaimIsolateBlocks before reporting
- Added implementation and locking notes to timeline.cc

R=turnidge@google.com

Review URL: https://codereview.chromium.org//1363033003 .
2015-09-24 11:32:21 -07:00
Alan Knight 8f35656f9b Fix node_validator xss tests for IE and Firefox
BUG=

Review URL: https://codereview.chromium.org//1365093003 .
2015-09-24 10:43:08 -07:00
Todd Turnidge c553cd065a Distinguish internal kill messages from user-initiated kill messages.
BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1361213003 .
2015-09-24 10:22:05 -07:00
Ryan Macnak db641b5bb9 Also skip precompilation test on Dartium.
TBR=fschneider@google.com

Review URL: https://codereview.chromium.org//1361903006 .
2015-09-24 09:55:03 -07:00
John McCutchan 0b931dbc00 Fix hidden bug with isolate shutdown debugger events
A CL from July (https://codereview.chromium.org/1168933002), papered over (see ASSERT removal in dbg_message.cc) a bug where we would send isolate shutdown event for the service isolate even though no isolate create event was sent.

This CL:

- Restores the ASSERT in dbg_message.cc
- Fixes the service isolate shutdown path so that the shutdown event is no longer sent.

Review URL: https://codereview.chromium.org//1361213005 .
2015-09-24 07:01:16 -07:00
Johnni Winther 1590970ccc Report info messages together with their error, warning, or hint.
BUG=
R=sigurdm@google.com

Review URL: https://codereview.chromium.org//1363993004.
2015-09-24 15:08:29 +02:00
Florian Schneider 3d69c08079 Temporarily disable precompilation_test on ARM hardware.
BUG=dartbug.com/24427

TBR=rmacnak@google.com,

Review URL: https://codereview.chromium.org//1369483002 .
2015-09-24 14:21:23 +02:00
Florian Schneider d8450eb63a Fix to WATCHLISTS.
Avoid flooding vm-dev@ with unrelated emails.

BUG=
R=whesse@google.com

Review URL: https://codereview.chromium.org//1367923003 .
2015-09-24 12:47:20 +02:00
Florian Schneider 87ec428cab Fix ia32 test expectation of precompilation_test.
TBR=rmacnak@google.com,

Review URL: https://codereview.chromium.org//1369453002 .
2015-09-24 12:45:35 +02:00
Florian Schneider 3a75f0d67a Add simple VM test for precompiled code.
The test creates a precompiled snapshot in a temporary directory, runs it and
checks the output.

Also:
Minor cleanup and fix segfault on dlopen error and with --trace-isolates

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1362743003 .
2015-09-24 11:36:46 +02:00
Johnni Winther f794df713b Enqueue superclasses instead of supertypes.
BUG=
R=herhut@google.com, karlklose@google.com

Committed: a118955a2b

Reverted: b1ecbf10d4

Review URL: https://codereview.chromium.org//1352533002.
2015-09-24 11:20:23 +02:00
Johnni Winther d6ea60bdfc Normalize constructor lookup.
BUG=
R=sigurdm@google.com

Review URL: https://codereview.chromium.org//1360153005.
2015-09-24 10:07:08 +02:00
Stephen Adams c27abdf3fc mark dart2js_native/native_exception_test as failing for cps_ir
TBR=asgerf@google.com

Review URL: https://codereview.chromium.org//1364033004 .
2015-09-23 18:28:16 -07:00
Stephen Adams fdc31a59d3 Redo "dart2js: fix for https://github.com/dart-lang/sdk/issues/24412"
This time don't try to fix cps_ir try-catch javascript object capture
bug (https://github.com/dart-lang/sdk/issues/24421)

TBR=asgerf@google.com

Review URL: https://codereview.chromium.org//1363183003 .
2015-09-23 18:16:00 -07:00
Stephen Adams 5f4b76d353 Update status for --cps-ir language/async_return_types_test
TBR=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1364063004 .
2015-09-23 18:09:32 -07:00
Stephen Adams bb1998a825 Revert "dart2js: fix for https://github.com/dart-lang/sdk/issues/24412"
TBR=asgerf@google.com
BUG=

Review URL: https://codereview.chromium.org//1367783003 .
2015-09-23 18:07:23 -07:00
Stephen Adams 0bd5cc5f70 dart2js: fix for https://github.com/dart-lang/sdk/issues/24412
The regression on some benchmarks was caused by
UnknownJavaScriptObject becoming alive.  Changing the test to 'is' reverts the regression.

Also make the cps_ir register UnknownJavaScriptObject when generating try-catch as that might snag a JavaScript error.

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

Review URL: https://codereview.chromium.org//1366673003 .
2015-09-23 17:27:16 -07:00
Stephen Adams 8852bf9e14 dart2js: fix nondeterministic output of type metadata.
Use consistent hashcode for deferred index into metadata.
Slightly nicer names for type constants in non-minified mode.

C.Type_k8F -->  C.Type_String_k8F

BUG= http://dartbug.com/24391
R=het@google.com

Committed: 4cb72d2baf

Review URL: https://codereview.chromium.org//1358363002 .
2015-09-23 17:08:27 -07:00
Stephen Adams db811d2e20 Revert "dart2js: fix nondeterministic output of type metadata."
BUG=

Review URL: https://codereview.chromium.org//1367723005 .
2015-09-23 16:09:43 -07:00
Stephen Adams 4cb72d2baf dart2js: fix nondeterministic output of type metadata.
Use consistent hashcode for deferred index into metadata.
Slightly nicer names for type constants in non-minified mode.

C.Type_k8F -->  C.Type_String_k8F

BUG= http://dartbug.com/24391
R=het@google.com

Review URL: https://codereview.chromium.org//1358363002 .
2015-09-23 15:52:55 -07:00
pq 72ee80467a ErrorHandler typedef fix.
Lo and behold this harkens back to lint request #1 (https://github.com/dart-lang/linter/issues/1). Could have saved me a headache!

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//1367723003 .
2015-09-23 14:39:07 -07:00
John McCutchan dfe6528400 Silence pub --version tests
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1360283002 .
2015-09-23 14:16:04 -07:00
Ryan Macnak d4fa240a25 Address static warning about service library's Isolate hiding dart:isolate's Isolate.
BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1364903002 .
2015-09-23 14:05:55 -07:00
John McCutchan dca52b0eb1 Fix observatory_tool so it works in mojo tree again
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1360263002 .
2015-09-23 13:55:06 -07:00
Ryan Macnak c6d5e4796e Fail sooner and with better error message when attempting precompilation on IA32.
Allocate megamorphic cache table in old space.

R=srdjan@google.com

Review URL: https://codereview.chromium.org//1357423005 .
2015-09-23 13:47:31 -07:00
pq d869088ea3 Error handling for bad .analysis_options files.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//1364813003 .
2015-09-23 13:27:19 -07:00
Ryan Macnak f6021d0608 Let the embedder provide entry points to Dart_Precompile.
R=srdjan@google.com

Review URL: https://codereview.chromium.org//1359963002 .
2015-09-23 13:18:56 -07:00
Ryan Macnak 8c44721965 Don't emit the lazy deopt sequence when we can't deopt.
Saves 3.2% of instructions size for precompiled hello world on ARM.

R=fschneider@google.com

Review URL: https://codereview.chromium.org//1367573002 .
2015-09-23 12:27:52 -07:00
Todd Turnidge 66f9abc7e3 Refactor isolate interrupts to use OOB messages instead of interrupt bits.
Closes #24349

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1344993002 .
2015-09-23 12:13:25 -07:00