Commit Graph

2148 Commits

Author SHA1 Message Date
hausner@google.com 1fae7e102b Disable breakpoint tests until I figure out why they fail on Linux
Review URL: https://chromiumcodereview.appspot.com//9479024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4649 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-27 23:34:53 +00:00
asiva@google.com 26d2689283 Change the generated dart test in CodeIndexTableTest so that it does not induce a deep recursion in the dart code generator.
Review URL: https://chromiumcodereview.appspot.com//9454024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4555 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-23 23:01:45 +00:00
srdjan@google.com e3c98a5e19 Enable new compiler in x64 mode (bail-out all the time, but we can use automated testing).
Disable CodeIndexTable test inde debug x64. This CL includes a pending CL from Kevin (will wait for it to be submitted).
Review URL: https://chromiumcodereview.appspot.com//9443021

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4549 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-23 19:24:14 +00:00
ager@google.com e92d0eab5a Reimplement Windows Monitors.
Now using an event object per thread which is linked into a list
of waiters for the monitor.

Notify takes the first element of the list and notifies (FIFO order).

Notify all extracts the entire list and notifies each of them. This
avoids the issues with fairness and correctness of the previous version.

The MonitorWaitData object holding the event and a pointer to the
next waiter is stored in thread local storage and lazily initialized.

R=sgjesse@google.com,asiva@google.com
BUG=1614
TEST=

Review URL: https://chromiumcodereview.appspot.com//9424050

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4537 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-23 15:24:18 +00:00
sgjesse@google.com 85e0084bd9 Disable all thread pool tests on Windows
The thread pool is actually implemented on Windows, but the current
monitor implementation has some know issues.

R=ricow@google.com

BUG=dart:1673

TEST=

Review URL: https://chromiumcodereview.appspot.com//9363039

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4208 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-14 08:53:34 +00:00
asiva@google.com d50bbba277 Implement support for specifying string interopolation style variable substitution in the import and source statements.
e.g:
sivamach[runtime]>more /workspace/asiva/expr/test1.dart
#library('test1.dart');
#import('${GOOGLE}$SRC/test2.dart');
#import('$DART/test3.dart');
test1() {
  print("test1");
}
main() {
  test1();
  test2();
  test3();
}
sivamach[runtime]>more /workspace/asiva/expr/src/test2.dart
#library('test2.dart');
#source('$GOOGLE$SRC/test2a.dart');
test2() {
  print("test2");
  test2a();
}
sivamach[runtime]>more /workspace/asiva/expr/src/test2a.dart
test2a() {
  print("test2a");
}
sivamach[runtime]>more /workspace/asiva/expr/src/test3.dart
#library('test3.dart');
#source('test3a.dart');
test3() {
  print("test3");
  test3a();
}
sivamach[runtime]>more /workspace/asiva/expr/src/test3a.dart
test3a() {
  print("test3a");
}

sivamach[runtime]>out/Debug_ia32/dart --import_map=GOOGLE,/workspace/asiva/expr --import_map=SRC,src --import_map=DART,/workspace/asiva/expr/src /workspace/asiva/expr/test1.dart
test1
test2
test2a
test3
test3a
Review URL: https://chromiumcodereview.appspot.com//9359009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4199 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-13 22:50:19 +00:00
whesse@google.com 9f27aa3a69 Remove unused support files for old version of tools/test.py.
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9360017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4033 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-08 14:11:42 +00:00
sgjesse@google.com a6071e0880 Thread pool changes
Make one global thread pool instead of a thread pool for each
eventhandler (i.e. isolate).

Also:

* Added handler function for thread pool tasks.
* Added thread pool shutdown.
* Added a simple test.

R=ager@google.com

BUG=
TEST=

Review URL: http://codereview.chromium.org//9112013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3079 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-09 07:38:30 +00:00
hausner@google.com 503e2219b8 First part of inspecting local variables
This change introduces variable descriptors that describe the name, stack slot index, and source code stretch in which a variable is valid.

Activation frames in the stack trace now can enumerate the variables that are active in that frame.

Next step: fetch the value of variables from the stack.
Review URL: http://codereview.chromium.org//8992020

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2671 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 21:40:28 +00:00
asiva@google.com bde808f44b Changes to create an application snapshot which can be layered on top
after an isolate is created and initialized.

Added an option --use_script_snapshot which creates a snapshot of the specified script in an isolate, shuts that down and restarts on a new isolate and loads the script from the snapshot buffer and executes it.
Review URL: http://codereview.chromium.org//8970004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2609 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-20 02:04:24 +00:00
turnidge@google.com 0b833d4977 Add support for interrupting an isolate in the vm. Interrupts are
implemented by extending the existing support for stack overflow
checking in the vm.  When an interrupt is scheduled for an isolate, we
overwrite the isolate's stack limit with a value guaranteed to cause a
stack overflow.

We support multiple kinds of interrupts, encoded in the low bits of
the stack limit.

Add Dart_InterruptIsolate and Dart_InterruptIsolateCallback to the
dart embedding api to allow the embedder to request and handle
interrupts.

