sigmund@google.com
5b8ad6bfab
test rename overhaul: step 14 - vm tests
...
Review URL: https://chromiumcodereview.appspot.com//10271014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7245 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-02 16:46:16 +00:00
sgjesse@google.com
b0c5847ac6
Revert socket output stream changes
...
Also mark web_socket_test as flaky on Windows
R=ager@google.com
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10317007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7240 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-02 14:59:17 +00:00
iposva@google.com
a59c00c448
- Grow the class table as needed instead of preallocating.
...
Review URL: https://chromiumcodereview.appspot.com//10311006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7235 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-02 13:22:02 +00:00
ager@google.com
2596d556a9
Deal with symbolic links for file and directories on Mac and Linux.
...
R=sgjesse@google.com
BUG=dartbug.com/2516
TEST=
Review URL: https://chromiumcodereview.appspot.com//10309004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7228 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-02 11:39:21 +00:00
sgjesse@google.com
a108ef203f
Add a web socket client
...
The web socket client is a implemented as a class which is
created from from a HTTP client connection. This way it is
independent from the HTTP client and is just using the HTTP
client.
The protocol handling is mainly re-using the code from the web
socket server.
Change the handling of setting an onNoPendingWrites handler on a
socket output stream. Now setting a new onNoPendingWrites handler
will trigger a callback when there is no pending data to be
written.
Add socket detaching to the HTTP client as well. Add the ability
to get any unparsed data read from the socket for processing
after the protocol upgrade.
R=ager@google.com , ajohnsen@google.com , vsm@google.com , jacobr@google.com
BUG=dart:2001
TEST=tests/standalone/io/web_socket_test.dart
Review URL: https://chromiumcodereview.appspot.com//10262031
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7224 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-02 10:30:38 +00:00
regis@google.com
7793191032
Check upper bounds of type arguments when allocating objects of a generic type
...
at run time when they cannot be checked at compile time.
Review URL: https://chromiumcodereview.appspot.com//10280007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7211 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-02 01:57:22 +00:00
srdjan@google.com
071e9240b9
- Fix another side effect issue: never add AstNode to sequence unless they are a statement. Added tests. LoadLocal has now an optional pseudo input.
...
Review URL: https://chromiumcodereview.appspot.com//10283003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7210 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 23:35:17 +00:00
asiva@google.com
13a9d3a9ee
Skip dart2js compile all benchmark on windows.
...
Review URL: https://chromiumcodereview.appspot.com//10288007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7209 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 22:55:37 +00:00
asiva@google.com
cdc9b0cc60
Set up a variable so that the compiler script can be imported using an import map.
...
Review URL: https://chromiumcodereview.appspot.com//10280003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7208 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 22:15:26 +00:00
srdjan@google.com
137c0167e7
Switch from AST node ids to computation ids (cid). In addition to computations, some instructions need it as well (Return, Throw, ReThrow). Currently added to all Instructions and Computations.
...
Review URL: https://chromiumcodereview.appspot.com//10264031
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7205 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 21:23:00 +00:00
srdjan@google.com
bfebc9cca3
Merge two functions that create side effect free compound load nodes.
...
Review URL: https://chromiumcodereview.appspot.com//10272031
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7201 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 18:43:57 +00:00
asiva@google.com
ea8e3b386d
Fix stack pointer reset bug in entry to catch blocks.
...
Review URL: https://chromiumcodereview.appspot.com//10262033
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7200 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 18:27:19 +00:00
iposva@google.com
4d3c2b94a2
- Add extra checking when validating objects.
...
- Properly set the class tags when converting growable arrays
to fixed length arrays.
- Set the class tag when allocating instantiated type arguments.
Review URL: https://chromiumcodereview.appspot.com//10271032
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7190 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 15:16:02 +00:00
iposva@google.com
3b2781bbc8
- Increase number of classes possible.
...
Review URL: https://chromiumcodereview.appspot.com//10269026
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7186 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 12:54:49 +00:00
iposva@google.com
d8c7c1ada6
- Add a class index to the classes.
...
- Add a class table which assigns individual ids to classes.
Review URL: https://chromiumcodereview.appspot.com//9965042
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7183 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 09:20:40 +00:00
kmillikin@google.com
ca0668bbbe
Materialize all constant operands on the stack in the non-optimizing compiler.
...
This eliminates the distinction between 'value' and 'argument value'.
R=srdjan@google.com
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10264011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7181 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 08:59:54 +00:00
ager@google.com
c2e4045ecd
Fix type assertion error in dart:io File library.
...
R=sgjesse@google.com
BUG=dartbug.com/2776
Review URL: https://chromiumcodereview.appspot.com//10265023
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7179 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 06:32:17 +00:00
asiva@google.com
78c16e4c09
Fix build break.
...
Review URL: https://chromiumcodereview.appspot.com//10269020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7176 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 01:14:23 +00:00
asiva@google.com
f0043a78a7
Added lib/compiler compile all VM benchmark.
...
Added frame lookup VM benchmark.
Review URL: https://chromiumcodereview.appspot.com//10178030
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7175 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 01:00:04 +00:00
srdjan@google.com
3eabbdd7dc
Fix wrong order of execution in compound assignment nodes (located by Kevin).
...
Review URL: https://chromiumcodereview.appspot.com//10270028
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7173 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-01 00:38:02 +00:00
srdjan@google.com
328dadcbbf
Fix disassembler crash.
...
Review URL: https://chromiumcodereview.appspot.com//10272017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7167 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-30 20:46:51 +00:00
ager@google.com
29a3df3e1a
Add the name of the file to exceptions on failed file operations.
...
R=sgjesse@google.com
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10270012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7155 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-30 13:40:10 +00:00
kmillikin@google.com
a4466eaf81
Remove some more uses of named temporaries.
...
Remove all uses of TempVal except those used in expressions with
control flow (&&, ||, and ?:).
R=srdjan@google.com
Review URL: https://chromiumcodereview.appspot.com//10198028
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7144 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-30 08:53:39 +00:00
srdjan@google.com
33b4d35412
Simpler and better inlined type checks as discussed. Changed inline type test cache arrays to contain instance class, instance type argument and instantiator type argument (not yet used).
...
Review URL: https://chromiumcodereview.appspot.com//10243013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7113 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-28 00:06:37 +00:00
mattsh@google.com
cb829918ed
added package_root flag to vm
...
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10134015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7092 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-27 17:23:00 +00:00
ager@google.com
a638ccc0f7
Make sure that errors are thrown when there is no error handler
...
on a FileInputStream.
R=sgjesse@google.com
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10206023
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7075 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-27 12:01:17 +00:00
ager@google.com
989daa8d1d
Fix invalid pointer arithmetic in Linux and MacOS event handler
...
implementations.
R=sgjesse@google.com
BUG=dartbug.com/2759
TEST=
Review URL: https://chromiumcodereview.appspot.com//10243003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7066 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-27 11:07:01 +00:00
ager@google.com
45ee70403f
Add websocket files to dummy io.dart implementation for dart2js.
...
Apparently this file is also used for generating API documentation
now. We need to move away from that and generate the API documentation
from the io_runtime.dart file in the SDK. The dummy implementation
file is not automatically updated and therefore this will keep
breaking.
R=ahe@google.com ,rnystrom@google.com
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10254001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7063 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-27 09:30:49 +00:00
ajohnsen@google.com
feae5bc171
Fix WebSocket header construction for large frames.
...
The spec uses 8 bytes for length if it's larger then 65535. This was
only done when appending data to the header, not when setting the header
size.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10255002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7062 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-27 09:22:22 +00:00
asiva@google.com
d4e2aa22eb
Changes to allow for -O2 compiles on macos in debug builds.
...
Review URL: https://chromiumcodereview.appspot.com//10180013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7052 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-27 01:10:10 +00:00
regis@google.com
c2f823d92b
Support cyclic types and F-bounded quantification (issue 439).
...
Added tests for F-bounded quantification.
Review URL: https://chromiumcodereview.appspot.com//10243001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7047 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 22:39:27 +00:00
srdjan@google.com
87128e61e5
Inline type check where type argument that we check against is instantiated.
...
Review URL: https://chromiumcodereview.appspot.com//10134069
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7046 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 22:17:53 +00:00
asiva@google.com
09adb99a85
Add a stub_code_space in the heap alongside code_space so that stub code generation happens here and it is easy to determine if a PC is a stub code or not.
...
This gets rid of the temporary change made in code_generator.cc for fast access to the top dart frame. In addition it will not pollute the pc ==> code cache that I plan to add next as we don't have to store stub pcs in that table.
Review URL: https://chromiumcodereview.appspot.com//10223015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7033 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 18:00:53 +00:00
sgjesse@google.com
ebc838c963
Check the state of the HTTP request and response when handling headers
...
The HTTP headers object in request and response objects is now marked
as non-mutable when it cannot be changed. An exception will be thrown
if trying to mutate headers when they are not mutable.
Postponed the sending of the headers until either the first byte of
body data is sent or the empty body is indicated. This is to allow
getting the output stream object and still be able to set headers
until the actual body is touched.
Added checking of the number of bytes of body data transmitted when an
explicit content length is specified.
R=ajohnsen@google.com
BUG=none
TEST=tests/standalone/src/io/HttpHeadersState.dart,tests/standalone/src/io/HttpContentLengthTest.dart
Review URL: https://chromiumcodereview.appspot.com//10232006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7010 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 11:43:32 +00:00
sgjesse@google.com
773d86e5fe
Add web socket protocol processor test
...
Unit test of the web socket protocol processor. This test includes
testing splitting a message into several frames.
Fixed the bugs found by adding a test.
R=ager@google.com , ajohnsen@google.com
BUG=dart:2001
TEST=tests/standalone/src/io/WebSocketProtocolProcessorTest.dart
Review URL: https://chromiumcodereview.appspot.com//10173021
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7008 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 11:12:07 +00:00
sgjesse@google.com
f4a87d0e2e
Initial web socket server implementation
...
This implements the web socket protocol as a request handler for
the HTTP server. The HTTP server have been updated with the
ability of getting the socket when a HTTP upgrade request is
processed. This way the web socket implementation is not builtin
to the HTTP server.
The API on the server is:
interface WebSocketConnection {
void set onMessage(void callback(Object message));
void set onClosed(void callback(int status, String reason));
void set onError(void callback(e));
send(Object message);
close([int status, String reason]);
}
This API currently does not have any streaming but collects the
entire message before invoking the onMessage callback. The
current browser web socket API
(http://dev.w3.org/html5/websockets/ ) works the same way. The
underlying web socket protocol can have unbounded messages so
long term this probably have to change. But for now the only
likely client for a web socket server is a browser.
Currently this is missing tests. The implementation has been
tested by running the WebSocketTest.dart script and connecting
using a browser. This testing have been done using Chrome 19 and
Firefox 11.
I will be adding tests in separate change lists.
The SHA-1 and base 64 code (initially written by
ajohnsen@google.com ) can be removed when these algorithms is
available in the dart:crypto.
R=ager@google.com , ajohnsen@google.com , vsm@google.com , jacobr@google.com
BUG=dart:2001
TEST=none
Review URL: https://chromiumcodereview.appspot.com//10205012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6998 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 10:15:30 +00:00
ager@google.com
642f2b1c8e
Fix exception throwing in connection with process starting.
...
For the run constructor, verify the arguments before starting the
underlying process.
R=sgjesse@google.com
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10202014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6995 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 08:56:27 +00:00
sgjesse@google.com
33565cd64a
Change the error handling in dart:io
...
1. Change the argument on all onError handlers from Exception to
Dynamic
2. Throw an exception if an error ocours and there is no error handler
present for handling it.
For sockets there is the complication that an error on a socket is
reported to the socket error handler, and each of the stream error
handlers. The solution to this is to throw an exception if there was
no error handler on either the socket or one of the streams.
Fixed a number of bugs in tests revealed by errors no longer being
silently ignored.
R=ager@google.com
BUG=none
TEST=tests/standalone/src/io/*
Review URL: https://chromiumcodereview.appspot.com//10173024
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6994 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 08:12:17 +00:00
iposva@google.com
843a339045
- Improve marking performance by pre-marking RawInstructions objects,
...
since they are not currently being collected.
- Update svn:ignore properties.
Review URL: https://chromiumcodereview.appspot.com//10232003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6993 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 08:05:41 +00:00
kmillikin@google.com
f6171263ea
Restructure flow-graph translation of increment operations.
...
Remove all explicitly named temporaries. Use the flow-graph builder
visitors to track temporary indexes.
R=srdjan@google.com
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10223003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6991 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 07:36:39 +00:00
kmillikin@google.com
cb03fc4f45
Turn more explicitly named temps into uses of definitions.
...
R=srdjan@google.com
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10228001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6989 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 07:28:43 +00:00
cshapiro@google.com
914bb2a8ff
Explicitly initialize Bigint members after uninitialized allocations.
...
Review URL: https://chromiumcodereview.appspot.com//10230001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6988 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-26 06:39:35 +00:00
srdjan@google.com
f2b894eca2
Fix a typo, caught by windows compiler.
...
Review URL: https://chromiumcodereview.appspot.com//10161036
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6977 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-25 21:30:19 +00:00
srdjan@google.com
72e21058ee
(Redoing the change 6946) Progress toward inlined type checks for classes with type arguments: factor out
...
code, optimize type arguments of an instance.
Review URL: https://chromiumcodereview.appspot.com//10227006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6975 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-25 21:19:08 +00:00
srdjan@google.com
dc17b7338f
Canonicalize type arguments lazily.
...
Review URL: https://chromiumcodereview.appspot.com//10161030
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6973 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-25 20:32:45 +00:00
asiva@google.com
e046be3f87
Address perf regression by using the expected frame layout when traversing frames in the code generator. This is a temporary fix until we have a cache to speed up LookupCode.
...
Review URL: https://chromiumcodereview.appspot.com//10228010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6972 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-25 20:20:29 +00:00
floitsch@google.com
1e61443c14
toRadixString returns lower case characters.
...
Fixes issue 2670.
Review URL: https://chromiumcodereview.appspot.com//10225003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6955 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-25 15:50:36 +00:00
srdjan@google.com
be4b479d8b
Revert change 6946.
...
Review URL: https://chromiumcodereview.appspot.com//10191020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6953 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-25 15:43:44 +00:00
srdjan@google.com
130ca2534f
A 'fix' for issue 2671, toRadixString.
...
Review URL: https://chromiumcodereview.appspot.com//10173014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6948 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-25 15:32:12 +00:00
srdjan@google.com
b34787b742
Progress toward inlined type checks for classes with type arguments: factor out code, optimize type arguments of an instance.
...
Review URL: https://chromiumcodereview.appspot.com//10209002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6946 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-25 15:21:40 +00:00