Commit Graph

174 Commits

Author SHA1 Message Date
Brian Anderson
e325146eb4 Merge remote-tracking branch 'brson/mainthread'
Conflicts:
	src/rt/rust_kernel.cpp
	src/rt/rust_scheduler.cpp
	src/rt/rust_scheduler.h
2012-04-03 20:30:01 -07:00
Brian Anderson
bef72447e7 core: Add a scheduler mode, osmain, to spawn onto the main scheduler 2012-04-03 14:28:30 -07:00
Graydon Hoare
28a0e9c999 Construct new strings through upcalls. 2012-04-02 17:38:06 -07:00
Graydon Hoare
855c99ea75 Some tests for passing and returning structures by value on x64. Close #1402. Close #1970. 2012-03-20 16:44:56 -07:00
Graydon Hoare
869b2d7064 Send string concatenation to specialized upcall, shave 17s off librustc compile time. 2012-03-19 14:29:39 -07:00
Marijn Haverbeke
22bef74b55 Remove shared tydescs
All tydescs are static now, there's no need to worry about
marshalling them between threads anymore.
2012-03-16 15:38:42 +01:00
Marijn Haverbeke
76d07f4056 Remove dynastack support from runtime
Issue #1982
2012-03-16 00:44:06 +01:00
Marijn Haverbeke
146b61189a Get rid of rust_crate_cache in the runtime
We are no longer generating dynamic tydescs or dicts.

