about summary refs log tree commit diff
path: root/src/libcore/rt/sched
AgeCommit message (Collapse)AuthorLines
2013-05-13core::rt Restructure some modulesBrian Anderson-655/+0
Put all uv code under rt::uv, as if it were in its own crate. Pull local_sched out of rt::sched.
2013-05-13core::rt: Begin implementing TcpStreamBrian Anderson-9/+22
This ended up touching a lot of code related to error handling.
2013-05-12librustc: Make `self` and `static` into keywordsPatrick Walton-20/+20
2013-05-05Merge remote-tracking branch 'mozilla/incoming' into issue-5910-dyna-freezeNiko Matsakis-5/+17
Conflicts: src/libcore/core.rc src/libcore/hashmap.rs src/libcore/num/f32.rs src/libcore/num/f64.rs src/libcore/num/float.rs src/libcore/num/int-template.rs src/libcore/num/num.rs src/libcore/num/strconv.rs src/libcore/num/uint-template.rs src/libcore/ops.rs src/libcore/os.rs src/libcore/prelude.rs src/libcore/rt/mod.rs src/libcore/unstable/lang.rs src/librustc/driver/session.rs src/librustc/middle/astencode.rs src/librustc/middle/borrowck/check_loans.rs src/librustc/middle/borrowck/gather_loans.rs src/librustc/middle/borrowck/loan.rs src/librustc/middle/borrowck/preserve.rs src/librustc/middle/liveness.rs src/librustc/middle/mem_categorization.rs src/librustc/middle/region.rs src/librustc/middle/trans/base.rs src/librustc/middle/trans/inline.rs src/librustc/middle/trans/reachable.rs src/librustc/middle/typeck/check/_match.rs src/librustc/middle/typeck/check/regionck.rs src/librustc/util/ppaux.rs src/libstd/arena.rs src/libstd/ebml.rs src/libstd/json.rs src/libstd/serialize.rs src/libstd/std.rc src/libsyntax/ast_map.rs src/libsyntax/parse/parser.rs src/test/compile-fail/borrowck-uniq-via-box.rs src/test/compile-fail/regions-infer-borrow-scope-within-loop.rs src/test/run-pass/borrowck-nested-calls.rs
2013-05-03add gitattributes and fix whitespace issuesDaniel Micay-1/+0
2013-04-30Merge remote-tracking branch 'brson/io'Brian Anderson-4/+17
Conflicts: src/libcore/task/local_data_priv.rs
2013-04-30allover: numerous unused muts etcNiko Matsakis-2/+0
2013-04-30new borrow checker (mass squash)Niko Matsakis-1/+1
2013-04-24Merge remote-tracking branch 'brson/io'Brian Anderson-4/+16
Conflicts: src/libcore/rt/uvio.rs
2013-04-23Merge remote-tracking branch 'brson/io'Brian Anderson-4/+16
This also reverts some changes to TLS that were leaking memory. Conflicts: src/libcore/rt/uv/net.rs src/libcore/task/local_data_priv.rs src/libcore/unstable/lang.rs
2013-04-23Removing more unnecessary unsafe blocks throughoutAlex Crichton-4/+2
2013-04-23core::rt: Tasks to not require an unwinderBrian Anderson-2/+8
A task without an unwinder will abort the process on failure. I'm using this in the runtime tests to guarantee that a call to `assert!` actually triggers some kind of failure (an abort) instead of silently doing nothing. This is essentially in lieu of a working linked failure implementation.
2013-04-22core::rt: Add unwinding to newsched tasksBrian Anderson-6/+1
2013-04-22core::rt Wire up task-local storage to the new schedulerBrian Anderson-0/+7
2013-04-21core::rt: Add LocalServices for thread-local language servicesBrian Anderson-1/+5
Things like the GC heap and unwinding are desirable everywhere the language might be used, not just in tasks. All Rust code should have access to LocalServices.
2013-04-19core: clean up tests (mostly unused unsafe blocks)Alex Crichton-12/+10
2013-04-19core::rt: Simplify some scheduler operationsBrian Anderson-97/+13
2013-04-19core::rt: Add another context switching operation to the schedulerBrian Anderson-28/+89
`switch_running_tasks_and_then` does a context switch to another task then immediatly runs a closure.
2013-04-19core: More tweaks to the thread-local scheduler interfaceBrian Anderson-83/+81
2013-04-19core: Add rt::context for figuring out what runtime services are availableBrian Anderson-1/+38
Conflicts: src/libcore/rt/sched/mod.rs
2013-04-16Merge remote-tracking branch 'brson/sched-cleanup'Brian Anderson-0/+624
Conflicts: src/libcore/rt/sched/mod.rs
2013-04-15core::rt: Clean up some more hacksBrian Anderson-12/+6
2013-04-15core::rt: Narrow down the unsafety of the thread-local schedulerBrian Anderson-23/+29
Only when borrowing the I/O implementation do we need unsafety
2013-04-15core::rt: Restructure context switches to take ownership of the SchedulerBrian Anderson-45/+70
In order to do a context switch you have to give up ownership of the scheduler, effectively passing it to the next execution context. This could help avoid some situations here tasks retain unsafe pointers to schedulers between context switches, across which they may have changed threads. There are still a number of uses of unsafe scheduler pointers.
2013-04-15core::rt: Make Scheduler::unsafe_local return a fabricated region pointerBrian Anderson-54/+50
Instead of taking a closure. It's unsafe either way. Rename it to unsafe_local_borrow.
2013-04-15core::rt: Rename Scheduler::local to Scheduler::unsafe_localBrian Anderson-11/+15
2013-04-15core::rt: A little bit of cleanup to thread-local schedulerBrian Anderson-20/+13
2013-04-15core::rt: Move thread-local scheduler to its own moduleBrian Anderson-0/+603