Add EXPECT_SUBSTRING(needle, haystack) testing macro.
Review URL: http://codereview.chromium.org//8851008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2529 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-16 18:41:20 +00:00
iposva@google.com 5e1e9534db - Implement the old sweeper.
Review URL: http://codereview.chromium.org//8898034

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2485 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 22:37:35 +00:00
turnidge@google.com 3b9026f21d If an unhandled exception occurs in Dart_RunLoop, pass it out to the caller.
Review URL: http://codereview.chromium.org//8918028

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2438 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-14 18:27:58 +00:00
asiva@google.com 566ff2b3cf Add a tags field to RawObject so that we can tag objects with certain values,
e.g:
- object is canonical
- object was created from snapshot
etc.

Once we have class Ids implemented the current class_ and flags_ words can be
compressed into a single header word.
Review URL: http://codereview.chromium.org//8827016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2211 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 00:43:06 +00:00
asiva@google.com 660b5719bf Add test to expose bug in initialization of objects with native fields in the inline allocation stub. The tests are skipped as another CL fixes the bug.
Review URL: http://codereview.chromium.org//8875001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2209 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 00:23:21 +00:00
asiva@google.com 7ddd0f0b89 First step towards generation of application script snapshots
- Introduce 3 kinds of snapshots (full, application script and messages)
- Added a dart API function to be used for generating an application snapshot
  and for loading the script from an application snapshot.

Next step is to introduce special handling in the WriteTo and ReadFrom
snapshot functions for 'kind == Snapshot::kScript'
Review URL: http://codereview.chromium.org//8772061

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2105 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-06 00:34:49 +00:00
iposva@google.com 3117f4cbfc - Implement a simple old-generation marker.
Review URL: http://codereview.chromium.org//8761006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1962 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-01 02:11:40 +00:00
turnidge@google.com 932628e0fd Add Dart API scoping around the call to Dart_HandleMessage. This
allows us to print the error message in the case that there is an uncaught
exception while handling an inter-isolate message.


Add a couple of unit tests that exercise
Dart_RunLoop/Dart_HandleMessage a bit.
Review URL: http://codereview.chromium.org//8659012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1904 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-29 21:41:00 +00:00
ager@google.com 8580aca8f1 Actually add the VM test configuration file.
R=whesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8461014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1704 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-21 15:45:42 +00:00
ngeoffray@google.com 33ec29bf11 Add a new variable environment for testing, to replace the misusage of 'arch'.
Review URL: http://codereview.chromium.org//8408002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@993 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 09:12:55 +00:00
jrgfogh@google.com 9da32a390f Moved Timer tests to the right directory.
Review URL: http://codereview.chromium.org//8353004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@549 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-19 12:04:27 +00:00
jrgfogh@google.com 999a62bd68 Fixed NullPointerException in Timer.
Review URL: http://codereview.chromium.org//8346030

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@547 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-19 10:00:19 +00:00
turnidge@google.com 804becb850 Deleting the wrong message in FlushAll...
Review URL: http://codereview.chromium.org//8347010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@535 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 21:23:06 +00:00
turnidge@google.com 002eacd251 Fix race.
Review URL: http://codereview.chromium.org//8344017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@534 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 21:19:27 +00:00
turnidge@google.com 44720be924 Mark MessageQueue_WaitNotify flaky again.
Review URL: http://codereview.chromium.org//8349014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@528 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 20:55:54 +00:00
turnidge@google.com bbedbbbc49 Turn the MessageQueue_WaitNotify test back on.
My expectation is that this will turn the mac release tests red.  I
will then follow up with a possible fix.

Can't reproduce the problem locally, so using the buildbot as my testbed :-/.
Review URL: http://codereview.chromium.org//8344014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@524 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 20:18:06 +00:00
iposva@google.com ed7a54dc74 - Flaky on all architectures.
Review URL: http://codereview.chromium.org//8345005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@520 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 18:26:21 +00:00
iposva@google.com d4e000eda7 - Update vm.status file while we figure out crashes.
Review URL: http://codereview.chromium.org//8342005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@518 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 18:20:15 +00:00
ngeoffray@google.com 76ef8258a4 Create a standalone test directory and move tests in runtime/tests/dart (mostly) to that directory.
Review URL: http://codereview.chromium.org//8261009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@393 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 12:44:29 +00:00
sgjesse@google.com 1cd5459f7b Add the ability to run tests with several sets of VM flags
The test-option VMOptions that can be placed in .dart test files can now be specified several times like this:

// VMOptions=
// VMOptions=--short_socket_read
// VMOptions=--short_socket_write
// VMOptions=--short_socket_read --short_socket_write

For each time VMOptions is specified a seperate test will be bun with the specified flags.

Used this to run the tests that uses sockets with short read and writes. Fixed a number of bugs in both stream implementation and in tests revealed by this.

R=iposva@google.com, ngeoffray@google.com

Review URL: http://codereview.chromium.org//8226016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@388 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 10:14:31 +00:00
ager@google.com 59135cc57b Clean up directory listing interface.
Remove open and close. A directory instance just holds a string
representing the path to the directory.

