Commit Graph

18017 Commits

Author SHA1 Message Date
Brian Anderson
390dde571e core::rt: Rename Task to Coroutine 2013-05-15 12:19:16 -07:00
Brian Anderson
7f5746f6d2 core::rt: Rename Sched.task_queue to work_queue 2013-05-15 12:19:16 -07:00
Brian Anderson
56c0b188b6 rt: Rename sched_key to rt_key
It is more general-purpose than holding scheduler pointers
2013-05-15 12:19:16 -07:00
Brian Anderson
c42b03de17 core::rt: Fix scheduling logic for enqueued tasks 2013-05-15 12:19:15 -07:00
Brian Anderson
4724966b06 core::rt: Add uv timer bindings 2013-05-15 12:19:15 -07:00
Brian Anderson
76e097761e core::rt: read raises read_error 2013-05-15 12:19:15 -07:00
Brian Anderson
b764d4cb4f core::rt: Begin implementing Reader extension methods 2013-05-15 12:19:15 -07:00
Brian Anderson
013b7760b7 core: Turn task::unkillable, etc. into no-ops in newsched. #6377
Not necessary just yet but they make ARC not work.
2013-05-15 12:19:15 -07:00
Brian Anderson
afcf4f2639 core::rt: Don't abort when reporting an unknown uv error 2013-05-15 12:19:15 -07:00
Brian Anderson
174ec1e422 core::rt: Error handling for TcpStream.read 2013-05-15 12:19:15 -07:00
Brian Anderson
0a54bad3d1 core::rt: Initialize logging 2013-05-15 12:19:14 -07:00
Brian Anderson
cc2897d559 core: Replace use of libc::getenv with os::getenv 2013-05-15 12:19:14 -07:00
Brian Anderson
f6401bad24 core: Use a global lock instead of runtime lock for os::getenv, etc. #4726 2013-05-15 12:19:14 -07:00
Brian Anderson
36ad366519 core::rt: Add a test of standalone use of the runtime 2013-05-15 12:19:14 -07:00
Brian Anderson
bfd9aa9755 core:rt: A few micro-opts 2013-05-15 12:19:14 -07:00
Brian Anderson
6a6076ae81 core::rt: Ignore tcp test multiple_connect_interleaved_lazy_schedule
Hangs on mac.
2013-05-14 19:06:22 -07:00
Brian Anderson
b04fce6a90 Merge remote-tracking branch 'brson/io-upstream' into incoming
Conflicts:
	src/libcore/logging.rs
	src/libcore/rt/local_services.rs
	src/libcore/rt/uv/mod.rs
	src/libcore/rt/uv/net.rs
	src/libcore/rt/uv/uvio.rs
	src/libcore/unstable.rs
