Brian Anderson
1b1700f44b
Add core::private::run_in_bare_thread
...
This begins executing Rust code in a fresh context with no runtime environment
2013-01-11 14:53:28 -08:00
Graydon Hoare
12c32e944d
Add license boilerplate to more files.
2012-12-10 17:32:58 -08:00
Brian Anderson
8d932160d9
rt: Remove box annihilator
2012-10-23 12:14:46 -07:00
Luqman Aden
48582b360c
Replace rust_atomic_increment/decrement and rust_compare_and_swap_ptr with intrinsics.
2012-10-21 22:43:28 -04:00
Graydon Hoare
365f174838
Attempt to fix os::args errors on various platforms.
2012-10-03 15:02:22 -07:00
Patrick Walton
9284179311
libstd: Switch off legacy modes in both core and std.
2012-10-02 12:20:06 -07:00
Patrick Walton
f41c53667e
rustc: Fix calls to the logging function when the must_cast flag is true; stop using shape code for logging
2012-09-25 14:56:17 -07:00
Patrick Walton
ee7fa194fa
Revert "rustc: Stop using shape code for logging" due to ICEs
...
This reverts commit ac822a52be
.
2012-09-25 12:17:05 -07:00
Patrick Walton
ac822a52be
rustc: Stop using shape code for logging
2012-09-25 11:44:23 -07:00
Patrick Walton
dbc00ced3a
rt: Add a logging function for strings (only).
...
This will be the shape-free replacement for upcall_log_type.
2012-09-24 20:26:06 -07:00
Philipp Brüschweiler
d3e0a06578
V2: now with more locks!
2012-09-19 14:01:53 -07:00
Philipp Brüschweiler
68e755b1c2
core: Allocate threads on demand, not on scheduler startup
...
API change: rust_kernel::create_scheduler() or
rust_scheduler::rust_scheduler() respecitevly now take ownership of the
launch factory argument, it is needed to create new threads on demand.
Also renames rustrt::sched_threads() to rustrt::rust_sched_threads() for
consistency. Added rustrt::rust_max_sched_threads() to return the
maximal number of scheduled threads of the current scheduler.
Fixes #3493 .
2012-09-19 14:01:53 -07:00
Philipp Brüschweiler
62b51d9152
rt: Implement ThreadPerCore scheduling mode
...
Fixes #3465 .
2012-09-13 20:48:33 +02:00
Elliott Slaughter
961bd48724
gc: Fix for GC missing stack frames across segment boundaries.
2012-09-07 09:21:22 -07:00
Brian Anderson
a0de6b6d5f
Merge remote-tracking branch 'erickt/incoming'
2012-08-31 16:14:18 -07:00
Elliott Slaughter
f8323ac615
rt: Add interface to box annihilator.
2012-08-31 15:10:52 -07:00
Erick Tryzelaar
628b946186
libcore: rewrite str::reserve in pure rust.
2012-08-30 20:40:52 -07:00
Erick Tryzelaar
7bb65848a1
libcore: Rewrite str::unsafe::push_byte in pure rust.
2012-08-30 20:40:52 -07:00
Erick Tryzelaar
0e1a4a4da2
libcore: rewrite vec::unsafe::from_buf in pure rust
2012-08-30 20:40:52 -07:00
Michael Sullivan
5f32e18011
Make std::arena run destructors. Closes #2831 .
2012-08-21 17:03:00 -07:00
Ben Blum
a076c287de
Fix issue-506.rs by adding a void-returning stub in the runtime ( close #2957 )
2012-08-16 21:07:55 -04:00
Ben Blum
bdbad614ac
Remove rust_cond_lock and sys::condition (rename to little_lock)
2012-08-07 18:18:48 -04:00
Ben Blum
4174de8bb9
rt: expose rust_task refcounts to rustland
2012-08-03 21:00:23 -04:00
Ben Blum
60d682b577
Fix asserts & short-read bug in isaac_seed ( #2870 )
2012-07-25 18:03:00 -04:00
Ben Blum
c68f2d9aab
Remove notification channels in runtime ( closes #1078 )
2012-07-25 13:22:43 -04:00
Ben Blum
695ab09899
Change yield() and wait_event() to be MUST_CHECK and return the killed flag. ( closes #2875 )
2012-07-24 18:24:24 -04:00
Ben Blum
2040a5c632
tiny runtime cleanup
2012-07-24 17:35:08 -04:00
Ben Blum
f42a5a1acd
Remove unsupervise
2012-07-24 17:31:43 -04:00
Ben Blum
ae094a7adc
Add 'do atomically { .. }' for exclusives
2012-07-24 15:28:35 -04:00
Ben Blum
4cf6b4d3b4
Tasks should not hold a ref to their parent ( Close #1789 )
2012-07-17 20:45:07 -04:00
Michael Sullivan
aa5b5ab886
Create some infrastructure for building up @-vectors. Work on #2921 .
2012-07-17 17:09:25 -07:00
Ben Blum
cd38377b1b
Add asserts to check fail_sched_loop() only once
2012-07-13 20:13:53 -04:00
Ben Blum
d338879ba5
Reintroduce linked failure (killing runtime)
...
This reverts commit 5724c64549
.
2012-07-13 20:13:53 -04:00
Tim Chevalier
81ecd272d3
Comments only: TODOs to FIXME in the runtime
2012-07-12 19:06:08 -07:00
Ben Blum
5724c64549
Revert linked failure (killing runtime)
...
This reverts commit 200a2ded32
.
2012-07-12 19:49:49 -04:00
Ben Blum
200a2ded32
Fix linked failure with root taskgroup to kill the runtime too.
2012-07-12 18:08:36 -04:00
Ben Blum
9c0b469613
Add rust_task_kill_other
2012-07-11 12:07:06 -04:00
Eric Holk
26e6eb3d14
Handle failure conditions correctly in pipes.
2012-07-10 22:00:47 -07:00
Eric Holk
e5c9cb2b3d
Pipes sleep and wake properly.
2012-07-06 10:42:39 -07:00
Ben Blum
6fc730baf6
Cleanup failure handling around rust_new_task_in_sched - closes #2668
2012-06-28 19:02:48 -04:00
Ben Blum
af2d01e36b
Fix sys::refcount and remove dbg::refcount
2012-06-28 14:40:31 -04:00
Ben Blum
1ba3028d8b
rt: Add task_local_data and related builtin calls ( Closes #2680 )
2012-06-28 00:10:03 -04:00
Graydon Hoare
d3c6119a7a
More keyword paring and migration in runtime, docs, code modes.
2012-06-27 13:30:49 -07:00
Eric Holk
26c11f7b50
Use must_have_lock instead of private functions. (Issue #2700 )
...
I hereby declare that messages sent from the same source arrive in order (Issue #2605 )
Removing FIXME, owned is the correct type here. (Issue #2704 )
Remove outdated FIXME (Issue #2703 )
Updating test for spawning native functions (Issue #2602 )
Removing bogus FIXME (Issue #2599 )
2012-06-22 15:14:42 -07:00
Graydon Hoare
312faf31df
Tag all remaining FIXMEs with bugs. Install rule in tidy script to enforce this.
2012-06-21 16:44:10 -07:00
Tim Chevalier
c814df0bd6
Comments only: annotate FIXMEs
2012-06-21 16:03:28 -07:00
Eric Holk
ec0fbf526e
Fixed a compile error in runtime.
2012-06-19 12:26:58 -07:00
Eric Holk
dc718d97a6
Adding a lock/condition variable to libcore.
2012-06-19 10:31:12 -07:00
Michael Sullivan
b4484d51c1
Some cleanup in the runtime.
2012-06-18 15:54:37 -07:00
Tim Chevalier
3e2006a570
Revert "Adding a lock/condition variable to libcore."
...
This reverts commit e394ebda37
.
2012-06-16 15:34:15 -07:00