srdjan@google.com
e01b80da2c
Report error in APIs if type is malformed instead of crashing. Example:
...
Dart_FunctionReturnType: malformed type encountered: 'file:///sources/dartall/dart/pkg/intl/lib/intl.dart': Error: line 235 pos 10: cannot resolve class name 'dynamic' from 'Intl'
Review URL: https://codereview.chromium.org//11099049
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13500 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-10 20:54:49 +00:00
srdjan@google.com
cd3a59cbdc
Fix a crash in compiler.
...
Review URL: https://codereview.chromium.org//11087062
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13496 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-10 20:27:33 +00:00
srdjan@google.com
5158c55cce
Trace intrinsified native calls for doubles.
...
Review URL: https://codereview.chromium.org//11087061
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13494 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-10 20:15:48 +00:00
zerny@google.com
22e619ff31
Recursive inlining.
...
Due to large performance regressions on dart2js the default depth is set to 1, i.e., we only inline the first level of calls by default. The depth can be changed with the inlining_depth_threshold flag.
R=kmillikin@google.com
Review URL: https://codereview.chromium.org//11029027
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13471 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-10 13:18:40 +00:00
fschneider@google.com
483f813769
Slightly improved register constraints for mint add and sub.
...
Review URL: https://codereview.chromium.org//11099034
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13462 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-10 10:49:06 +00:00
zerny@google.com
5200dfb8b1
Remove slow assert from VM.
...
Replaced slow-asserts with verify-compiler and removed vm/assert.h
R=srdjan@google.com
BUG=5720
Review URL: https://codereview.chromium.org//11017027
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13456 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-10 08:03:28 +00:00
srdjan@google.com
4ad647121f
Fix build breakage, removed arguments twice instead of once.
...
Review URL: https://codereview.chromium.org//11092038
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13448 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 22:40:54 +00:00
srdjan@google.com
c83fd716e4
Implement SmiToInt and DoubleToInt. All necessary tests are in tests/language/arithmetic_test.dart
...
Review URL: https://codereview.chromium.org//11098009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13443 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 21:43:10 +00:00
asiva@google.com
5737ead7e3
Add more options to the help message in verbose mode.
...
Review URL: https://codereview.chromium.org//11094027
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13437 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 20:12:32 +00:00
blois@google.com
c9f164aed4
Improving path.relativeTo to add support for a broader set of absolute paths.
...
I had made a last minute change in my previous CL (changing from a string operation to using hasTrailingSeparator), but forgot to test it.
First change is the original, second has the fix.
BUG=
Review URL: https://codereview.chromium.org//11087034
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13435 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 19:58:10 +00:00
asiva@google.com
517ff06459
Instead of aborting with an assert, exit with an error when we get an OOM
...
while handling messages. This is a temporary solution until we have the
isolate error handling mechanism in place (for issue 1403).
Review URL: https://codereview.chromium.org//10915295
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13433 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 19:49:11 +00:00
srdjan@google.com
8e7aee9048
Address Florian's comments.
...
Review URL: https://codereview.chromium.org//11090027
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13427 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 18:46:25 +00:00
blois@google.com
5ec7bcc034
Revert "Improving relative path support."
...
This reverts commit 13422 which broke VM win & mac.
BUG=
Review URL: https://codereview.chromium.org//11096026
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13423 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 17:02:51 +00:00
blois@google.com
95aabfc319
Improving relative path support.
...
I'm looking to modify our HTML tests to use relative paths and it was mentioned that I should be using Path.relativeTo- this change fixes relativeTo to handle the cases that I need.
BUG=
Review URL: https://codereview.chromium.org//10986078
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13422 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 16:48:48 +00:00
sgjesse@google.com
66b7a2c9c9
Addressed drive by comments
...
DBC from ager@ on http://codereview.chromium.org/11066041/ .
R=ager@google.com
BUG=
Review URL: https://codereview.chromium.org//11098018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13415 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 14:07:42 +00:00
fschneider@google.com
b38daebd36
Faster 64-bit left-shift for ia32.
...
This CL adds a fast left-shift that operates on unboxed mints.
(64-bit integers) to the ia32 optimizing compiler.
Review URL: https://codereview.chromium.org//11085004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13408 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 11:59:44 +00:00
iposva@google.com
78c30b0775
- Update status files for failing tests.
...
Review URL: https://codereview.chromium.org//11093013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13387 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 00:47:42 +00:00
iposva@google.com
5f2f50f960
Land http://codereview.chromium.org/11047027/ for Matthias:
...
Implement export clause in VM
Implement export namespace support in VM compiler.
Missing functionality: ensuring that a name is only re-exported once.
Review URL: https://codereview.chromium.org//11028084
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13384 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-09 00:14:42 +00:00
regis@google.com
06aa06f542
Include method name in NoSuchMethodError.toString().
...
Review URL: https://codereview.chromium.org//11092014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13382 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-08 23:21:16 +00:00
regis@google.com
6c7a1f30fd
Look up getter in super call (issue 3621).
...
Review URL: https://codereview.chromium.org//11088014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13376 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-08 21:37:34 +00:00
fschneider@google.com
5f2bdb2f7d
Fix bug with missing unboxed mint-to-double conversion.
...
In case of a mixed integer/double operation that has a mint
input, the corresponding conversion from unboxed mint to unboxed
double was missing.
This CL converts a unboxed mint to a double by first boxing,
and then unboxing. Currently, we deoptimize in case the result
does not fit into a smi because we can only optimize mixed
smi/double operations and not yet mint/double operations.
BUG=dart:5721
TEST=tests/language/mint_arithmetic.dart
Review URL: https://codereview.chromium.org//11017017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13372 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-08 20:20:53 +00:00
ager@google.com
70216ab4cd
Hide internal details of VM string implementation.
...
R=lrn@google.com ,srdjan@google.com
BUG=
Review URL: https://codereview.chromium.org//11035057
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13352 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-08 13:00:33 +00:00
sgjesse@google.com
0a95ca17a6
Fix another issue with r13348
...
Add missing const.
TBR=ajohnsen@google.com
BUG=
Review URL: https://codereview.chromium.org//11089003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13351 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-08 12:58:56 +00:00
sgjesse@google.com
2eb693a104
Fix error in in r13348
...
The name of a constructor cannot be the same as the name of a member
declared in the immediately enclosing class.
TBR=ajohnsen@google.com
BUG=
Review URL: https://codereview.chromium.org//11086003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13350 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-08 12:46:13 +00:00
sgjesse@google.com
aa7652cccf
Add support for HTTP proxy in the HTTP client
...
An HttpClient instance now has the property findProxy. This
property can be set to a function which can return the proxy
configuration encoded in a string in the same format as is used
by browser PAC (proxy auto-config) scripts.
Currently only the first proxy in the list will be used. I will
address trying multiple proxies in a separate CL.
Also fixed a HTTP input stream bug revealed by the tests. If an
input stream from either a HttpRequest or HttpClientResponse
object is retreived after all data in the body has been received
the HTTP input stream would call the onClosed callback.
R=ajohnsen@google.com
BUG=dart:5468
TEST=tests/standalone/io/http_proxy_test.dart
Review URL: https://codereview.chromium.org//11066041
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13348 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-08 12:19:14 +00:00
efortuna@google.com
2262eaa5ed
Reapply r13292 WITH a fix to dartc test status for apply_test.dart
...
Review URL: https://codereview.chromium.org//11035069
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13335 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 23:42:27 +00:00
asiva@google.com
ceed3e5beb
- Add support to interrupt a running isolate with the following command:
...
<=== InterruptCmd = "{" RequestId "," command ":" interrupt "," params ":" "{" isolateId ":" Integer "}" "}"
===> InterruptCmdResp = "{" RequestId "}"
- Send isolate events over to the debugger client in the following format:
===> "{" event ":" isolate "," params ":" "{" reason ":" created "," id ":" Integer "}" "}"
===> "{" event ":" isolate "," params ":" "{" reason ":" shutdown "," id ":" Integer "}" "}"
===> "{" event ":" paused "," params ":" "{" reason ":" interrupted "," callFrames ":" StackTrace "}" "}"
- Added id ";" Integer, to params in all paused events messages
- create per isolate debugger message queues, instead of the global static one
- Add 'i' command in ddbg to exercise the interrupt feature
- Add support for handling isolave event messages in ddbg
Review URL: https://codereview.chromium.org//11028040
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13333 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 23:10:28 +00:00
efortuna@google.com
461f7fb95e
Revert r13292. This is when the first failure showed up on dartc, but dartc
...
didn't actually turn red. Investigating why.
Review URL: https://codereview.chromium.org//11081002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13330 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 23:05:20 +00:00
regis@google.com
3a45259cc5
Implement new scope rules for type variables (issue 5230).
...
Fix tests.
Review URL: https://codereview.chromium.org//11030056
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13316 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 20:29:02 +00:00
tball@google.com
76d7c9b105
Renamed Zone->StackZone, BaseZone->Zone, in preparation for changing isolate->get_zone() to return what was called the BaseZone instead of its wrapper. The GetBaseZone() methods were not renamed, to help the next CL.
...
BUG=
Review URL: https://codereview.chromium.org//11040062
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13314 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 19:52:55 +00:00
fschneider@google.com
3efefbd582
Faster 64-bit right-shift for the ia32 compiler.
...
Review URL: https://codereview.chromium.org//11027060
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13295 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 14:42:00 +00:00
lrn@google.com
181dc5d3b4
Add apply method signature to Function class.
...
This does not include an implementation for any backend. The
current implementation throws a NotImplementedException when
called.
BUG=5419
Review URL: https://codereview.chromium.org//11027059
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13292 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 12:57:51 +00:00
iposva@google.com
c8df70b904
Fix bug 5575:
...
- Remove residue of typed arrays from dart:core.
Review URL: https://codereview.chromium.org//11031063
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13274 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-05 06:52:42 +00:00
srdjan@google.com
f78f482326
Restore x64 performance by reinstering an accidentally deleted LoadClassId instruction.
...
Review URL: https://codereview.chromium.org//11033032
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13257 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 20:20:17 +00:00
hausner@google.com
be9679261e
Better error message for const loop variables
...
issue 5629
The new error message is:
'file:/n.dart': Error: line 4 pos 8: Loop variable cannot be 'const'
for (const i in [1,2,3]) {
^
Review URL: https://codereview.chromium.org//11027036
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13255 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 19:42:25 +00:00
srdjan@google.com
717e3c0396
Support for mixed null/smi equality: do not deoptimize, emit same optimized code as if that was smi-equality only.
...
Moved assert for duplicate class checks into ICData.
Allow CheckClassInstr to check for Smi as well.
Review URL: https://codereview.chromium.org//11048032
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13254 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 19:35:23 +00:00
hausner@google.com
ed960e0432
Add catchless catch clauses
...
The Dart grammar says the catch clause is optional, ie. the following is legal:
try {
...
} on String {
...
}
Added a test case
Review URL: https://codereview.chromium.org//11051031
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13240 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 16:10:45 +00:00
fschneider@google.com
e868adb00c
Renaming Unboxed* IL instructions to shorter names.
...
Since we don't have boxed mint and double operations anymore,
we can use shorter names.
Review URL: https://codereview.chromium.org//11027026
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13237 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 15:54:16 +00:00
sgjesse@google.com
34d3834394
Refactor HttpClient internals to use Uri class for passing connection information
...
This is in preparation for adding proxy server support.
R=ajohnsen@google.com
BUG=
Review URL: https://codereview.chromium.org//11035030
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13232 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 14:11:38 +00:00
kmillikin@google.com
9ca8085565
Do not override (lower) the VM's code heap size for benchmarks tests.
...
R=zerny@google.com
BUG=
Review URL: https://codereview.chromium.org//11036033
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13227 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 13:08:05 +00:00
zerny@google.com
c0418b9d52
Don't inline functions above the deoptimization threshold.
...
Moved deoptimization counter increment code into the PcMarker instruction where it executes on each occurring function in the optimized frame.
R=kmillikin@google.com
Review URL: https://codereview.chromium.org//11031040
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13223 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 12:24:25 +00:00
fschneider@google.com
f60ebcc5fb
Add fast 64-bit bitwise negation to the IA32 optimizing compiler.
...
Review URL: https://codereview.chromium.org//11043020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13221 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 12:01:12 +00:00
kmillikin@google.com
932b29c74e
Pack deopt ID into the return before and return after deopt instructions.
...
Pack it into a machine word-sized bit field along with the object table
index. The commands do not implicitly use the object table index any more,
which allows removing deopt IDs from the object table and pooling function
entries.
R=srdjan@google.com
BUG=
Review URL: https://codereview.chromium.org//11014020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13214 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 09:03:28 +00:00
fschneider@google.com
cb719805d8
Add fast 64-bit integer ADD and SUB to the optimizing compiler.
...
They operate on unboxed 64-bit integers stored in xmm registers.
I also fixed an issue with some SSE 4 specific assembler
tests where we hit an assert with an empty assembler buffer
when running with --no-use-sse41.
Review URL: https://codereview.chromium.org//11016028
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13211 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 08:50:28 +00:00
regis@google.com
1b8e614d7d
Change compile-time errors into dynamic errors in instance creation expression
...
(issue 3085).
Change compile-time errors into dynamic errors in static getter and setter
calls (issues 3088, 3094).
Fix a crash in flow graph builder for missing static getter (issue 4360).
Add support in VM for NoSuchMethodError.
Remove support in VM for StaticResolutionException.
Add, remove, update related language tests.
Triage related co19 tests.
Review URL: https://codereview.chromium.org//11049038
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13208 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 00:15:38 +00:00
asiva@google.com
6076250adb
1. Create a port when a debugger object is created for an isolate, use this
...
port as the unique ID to represent an isolate in the debugger message
format.
2. Switch the Event handler API to use an isolate id instead of the isolate
object itself.
3. Add a unit test case for isolate debugger event handling with an
interrupt of isolate to ensure that interrupting the isolate runs
the interrupt event handler.
Review URL: https://codereview.chromium.org//11052006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13207 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-04 00:13:37 +00:00
asiva@google.com
862687a987
First step towards support for being able to interrupt a running Dart Isolate
...
using the debugger API
- restructure the debug connection handler code to allow a native thread
to accept debug connections and read debug commands
- added a new message queue data structure for being able to dispatch
debug commands on a per isolate basis
- add framework for generic commands and isolate specific commands.
Review URL: https://codereview.chromium.org//10990089
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13186 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-03 17:13:43 +00:00
zerny@google.com
3ae0b96762
Set previous instruction pointers when building the graph.
...
R=kmillikin@google.com
Review URL: https://codereview.chromium.org//11043016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13174 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-03 15:05:27 +00:00
fschneider@google.com
7c13f0a7f4
Remove now unused BinaryMintOp from the IL.
...
It has been replaced with UnboxedMintBinaryOp.
Review URL: https://codereview.chromium.org//11031024
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13172 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-03 14:20:45 +00:00
kmillikin@google.com
8a6dd23f3c
Run canonicalization again after constant propagation.
...
This eliminates smi checks of constant-valued instructions. Also fix
printing of block numbers in code comments.
R=fschneider@google.com
BUG=
Review URL: https://codereview.chromium.org//10989077
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@13170 260f80e4-7a28-3924-810f-c04153c831b5
2012-10-03 11:09:19 +00:00