2013-05-14 15:30:01 -07:00
Brian Anderson
ee0ce64d9d core::rt: Wait for handles to close 2013-05-14 14:52:07 -07:00
Brian Anderson
204e3d82cc core::rt: Register stacks with valgrind. #6428 2013-05-14 14:52:07 -07:00
Brian Anderson
f934fa73ac core::rt: Docs 2013-05-14 14:52:07 -07:00
Brian Anderson
329dfcaba0 core: Move unstable::exchange_alloc to rt::global_heap 2013-05-14 14:52:07 -07:00
Brian Anderson
52f015aceb core: Cleanup warnings 2013-05-14 14:52:07 -07:00
Brian Anderson
4472a50ceb rtdebug off 2013-05-14 14:52:07 -07:00
Brian Anderson
101aaa3861 core::rt: 0 is a valid TLS key 2013-05-14 14:52:06 -07:00
Brian Anderson
d234cf7e44 core::rt: Make TCP servers work 2013-05-14 14:52:06 -07:00
Brian Anderson
414f3c7d25 core::rt: Add a simple channel type for passing buffered messages between Scheduler and Task
Called 'Tube' for lack of anything better.
2013-05-14 14:52:06 -07:00
Brian Anderson
40a9de5ebc core::rt: Add a very simple ref counted pointer 2013-05-14 14:52:06 -07:00
Brian Anderson
936fce5515 Warnings 2013-05-14 14:52:06 -07:00
Brian Anderson
272c3c2cfb Tidy 2013-05-14 14:52:06 -07:00
Brian Anderson
10355d7a7d core::rt Wire up logging to newsched tasks 2013-05-14 14:52:06 -07:00
Brian Anderson
ad6719ee0b core::rt: Just a small fix to TcpStream 2013-05-14 14:52:06 -07:00
Brian Anderson
a134503d74 core::rt: Move all the uv callback definitions to one place 2013-05-14 14:52:06 -07:00
Brian Anderson
dbf89664aa core::rt: Move the implementation of IdleWatcher to its own file 2013-05-14 14:52:06 -07:00
Brian Anderson
9138feab15 core::rt: Only use one mechanism for attaching custom data to uv handles 2013-05-14 14:52:06 -07:00
Brian Anderson
91ca3a9b29 core::rt: Reording code 2013-05-14 14:52:05 -07:00
Brian Anderson
6ab02c03da core::rt: Convert some uv functions to extension methods 2013-05-14 14:52:05 -07:00
Brian Anderson
cfd183db15 core::rt: Fix some copies in uv 2013-05-14 14:52:05 -07:00
Brian Anderson
b771c99304 core::rt: Fix the finalizer on UvTcpStream and UvTcpListener
Eliminates a lot of calls to `close`
2013-05-14 14:52:05 -07:00
Brian Anderson
01b7b7d5a0 core::rt: Use unsafe pointers instead of transmuted regions 2013-05-14 14:52:02 -07:00
bors
043d02213e auto merge of #6468 : gifnksm/rust/rposition-immutable, r=brson
`position` and `rposition` belonged to `ImmutableCopyableVector`, but they don't need the value is copyable.
2013-05-14 14:05:07 -07:00
bors
d217174987 auto merge of #6479 : brson/rust/flatpipes, r=brson 2013-05-14 12:25:54 -07:00
Brian Anderson
133aabc5bb Ignore two failing flatpipes tests 2013-05-14 11:35:10 -07:00
bors
06c46d5142 auto merge of #6467 : alexcrichton/rust/better-rusti, r=bstrie
These few commits address a few existing issues:

* #5469 - adding regression tests for `rusti`. This adds unit tests to the `rusti.rc` file (which needed some reorganization of the Makefile, see the first commit message). These are super-simple right now, and sadly can't test the output of the tests. I worked for a bit on making a compiletest version of the rusti tests, but I ended up hitting something which blocked me, although I've forgotten it by this point.
* #5937 - regression test added, and it's fixed
* #5803 - just doesn't appear to happen any more
* #5784 - it's no longer broken, and it no longer spits out warnings about unused variables.

I also did some investigation into #5774, and you may want to read the comment I left on the bug. The gist of the situation is that C++ exceptions across JIT code don't look like they're working, even though they [should be working](3aa1122ec2/src/rustllvm/RustWrapper.cpp (L387)). If anyone has any insight on this, that would be awesome!
2013-05-14 11:22:51 -07:00
Alex Crichton
2ab1da5b01 Fix rustpkg tests now that they're in a different location 2013-05-14 14:11:30 -04:00
Alex Crichton
8b87fd7ec0 Don't emit common warnings in rusti 2013-05-14 14:11:29 -04:00
Alex Crichton
9af04f3e77 Add regression tests for various other rusti issues 2013-05-14 14:11:08 -04:00
Alex Crichton
4a9d8ff1a7 Fix use statements with rusti 2013-05-14 14:11:07 -04:00
Alex Crichton
54f2147e8e Get unit tests for rusti working
* They didn't work before, because the location of the tests caused the
  'sysroot' option to crate lookup to be wrong for finding the correct stage's
  core/std libraries. This moves the compiled tests from the $host/test
  directory into a $host/$stage/test directory. This means that the sysroot will
  be correct and the core/std libraries can actually be found
* The LLVM bindings apparently aren't threadsafe, so we can't run multiple tests
  in parallel.
2013-05-14 14:11:07 -04:00
bors
767e3ae86c auto merge of #6434 : alexcrichton/rust/less-implicit-vecs, r=bstrie
This closes #5204 and #6421.

This also removes the `vecs_implicitly_copyable` lint (although now reading #6421, this may not be desired?). If we want to leave it in, it at least removes it from the compiler.
2013-05-14 10:10:54 -07:00
Alex Crichton
ffcc680f9c Fix test fallout from removing vecs_implicitly_copyable 2013-05-14 12:25:19 -04:00