R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8244001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@362 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-12 10:39:30 +00:00
zundel@google.com 42b28f0329 fix build break for running vm tests.
BUG=
TEST=

Review URL: http://codereview.chromium.org//8227031

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@355 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 23:09:07 +00:00
sgjesse@google.com b00030ff38 Disable SocketManyConnectionsTest test on Mac OS
The Mac OS buildbot did not like the test - failed with "Too many open files".

TBR=ager@google.com

BUG=
TEST=

Review URL: http://codereview.chromium.org//8233012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@332 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 15:21:59 +00:00
sgjesse@google.com 74e4e46c2f Fix wrong pointer arithmetic when extending the file descripter list in the eventhandler
This caused random crashes due to memory corruption when the file descripter list in the eventhandler needed to be extended.

R=ager@google.com

BUG=none
TEST=tests/dart/src/SocketManyConnectionsTest.dart

Review URL: http://codereview.chromium.org//8231005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@331 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 15:05:32 +00:00
ager@google.com cf136a7685 Use isolates for directory listing.
Use isolates to make directory listing asynchroneous from the point
of view of the main Dart isolate. Each listing operation will spawn
a new heavy isolate to perform the actually directory listing using
the synchroneous OS primitives.

R=sgjesse@google.com,iposva@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8232005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@327 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 13:12:14 +00:00
sgjesse@google.com b7485553a2 Fix deadlock in process exit handling
As glibc allocation routines are not re-entrant avoid calling delete in signal handler.

Instead the message send from the signal handler on process exit contains both the pid and the exit code. The internal _Process object always installs a data handler for the exit message and calls back into C++ to cleanup the resources allocated for running a process.

Changed the ActiveProcess (renamed to ProcessInfo) to form an explicitly linked list.

R=ager@google.com

BUG=dart:1
TEST=

Review URL: http://codereview.chromium.org//8227010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@325 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 11:26:12 +00:00
ager@google.com f56cef3d57 Skip directory tests when not running on the VM.
R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8220004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@300 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-10 15:19:44 +00:00
ager@google.com c123e91ddd Add simple directory listing test.
For now, just test that we list something and that no errors occur.

R=sgjesse@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8222006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@299 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-10 15:06:28 +00:00
ngeoffray@google.com 96303f1dab Use import directives instead of --expose_core_impl.
Review URL: https://chromereviews.googleplex.com/3561018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@227 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 14:56:12 +00:00
ager@google.com 4914d6c9c6 Windows Sockets: handle client socket close correctly.
When the client closes the socket on which it is listening
GetQueuedCompletionsStatus can return with the error
ERROR_NETNAME_DELETED.

R=sgjesse@google.com
BUG=2
TEST=EchoServerTest.dart

Review URL: https://chromereviews.googleplex.com/3573014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@209 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 11:17:58 +00:00
ager@google.com 6fe04a2202 Mark EchoServerTests as Pass || Crash on Windows while we investigate.
R=sgjesse@google.com
BUG=
TEST=

Review URL: https://chromereviews.googleplex.com/3564014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@197 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 07:56:01 +00:00
asiva@google.com 0b30a49971 5419598: Add a setjmp around the isolate spawning code so that parse errors
are caught and reported as errors.
5417103: Add a setjmp around Dart_Run_Loop so that parse errors
are caught and reported as errors.
Review URL: https://chromereviews.googleplex.com/3553012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@140 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 18:33:36 +00:00
sgjesse@google.com 63782c5c50 Disable process tests on Linux
They can cause timeout once in a while.

R=ager@google.com

BUG=dart:1
TEST=

Review URL: https://chromereviews.googleplex.com/3531019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@130 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 15:25:30 +00:00
sgjesse@google.com 6abaad8aa1 Restructured socket tests and fixed readUntil on InputStream
Most of the socket tests where written with closing both the server and client ends of the socket. However on Windows this can lead to errors once in a while (WSAECONNRESET). The tests now closes the socket in the client and and waits for a close event on the server side.

The readUntil on InputStream did not take data in the internal buffer into account. This has been fixed and the related test have been rewritten to check for two patterns which together will match all the input.

R=ager@google.com

BUG=
TEST=

Review URL: https://chromereviews.googleplex.com/3536016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@126 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 14:47:49 +00:00
floitsch@google.com 15727ed074 Rename DateTime to Date.
Review URL: https://chromereviews.googleplex.com/3529013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@107 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 10:14:49 +00:00
zundel@google.com 78d16cca6c Create a directory for python package, move 'testing' in there
Review URL: https://chromereviews.googleplex.com/3514028

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 14:01:12 +00:00
sgjesse@google.com f4b71c573b First step in enabling the process tests
This will enable the process tests for debug mode on Linux and Mac OS.

When access to command line options becomes available I will pass the full path to the process_test executable on the command line instead of hard-coding a relative path.

R=ager@google.com

BUG=
TEST=

Review URL: https://chromereviews.googleplex.com/3524014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 10:31:37 +00:00
dgrove@google.com 4c0f559d23 Initial checkin.
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 05:20:07 +00:00