about summary refs log tree commit diff
path: root/src/rt/rust.cpp
AgeCommit message (Collapse)AuthorLines
2012-10-04rt: Remove CHECK_CLAIMSBrian Anderson-8/+0
2012-10-03Attempt to fix os::args errors on various platforms.Graydon Hoare-1/+1
2012-09-24rt: Call the Rust box annihilator; stop calling the cycle collectorPatrick Walton-0/+4
This reverts commit 991cbfe42c8836e8b4adfcaf288d5c0b8d57397c.
2012-09-24Revert "rt: Call the Rust box annihilator; stop calling the cycle collector" ↵Patrick Walton-4/+0
due to crashes This reverts commit bb0ad11252c493ca8de85025411c3f068f529039.
2012-09-24rt: Call the Rust box annihilator; stop calling the cycle collectorPatrick Walton-0/+4
2012-09-07gc: Add stack walker for new garbage collector.Elliott Slaughter-0/+3
Safe points are exported in a per-module list via the crate map. A C runtime call walks the crate map at startup and aggregates the list of safe points for the program. Currently the GC doesn't actually deallocate memory on malloc and free. Adding the GC at this stage is primarily of testing value. The GC does attempt to clean up exchange heap and stack-allocated resource on failure. A result of this patch is that the user now needs to be careful about what code they write in destructors, because the GC and/or failure cleanup may need to call destructors. Specifically, calls to malloc are considered unsafe and may result in infinite loops or segfaults.
2012-06-28Cleanup failure handling around rust_new_task_in_sched - closes #2668Ben Blum-0/+1
2012-06-21Tag all remaining FIXMEs with bugs. Install rule in tidy script to enforce this.Graydon Hoare-2/+2
2012-06-21Comments only: annotate FIXMEsTim Chevalier-2/+2
2012-06-02rt: Improve docs for main, kernel, scheduler, and taskBrian Anderson-7/+30
2012-05-30Various changes for self-describing vecsBrian Anderson-2/+2
2012-04-03Merge remote-tracking branch 'brson/mainthread'Brian Anderson-1/+1
Conflicts: src/rt/rust_kernel.cpp src/rt/rust_scheduler.cpp src/rt/rust_scheduler.h
2012-04-03Refactor includes structure, getting rid of rust_internal.hJon Morton-2/+3
Many changes to code structure are included: - removed TIME_SLICE_IN_MS - removed sychronized_indexed_list - removed region_owned - kernel_owned move to kernel.h, task_owned moved to task.h - global configs moved to rust_globals.h - changed #pragma once to standard guard in rust_upcall.h - got rid of memory.h
2012-04-02rt: Run a single-threaded scheduler on the main threadBrian Anderson-1/+1
2012-04-01remove rust_srvJon Morton-3/+1
2012-03-31rt: Introduce rust_sched_reaperBrian Anderson-1/+1
This just moves the responsibility for joining with scheduler threads off to a worker thread. This will be needed when we allow tasks to be scheduled on the main thread.
2012-03-31rt: Rename rust_task_thread to rust_sched_loopBrian Anderson-3/+2
This class no longer represents a thread; it just schedules tasks.
2012-03-21rt: Stop using large stacks for the main taskBrian Anderson-3/+1
2012-03-15rt: Remove remaining uses of rust_kernel::get_task_by_idBrian Anderson-4/+1
2012-02-08rt: Refactor the rust_kernel interface a bitBrian Anderson-3/+4
2012-02-07Make process-spawning take environments and working directories, remove ↵Graydon Hoare-10/+1
procsrv task from compiletest.
2012-02-03rt: Do all task creation through a schedulerBrian Anderson-1/+3
2012-02-03rt: Extract rust_scheduler from rust_task_threadBrian Anderson-1/+1
2012-02-03rt: Rename rust_scheduler to rust_task_threadBrian Anderson-3/+3
2012-01-29rt: Make the initial segment of the main task's stack 1MBBrian Anderson-1/+3
This is a trick to fool microbenchmarks. Closes #1681
2012-01-06fix how we walk functions to match new closure fmtNiko Matsakis-0/+1
2012-01-06rewrite task testsNiko Matsakis-1/+1
2012-01-06simplify task implNiko Matsakis-2/+1
2011-11-17rt: Remove debug printf in rust_startBrian Anderson-1/+0
2011-11-17rt: More work on morestackPatrick Walton-0/+3
2011-11-16Revert "rt: More work on morestack"Brian Anderson-3/+0
This reverts commit 68aff2ad6d55a051e9347aa38f945d114f282691.
2011-11-16rt: More work on morestackPatrick Walton-0/+3
2011-11-14Revert "rt: More work on morestack"Patrick Walton-3/+0
This reverts commit ced0d4f15e11e2c74766d1055146946ded3fba51.
2011-11-14rt: More work on morestackPatrick Walton-0/+3
2011-10-20Don't rely on main.ll anymoreMarijn Haverbeke-3/+1
I'll remove the actual file after I register a snapshot. Issue #992
2011-10-05remove pthread_exit() from rust_start()Niko Matsakis-6/+0
It was causing OS X Lion to hang and (according to Apple) is undefined in any case
2011-09-03Remove unused runtime functions. Issue #855Brian Anderson-6/+0
2011-09-02Add a rust_str typedef to the runtime. Issue #855Brian Anderson-2/+2
2011-09-02Rename istr-stuff to str in the runtime. Issue #855Brian Anderson-3/+3
2011-09-02Remove estrs and evecs from runtime. Issue #855Brian Anderson-42/+6
2011-09-01Remove lots of estr code from rustc. Issue #855Brian Anderson-2/+1
2011-09-01Factor out make_istr utility function in runtime. Issue #855Brian Anderson-8/+3
2011-08-30Allow main to take istrs. Issue #855Brian Anderson-3/+41
2011-08-29Implement non-internal ivecsMarijn Haverbeke-14/+6
Vectors are now similar to our old, pre-internal vectors, except that they are uniquely owned, not refcounted. Their name should probably change too, then. I've renamed them to vec in the runtime, will do so throughout the compiler later.
2011-08-24Remove rust_start_ivecMarijn Haverbeke-8/+0
2011-08-18Remove oldvecs from runtime command line processingBrian Anderson-30/+19
2011-08-18Simplify the _rust_main/rust_start interfaceBrian Anderson-14/+11
rust_start will always call _rust_main with the command line args, and it is _rust_main's responsibility to free the args ivec heap. _rust_main will be generated slightly differently depending on whether main takes an ivec or not: if so then it's just passed through to main, otherwise it frees the ivec directly.
2011-08-18Continue transition to an ivec-only mainBrian Anderson-26/+17
Only generate a single main function. Rename rust_start_ivec to rust_start, leaving a transitional rust_start_ivec in place.
2011-08-16Accept main(args: [str]) as main signatureBrian Anderson-4/+44
2011-08-15Properly ref counting to fix valgrind issues on linux.Eric Holk-0/+2