cshapiro@google.com
fecbb84b10
Fix format type specifier discrepancies on 64-bit targets.
...
Review URL: https://codereview.chromium.org//11555032
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16075 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 23:05:51 +00:00
cshapiro@google.com
716c14a2a2
Improve the reporting of scavenger and free list reports.
...
The scavenger now reports survival and promotion statistics.
The statistics for the large free list are now reported. Previously,
only information about the small free list was printed. Each report
indicates whether the data is from before or after a garbage collection,
each row of a report is preceded by the free list type (small or large),
and cumulative bytes are reported for the free list type.
Review URL: https://codereview.chromium.org//11416384
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16074 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 22:58:24 +00:00
regis@google.com
c195fc9e92
Fix type test for callable objects (issue 7338).
...
Review URL: https://codereview.chromium.org//11549027
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16069 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 22:33:15 +00:00
kmillikin@google.com
1610d7d2ac
Refactor the InstanceFunctionLookupStub.
...
The stub is used in the case that an IC miss handler cannot find a
cacheable target. It handles implicit closures, calls to instance
fields, and no such method.
Refactor the stub to make a single call into the runtime.
BUG=
Review URL: https://codereview.chromium.org//11316353
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16057 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 19:52:47 +00:00
fschneider@google.com
a63d4f59d4
Narrow result cid and type of BinarySmiOp to be always smi.
...
After smi-SHL was changed to deoptimize in case of overflow,
the result type can be narrowed to smi only.
Review URL: https://codereview.chromium.org//11557012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16044 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 15:13:21 +00:00
kmillikin@google.com
2424252d6d
Remove inadvertently duplicated code.
...
BUG=
Review URL: https://codereview.chromium.org//11555016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16040 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 14:20:42 +00:00
fschneider@google.com
3ae14199b8
Extend sminess propagator to process branch instructions.
...
When doing comparisons like (x == null) and the comparison
is dominated by a smi-check, we can fold the comparison away.
One example where this occurs is the List constructor where the length
parameter is checked for null. If not null, the length of the list
is fixed and known and can be used to eliminate bounds checks.
Review URL: https://codereview.chromium.org//11442053
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16037 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 13:40:14 +00:00
meh@google.com
c9271a657a
Revert "Move generate_perf_events_symbols flag to VM (new issue with @google address)"
...
This reverts commit d4d38edbb889d186930c9346c867a0252f425e99.
BUG=
Review URL: https://codereview.chromium.org//11519025
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16017 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 03:41:30 +00:00
meh@google.com
9067ec4d33
Move generate_perf_events_symbols flag to VM (new issue with @google address)
...
Changes reviewed and approved here:
https://chromiumcodereview.appspot.com/11490026
Created a new issue using meh@google.com instead of meh@chromium.org so I can commit to trunk.
BUG=
Review URL: https://codereview.chromium.org//11549011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16016 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 02:55:21 +00:00
asiva@google.com
1519128c72
Dynamically Allocate the predefined handles structure in Symbols
...
so that an "exit" will not result in static destructors being run
and zapping the handles area while some other isolates are still
running.
Review URL: https://codereview.chromium.org//11549010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16015 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 02:52:14 +00:00
regis@google.com
697550b2a2
Support call operator in the vm.
...
Review URL: https://codereview.chromium.org//11316343
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16009 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 00:48:58 +00:00
asiva@google.com
a658352666
Add dump_symbol_stats to dump symbol table stats at the end of a test run
...
when --trace-isolates --dump_symbol_stats is used.
Review URL: https://codereview.chromium.org//11416356
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16008 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 00:35:48 +00:00
asiva@google.com
6749a3be79
Add read only handles for the following predefined symbols
...
"=="
"[]"
"[]="
"this"
and use them in the code.
Review URL: https://codereview.chromium.org//11519006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15942 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-11 01:20:02 +00:00
asiva@google.com
b9bff21042
Start a fresh zone and handle scope for each function being compiled
...
in CompileAll (currently handles and memory is not being released
until all the functions are compiled).
Review URL: https://codereview.chromium.org//11280315
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15941 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-11 01:06:44 +00:00
cshapiro@google.com
a7675e8dd3
Provide a mechanism for dumping of heap profiles on predefined events.
...
Review URL: https://codereview.chromium.org//11478012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15940 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-11 00:50:31 +00:00
regis@google.com
3b1dfe51d1
Pass the proper invocation mirror argument to noSuchMethod.
...
Review URL: https://codereview.chromium.org//11523002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15939 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-11 00:31:53 +00:00
asiva@google.com
6eec2410ec
Restructure Add and SetAt to not create a Handle.
...
Review URL: https://codereview.chromium.org//11443024
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15926 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-10 19:28:14 +00:00
asiva@google.com
d5f055b605
- Create frame work for adding read only handles for symbols in the VM isolate
...
- Make the symbol corresponding to "." use this frame work and change code
which was creating a handle to use the read only handle instead.
(Once we agree on this frame work we could create similar read only handles
for the frequently used symbols)
Review URL: https://codereview.chromium.org//11469036
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15920 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-10 18:24:34 +00:00
regis@google.com
dd6a0ec349
Rename GET_NATIVE_ARGUMENT macro to GET_NON_NULL_NATIVE_ARGUMENT.
...
Introduce new GET_NATIVE_ARGUMENT macro accepting null.
Add test.
Review URL: https://codereview.chromium.org//11468016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15919 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-10 17:59:40 +00:00
kmillikin@google.com
c4726371fc
Fix compilation on Windows.
...
Visual Studio reports that only static integral constants are allowed to be
initialized in the class.
R=vegorov@google.com
BUG=
Review URL: https://codereview.chromium.org//11478047
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15890 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-10 10:03:35 +00:00
kmillikin@google.com
a119414b2f
Cache lookups at megamorphic call sites in optimized code.
...
The function name and argument descriptor are mapped to a lookup cache
at compile time. The cache maps class id to target function. It is
resizable.
Review URL: https://codereview.chromium.org//11299298
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15889 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-10 09:48:52 +00:00
srdjan@google.com
3a28c6ec9c
Add code comments to slow paths.
...
Review URL: https://codereview.chromium.org//11475042
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15868 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-07 21:45:37 +00:00
srdjan@google.com
d6772016eb
Cleanups based on Kevin's and Florian's suggestions.
...
Review URL: https://codereview.chromium.org//11481002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15850 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-07 17:59:53 +00:00
iposva@google.com
19a89a947e
- Do not read past the end of the utf32_array.
...
Review URL: https://codereview.chromium.org//11447009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15847 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-07 17:18:22 +00:00
kmillikin@google.com
3dabe31e91
Reapply "Do not call ResolveCompileInstanceFunction from the lookup stub."
...
With a fix for a crash bug on x64. The near jump encoding could fail on
some platforms due to platform-specific code.
BUG=
Review URL: https://codereview.chromium.org//11476021
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15845 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-07 13:00:38 +00:00
kmillikin@google.com
1ddeb10349
Revert "Do not call ResolveCompileInstanceFunction from the lookup stub."
...
This reverts svn revision 15842 due to a snapshot build failure on Mac.
TBR=fschneider@google.com
Review URL: https://codereview.chromium.org//11467015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15843 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-07 11:21:13 +00:00
kmillikin@google.com
c9bab9efaa
Do not call ResolveCompileInstanceFunction from the lookup stub.
...
The InstanceFunctionLookup stub is only called after the inline cache miss
handler. The miss handler ensures that ResolveCompileInstanceCallTarget is
called.
BUG=
Review URL: https://codereview.chromium.org//11451036
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15842 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-07 11:13:51 +00:00
asiva@google.com
1a76ed33c4
Return an unhandled exception error on an OOM or other errors while
...
reading a message. This ensures that we never call FindExceptionHelper
with no dart invocation frames.
Review URL: https://codereview.chromium.org//11475012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15833 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-07 01:41:53 +00:00
srdjan@google.com
a9a187ce7a
Fix failures in byte array tests, reenabled test.
...
Review URL: https://codereview.chromium.org//11471014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15821 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-06 23:27:01 +00:00
srdjan@google.com
76fe027314
Windows complains:
...
'dart::RawUint8Array' : base classes cannot contain zero-sized arrays
Replicate code for now instead of subclassing.
Review URL: https://codereview.chromium.org//11464011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15814 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-06 22:30:08 +00:00
cshapiro@google.com
f5c4d7a381
Unify specification of file open, close, and write callbacks.
...
Review URL: https://codereview.chromium.org//11442024
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15807 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-06 21:56:31 +00:00
srdjan@google.com
93dd217564
Added Uint8ClampedList. COmpielr optimziations to follow in next CL.
...
Review URL: https://codereview.chromium.org//11437028
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15806 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-06 21:53:51 +00:00
fschneider@google.com
63f6bbee77
Save a handle allocation in two accessor functions of class Type.
...
The ASSERT already makes sure, that we have the correct type at hand.
Review URL: https://codereview.chromium.org//11444008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15775 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-06 09:32:49 +00:00
vsm@google.com
b5e5fcd160
Refactored Android samples / embedder.
...
- Started moving generic embedder code from sample into runtime/embedders/android. I'd like to move more in a later CL.
- Removed dependence on vm/bin in sample.
Ivan or Siva: can one of you review the changes under runtime?
Review URL: https://codereview.chromium.org//11416343
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15766 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-06 00:27:04 +00:00
hausner@google.com
5e47a858f3
Set BP in closurized function if necessary
...
If a function has been closurized, and both the regular function as well as
the closurized function are already compiled when the user sets a breakpoint,
then two code breakpoints have to be installed.
Fixed issue 2318.
Review URL: https://codereview.chromium.org//11446020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15764 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-06 00:09:36 +00:00
asiva@google.com
4d26d87a3a
Issue - 7123
...
Rename
String::New(const uint8_t latin1_array......) to String::FromLatin1
String::New(const uint16_t utf16_array......) to String::FromUTF16
String::New(const int32_t utf32_array.......) to String::FromUTF32
Review URL: https://codereview.chromium.org//11443005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15763 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-05 23:37:37 +00:00
srdjan@google.com
c0315644f3
Pass handles not raw objects into methods.
...
Review URL: https://codereview.chromium.org//11441021
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15748 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-05 19:50:50 +00:00
kmillikin@google.com
8c4e214722
Pass IC data and arguments descriptor to IC miss runtime functions.
...
Before, we obtained them by pattern matching backwards on the machine
instructions at the call site. This previous approach becomes unwieldy when
we need to use to use multiple instance call patterns.
R=vegorov@google.com
BUG=
Review URL: https://codereview.chromium.org//11438017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15737 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-05 15:35:18 +00:00
vegorov@google.com
361af1463a
Remove unused field AstNode::ic_data.
...
R=fschneider@google.com
BUG=
Review URL: https://codereview.chromium.org//11438018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15733 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-05 14:29:41 +00:00
fschneider@google.com
d6a35f1983
Avoid unneccary handle allocation in OptimizeTypeArguments.
...
Review URL: https://codereview.chromium.org//11453008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15732 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-05 13:59:41 +00:00
vegorov@google.com
f9f587d6fe
Kill unused CodeGenInfo field in AstNode.
...
R=fschneider@google.com
BUG=
Review URL: https://codereview.chromium.org//11447012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15731 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-05 13:46:58 +00:00
kmillikin@google.com
275c8d928f
Introduce a class encapsulating arguments descriptor arrays.
...
BUG=
Review URL: https://codereview.chromium.org//11442010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15727 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-05 12:05:57 +00:00
kustermann@google.com
7519562eac
Part of fix for http://dartbug.com/6528
...
Committed: https://code.google.com/p/dart/source/detail?r=15690
Review URL: https://codereview.chromium.org//11434106
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15724 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-05 09:04:55 +00:00
asiva@google.com
02049c689e
Fix for issue 7089 (Symbols::New was not quite working correctly
...
when there are non ASCII Latin-1 characters in the string).
Review URL: https://codereview.chromium.org//11411341
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15711 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-04 22:18:12 +00:00
srdjan@google.com
e3863daaba
Improve C++ code for string splittig (Dromaeo benchmark).
...
Review URL: https://codereview.chromium.org//11308337
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15710 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-04 21:52:02 +00:00
fschneider@google.com
7b15fb759d
Improve and fix constant propagation for type arguments.
...
Corretly match the constant propagator's analysis code for
InstantiateTypeArguments with the code generator template for it and handle
the case of NULL-type arguments. This improves code like
new List()
in checked mode. The old code would only improve code with type arguments like
new List<type>();
Review URL: https://codereview.chromium.org//11416340
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15695 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-04 17:07:50 +00:00
kustermann@google.com
9dfbcee90d
Part of fix for http://dartbug.com/6528
...
Review URL: https://codereview.chromium.org//11434106
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15690 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-04 15:24:16 +00:00
fschneider@google.com
3c81141f1c
Instantiate uninstantiated types with known constant type-arguments.
...
The enables eliminating more type-checks.
For type-checks that have a uninstantiated target type and a constant
instantiator type arguments as input, we can instantiate the type
at compile-time.
Review URL: https://codereview.chromium.org//11280230
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15689 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-04 14:51:43 +00:00
johnmccutchan@google.com
1120befff4
s/transferrable/transferable
...
Review URL: https://codereview.chromium.org//11434077
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15636 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-03 15:25:07 +00:00
asiva@google.com
311e4c8c19
Partial cleanup towards fixing Issue 6726
...
(try to add all constants strings in the VM to the symbols list).
Review URL: https://codereview.chromium.org//11419261
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15618 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-01 00:34:19 +00:00