Issue #1982
2012-03-16 00:44:06 +01:00
Brian Anderson
561511e628 core: Channels are just port ids 2012-03-15 11:10:53 -07:00
Brian Anderson
ee991cae81 rt: Add a hack to fix a port detach bug 2012-03-05 20:02:25 -08:00
Brian Anderson
958c321083 rt: Fix the atomic get_ref_count method to avoid races 2012-03-05 19:39:56 -08:00
Brian Anderson
1347d04bb0 rt: Properly block tasks while waiting for port detach 2012-03-05 19:39:56 -08:00
Graydon Hoare
6c87c34277 Remove dead code from rt (debug_obj, rust_obj, rust_closure, rust_box_obj, rust_vtable) 2012-03-05 15:50:11 -08:00
Niko Matsakis
def72bda47 retool inline encoding to handle methods, fix tests 2012-03-02 06:47:25 -08:00
Niko Matsakis
7d0958f70f add the ability to snag the frame so we can verify that we are inlining 2012-02-29 11:54:47 -08:00
Jeff Olson
b79b5739c9 add rust_uv_loop_delete to rustrt.def.in 2012-02-28 17:56:15 -08:00
Jeff Olson
bb5960aa57 moving new uv stuff into uv.rs and rust_uv.cpp
- removing the remains of uvtmp.rs and rust_uvtmp.rs
- removing the displaced, low-level libuv bindings
in uv.rs and rust_uv.cpp
2012-02-28 17:56:15 -08:00
Jeff Olson
cf08ed6458 fzzzy's patch for rustrt.def.in
adds new c/c++ methods bound in rust for uvtmp::uv
2012-02-28 17:56:15 -08:00
Chris Peterson
3d202d7eae rt: rename nano_time() builtin to match time::precise_time_ns() 2012-02-18 01:39:42 -08:00
Brian Anderson
54d7bffbb8 rt: Make upcall_vec_push an intrinsic 2012-02-17 12:08:03 -08:00
Brian Anderson
b2cfb7ef82 rt: Add rust_port_select function 2012-02-16 11:12:22 -08:00
Brian Anderson
4cc1e31f74 rt: Add a Rust callback debugging function 2012-02-14 11:24:09 -08:00
Brian Anderson
5d2442d89c rt: Add upcall_call_shim_on_rust_stack 2012-02-09 19:00:16 -08:00
Brian Anderson
1dad32c015 rt: Remove unused builtins 2012-02-09 19:00:15 -08:00
Brian Anderson
d756b01619 rt: Add a function for configuring task notification 2012-02-09 19:00:15 -08:00
Brian Anderson
149d1d4a6e core: Add a test for blocking in native code 2012-02-08 15:42:51 -08:00
Brian Anderson
2f4e7c157e rt: Export a scheduler API 2012-02-08 15:42:51 -08:00
Graydon Hoare
93450abb4b Make process-spawning take environments and working directories, remove procsrv task from compiletest. 2012-02-07 19:57:03 -08:00
Kevin Cantu
6be25c8a0c Adding str::reserve 2012-02-05 14:56:16 -08:00
Marijn Haverbeke
c1b075d042 Remove experimental GC code
It's been sitting unused long enough to have bitrotted completely.
2012-02-03 11:34:12 +01:00
Brian Anderson
57cad61353 rt: Remove task pinning. Does nothing 2012-02-02 18:10:24 -08:00
Brian Anderson
18de0f2aeb rt: Rename task_sleep intrinsic to task_yield. Remove usec param 2012-02-02 18:10:24 -08:00
Niko Matsakis
196d69beb2 make boxes self-describing (fixes #1493)" (take 2)
this will be used to generate a new snapshot.
2012-02-01 18:52:08 -08:00
Niko Matsakis
3116643806 Revert "make boxes self-describing (fixes #1493)" until a new
snapshot is prepared.
2012-02-01 18:50:19 -08:00
Niko Matsakis
c36207bfb8 make boxes self-describing (fixes #1493) 2012-02-01 18:18:07 -08:00
Brian Anderson
fa13fd9d64 rt: Remove set_min_stack 2012-01-29 21:27:37 -08:00
Donovan Preston
3d76922f97 Implement timers. 2012-01-27 14:04:13 -08:00
Donovan Preston
9e39219d9b Shuffle around to work with rust-spidermonkey 2012-01-26 16:01:26 -08:00
Brian Anderson
07f8555b3e std: Add some hacks to use libuv 2012-01-22 20:06:58 -08:00
Niko Matsakis
7bc2930cfa roll back commit 1c7a62 2012-01-17 20:21:09 -08:00
Marijn Haverbeke
1c7a62c93b Use a memset upcall to zero things without static alignment
This fixes issues #843 and #1546. The cost of an upcall is
unfortunate, though. I assume there must be a way to simply manually
compute the pointer or size, using something akin to the formula in
`align_to` in `rust_util.h`. I could not get this to work,
unfortunately.
2012-01-17 14:04:55 +01:00
Brian Anderson
f5f36e8b49 rt: Allow console logging to be turned off 2012-01-13 13:44:09 -08:00
Brian Anderson
0616cba62b libcore: Add sys::set_exit_status
Sets the process exit code
2012-01-12 22:24:27 -08:00
Niko Matsakis
c68345e57e add a log_str() function and allow '%?' in fmt strings to use it 2012-01-11 10:32:54 -08:00
Patrick Walton
d4a4b82973 rt: Export upcall_s_shared_malloc since the SpiderMonkey bindings need it 2012-01-10 10:44:26 -08:00
Niko Matsakis
110c3ccdca add rust_task_is_unwinding predicate and do not kill if already unwinding 2012-01-09 19:53:32 -08:00
Marijn Haverbeke
822acdd170 Make binding of fns with bounded type parameters work
Interns non-static dicts to heap-allocated equivalents so that they no
longer have stack scope.

Closes #1436
2012-01-06 17:40:05 +01:00
Brian Anderson
05bf105c90 rt: Rename asm_call_on_stack to __morestack
Newer gdb's will backtrace through functions named __morestack even
if they change the stack.
2011-12-19 22:05:40 -08:00
Elly Jones
89e880d613 std: file_is_dir -> path_is_dir, add path_exists 2011-12-16 17:37:21 -05:00
Niko Matsakis
1e3259e119 massive refactor of how closures work 2011-12-15 13:44:06 -08:00