iposva@google.com
28c8553cb6
- Fix a lot of warnings generated by -Wshorten-64-to-32
...
when compiling for ia32 on Mac.
R=vegorov@google.com
Review URL: https://codereview.chromium.org//415513002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38499 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-23 14:10:13 +00:00
zra@google.com
b73310c2c2
Adds intrinsics for Float64Array [] and []=.
...
Improves performance in unoptimized code.
R=regis@google.com , srdjan@google.com
Review URL: https://codereview.chromium.org//408373002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38483 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-22 23:16:07 +00:00
asiva@google.com
e921f8c416
Fix dartium build break.
...
R=hausner@google.com
Review URL: https://codereview.chromium.org//407073005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38479 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-22 22:45:38 +00:00
johnmccutchan@google.com
2abbaca938
Add Dart stack walker that relies on frame pointers.
...
* It is used only when we don't have a top exit frame and we have the script tag set.
* Steps across exit frames and only collects Dart frames.
R=asiva@google.com
Review URL: https://codereview.chromium.org//408663004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38475 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-22 21:08:22 +00:00
asiva@google.com
97b903c665
Fix for issue 19817
...
- do not try to finalize classes on every Dart API call which could
potentially result in calls to dart code
- Invoke Dart_FinalizeLoading after all loads are done to ensure that
classes are finalized
R=hausner@google.com
Review URL: https://codereview.chromium.org//411633002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38471 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-22 20:08:15 +00:00
regis@google.com
7800e258ca
Finalize the redirection type of a redirecting factory when the class of the
...
factory is finalized.
R=asiva@google.com
Review URL: https://codereview.chromium.org//412543003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38468 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-22 18:17:24 +00:00
srdjan@google.com
32e259a8af
In code comments print also deopt reason for deoptimization stubs.
...
R=zra@google.com
Review URL: https://codereview.chromium.org//409183003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38467 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-22 18:16:22 +00:00
asiva@google.com
a8195aeb5c
Change the Dart API call Dart_FInalizeLoading to accept an additional argument
...
which makes completion of deferred library futures optional.
R=hausner@google.com
Review URL: https://codereview.chromium.org//407143004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38463 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-22 16:56:14 +00:00
koda@google.com
aca839c54f
Allocate fewer empty arrays.
...
Use VM isolate's canonical, untyped, empty array when possible.
Takes Dart2JS benchmark from ~9000 empty arrays to ~200.
R=asiva@google.com
Review URL: https://codereview.chromium.org//381483002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38435 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-21 16:41:05 +00:00
srdjan@google.com
599da188a7
Small tuning of unboxing heuristic.
...
Review URL: https://codereview.chromium.org//403043002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38414 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-18 22:42:28 +00:00
johnmccutchan@google.com
98a959ff35
Really fix the build
...
BUG=
Review URL: https://codereview.chromium.org//408493004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38412 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-18 21:11:45 +00:00
johnmccutchan@google.com
597caa1754
Fix build breakage introduced in r38409
...
BUG=
Review URL: https://codereview.chromium.org//403003003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38411 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-18 21:04:36 +00:00
johnmccutchan@google.com
86bf7bb898
Profiler cleanup
...
BUG=
R=asiva@google.com
Review URL: https://codereview.chromium.org//397163002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38409 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-18 20:55:24 +00:00
srdjan@google.com
154eb30f58
ONe more iteration of PcDesacriptor iterator imporvement: do not copy record but access individual values when needed.
...
R=hausner@google.com
Review URL: https://codereview.chromium.org//403643002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38408 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-18 20:11:29 +00:00
vegorov@google.com
f0e725271c
Fix compilation failure caused by r38404.
...
Don't mix enum and integral types in the same conditional.
TBR=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//404873002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38405 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-18 18:46:57 +00:00
vegorov@google.com
77c26187f2
Support allocation sinking for compound objects.
...
- Improve escape/alias analysis:
-- Storing an object into a field of another object does not mean that this object escapes (or has aliases) as long as that object does not have any loads from the same place;
-- Places like X.f and Y.f don't alias if X and Y are two different allocation instructions even if X and Y themselves potentially have aliases;
-- Improve precision of alias analysis for indexed properties;
- Support dematerialization and rematerialization of objects that are referenced by other dematerialized objects.
-- Use fix-point algorithm to collect candidates for allocation sinking;
-- Support aborting unsuccessful allocation sinking.
R=fschneider@google.com , johnmccutchan@google.com
Review URL: https://codereview.chromium.org//395943003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38404 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-18 18:35:08 +00:00
vegorov@google.com
41ff617dbf
Don't force range of the RangeBoundary::Shl into the Smi.
...
This caused overly conservative ranges to be computed for mint-shl expressions.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//402913002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38402 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-18 18:17:31 +00:00
regis@google.com
c8e8204d64
Optimize the multiplication of two 32-bit unsigned integers.
...
R=johnmccutchan@google.com , srdjan@google.com , vegorov@google.com
Review URL: https://codereview.chromium.org//396733006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38400 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-18 17:59:58 +00:00
lrn@google.com
729de01f79
Make IterableMixinWorkaround using classes return correctly typed Iterables.
...
BUG= http://dartbug.com/13646
R=floitsch@google.com
Review URL: https://codereview.chromium.org//397243002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38372 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-18 08:08:16 +00:00
regis@google.com
9d77c9ea73
Specialize mint shift code on arm for a constant shift amount.
...
R=zra@google.com
Review URL: https://codereview.chromium.org//401683003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38355 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-17 22:29:33 +00:00
asiva@google.com
a323a9c9db
The dart version of typeddata library has changed to be compatible with the dart2js implementation
...
(typeddata does not implement ByteBuffer anymore).
Added new Dart API functions to account for this change.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//392043003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38351 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-17 22:08:07 +00:00
koda@google.com
663f5b5ab7
Hide dangerous interface String::Equals/Hash(uint8_t*,...
...
The method String::Equals(uint8_t*, intptr_t) was incorrectly specified as operating on UTF-8, when it was actually assuming Latin-1.
Still, friends that use templates (like Symbols) can still access the convenient overloaded Equals/Hash.
R=asiva@google.com
Review URL: https://codereview.chromium.org//400493002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38343 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-17 20:07:06 +00:00
asiva@google.com
aa86bbc562
Fix for issue 20045.
...
R=koda@google.com
Review URL: https://codereview.chromium.org//396803012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38341 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-17 19:34:29 +00:00
srdjan@google.com
9feee35cd1
Fix Linux build: (unnecessarily) initialize record so that warnings are shut down.
...
Review URL: https://codereview.chromium.org//399233003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38340 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-17 19:33:22 +00:00
srdjan@google.com
1259bda234
Fix PcDescriptor iterator to never return a pointer to a memory location since the PcDescriptor can move with the GC.
...
R=hausner@google.com
Review URL: https://codereview.chromium.org//396213005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38338 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-17 18:30:38 +00:00
zra@google.com
fbbc91ff69
Cleanup of class id loading sequences.
...
These ended up looking performance neutral, but
the cleanup is probably good.
R=srdjan@google.com , vegorov@google.com
Review URL: https://codereview.chromium.org//392343002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38333 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-17 16:20:11 +00:00
iposva@google.com
0ab6d72ffb
Fix bug 20078:
...
- Do not use shared code or variables after a setjmp.
R=kustermann@google.com
Review URL: https://codereview.chromium.org//397273003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38327 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-17 13:12:34 +00:00
iposva@google.com
727648d0e5
- Properly setup an Api scope before calling out through the API.
...
R=vegorov@google.com
Review URL: https://codereview.chromium.org//394343003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38326 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-17 12:46:04 +00:00
hausner@google.com
7dd12c92f4
Fix test Debug_BreakOnUnhandledException in checked mode
...
TBR=srdjan
Review URL: https://codereview.chromium.org//391213005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38317 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 22:33:34 +00:00
hausner@google.com
d6664499a9
Debugger test to ensure break on exception works
...
Tests that the debugger is only called on exceptions when the exception is
unhandled or when it wants to be notified on all exceptions.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//396993008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38316 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 22:30:33 +00:00
rmacnak@google.com
a9db9d480c
Fix handle leak in EvalExpressionExhaustCIDs test.
...
BUG=http://dartbug.com/20056
R=asiva@google.com
Review URL: https://codereview.chromium.org//396403002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38315 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 22:25:46 +00:00
johnmccutchan@google.com
e7ddd5d047
Move some isolate state setup from C++ code to JumpToExceptionHandler stub (take 3).
...
- CL is the same as take 2, but, I now prohibit the profiler from walking the call stack when the isolate is executing the jump to exception handler.
R=asiva@google.com
Review URL: https://codereview.chromium.org//395233002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38300 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 18:03:17 +00:00
koda@google.com
d2bfa8f0ec
Fix build (by outlining static double constant).
...
TBR=asiva@google.com
Review URL: https://codereview.chromium.org//395223003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38296 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 17:54:33 +00:00
koda@google.com
b51526fea3
Use new hash table template for compressing token streams.
...
Uses the flexible low-level interface to minimize lookups and allocation.
BUG=dart:13747
R=asiva@google.com
Review URL: https://codereview.chromium.org//398583003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38294 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 17:39:10 +00:00
johnmccutchan@google.com
92330fbc32
Support SameAsFirstInput policy in register allocator when inputs are paired machine registers
...
BUG=
R=vegorov@google.com
Review URL: https://codereview.chromium.org//393323004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38290 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 16:45:10 +00:00
srdjan@google.com
ac094f9d20
Address comment by asiva.
...
Review URL: https://codereview.chromium.org//392353002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38289 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 16:22:48 +00:00
whesse@google.com
c3f10dc026
Skip a vm test on MIPS hardware
...
The test takes almost 1 GB memory - this is causing crashes.
BUG=dartbug.com/20056
R=kustermann@google.com
Review URL: https://codereview.chromium.org//397683003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38281 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 12:12:50 +00:00
fschneider@google.com
26470e8384
Avoid allocating an exception object in the snapshot reader.
...
The unhandled exception object needs only be allocated before
actually returning an error from the snapshot reader, and not
at each invocation of ReadObject.
R=asiva@google.com
Review URL: https://codereview.chromium.org//388963003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38280 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 11:49:45 +00:00
hausner@google.com
148eb0f91e
Fix break on unhandled exception
...
A recent change broke the exception handler lookup code in the debugger.
This fixes issue 19988.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//396033003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38267 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 23:55:03 +00:00
mlippautz@google.com
a97bafab93
vm/observatory: Clean up script access
...
Addresses issues from https://codereview.chromium.org/346003003/
BUG=
R=hausner@google.com , johnmccutchan@google.com
Review URL: https://codereview.chromium.org//392933003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38264 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 22:55:19 +00:00
koda@google.com
c645b0ab71
Object ids in snapshots are assigned sequentially, and can in many cases be omitted by the writer and inferred by the reader. The exceptions are the classes that are serialized in two steps (arrays and user-level Dart instances), where the second step must include the id.
...
For standalone, makes full snapshot 5% smaller, and startup ~1.5% faster when measured on a Nexus 10.
R=zra@google.com
Review URL: https://codereview.chromium.org//387993007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38261 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 21:47:00 +00:00
johnmccutchan@google.com
7366afd86e
Revert r38240
...
BUG=
Review URL: https://codereview.chromium.org//393103002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38257 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 20:48:20 +00:00
srdjan@google.com
16e4600ff5
Fix build (link error reproducible on linux with GYP_DEFINES=dart_debug_optimization_level=0).
...
Review URL: https://codereview.chromium.org//393083002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38251 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 19:49:27 +00:00
srdjan@google.com
3d71a1fdec
Another attempt to fix LLVM 4.2 failure.
...
Review URL: https://codereview.chromium.org//395973002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38249 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 18:42:12 +00:00
srdjan@google.com
611b665762
Attempt to fix llvm 4.2 compiler errors.
...
Review URL: https://codereview.chromium.org//395953002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38247 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 18:07:39 +00:00
srdjan@google.com
9c8a395f6f
More PcDescriptor cleanups, compress recors if no try index is needed (frequent).
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//382993003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38242 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 17:07:03 +00:00
johnmccutchan@google.com
efc684e4a8
Move some isolate state setup from C++ code to JumpToExceptionHandler stub
...
This change means that the isolate's top exit frame info and vm tag will only be updated after setting the frame pointer.
This is step one in a series of changes to allow the profiler to walk the stack when there is no frame pointer.
R=asiva@google.com
Review URL: https://codereview.chromium.org//393693002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38240 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 16:39:19 +00:00
johnmccutchan@google.com
58a4356ef6
Dartium doesn't have a library tag handler installed in the service isolate. Allow for no embedder provided library tag handler so long as no imports need to be handled.
...
Fixes part of https://code.google.com/p/dart/issues/detail?id=20049
R=asiva@google.com
Review URL: https://codereview.chromium.org//391943003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38239 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 16:33:56 +00:00
iposva@google.com
9f6006f8c8
Fix dartbug.com/19998
...
- Do not attempt to interact with files if hooks are not installed.
- Remove obsolete code observers.
- Remove obsolete API functions.
R=asiva@google.com , fschneider@google.com
Review URL: https://codereview.chromium.org//390043002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38226 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 09:14:40 +00:00
lrn@google.com
f48e9cb218
Address comments on double-parse implementation from earlier CL.
...
Comments at https://codereview.chromium.org/368483004/#msg7
R=fschneider@google.com , iposva@google.com
Review URL: https://codereview.chromium.org//381603002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38224 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 08:25:12 +00:00