summary refs log tree commit diff
path: root/src/rt
AgeCommit message (Collapse)AuthorLines
2012-12-15WhitespaceBrian Anderson-8/+11
2012-12-15rt: Do some casting to avoid warningsBrian Anderson-3/+3
2012-12-15Long linesBrian Anderson-2/+8
2012-12-15Check for oom in a few more placesJesse Jones-0/+8
2012-12-15Abort instead of throwing on oomJesse Jones-2/+4
2012-12-15Made a bunch more classes non-copyableJesse Jones-0/+41
2012-12-15Instead of returning a bool (which everyone ignored) pop assertsJesse Jones-6/+3
2012-12-15Check for realloc failure and bad subscriptsJesse Jones-2/+9
2012-12-15polymorphic indexed_list fixes:Jesse Jones-9/+10
1) indexed_list no longer has virtual methods. It's not actually subclassed and there is very rarely good reason to subclass collection classes. 2) Added a virtual dtor to indexed_list_object which is intended to be subclassed. This allows derived dtors to be called if the object is deleted with a indexed_list_object*.
2012-12-15Improvements to array_list, hash_map, and indexed_list:Jesse Jones-16/+45
* Disabled copying. * Added const where appropiate.
2012-12-10Add license boilerplate to more files.Graydon Hoare-0/+470
2012-12-06Remove bogus FIXME, closes #2889Tim Chevalier-1/+1
2012-12-03Update license, add license boilerplate to most files. Remainder will follow.Graydon Hoare-0/+250
2012-11-26Add a FIXME about the problems closing /dev/urandomBrian Anderson-0/+1
2012-11-26Log errors from close instead of ignoring them.Jesse Jones-1/+4
They shouldn't matter but there have been errors on Macs so logging them may help root cause the issue.
2012-11-26Some isaac_ssed fixes:Jesse Jones-4/+7
1) Check for eof (shouldn't happen, but if it does we'll fall into an infinite loop). 2) Use fatal instead of assert (will work if NDEBUG is ever defined and provides better diagnostics). 3) Ignore errors from close since they shouldn't matter. Closes #3679.
2012-11-15rt: Don't print backtraces unless the ::rt::backtrace log level is greater ↵Brian Anderson-1/+1
than log_err
2012-11-15rt: bump log levels up by one, fix tautological-compare error (and permit ↵Graydon Hoare-5/+5
turning off logging entirely).
2012-11-05rt: Remove shape codeBrian Anderson-1927/+8
2012-11-04Merge remote-tracking branch 'brson/repl'Brian Anderson-0/+1728
Conflicts: mk/install.mk src/rt/rustrt.def.in
2012-11-04Use a linenoise with win32 supportBrian Anderson-317/+1355
2012-10-30rusti: Remove linenoise module, add to rt, remove core::rlZack Corr-0/+690
2012-10-23rt: Remove unused string upcalls harderBrian Anderson-33/+0
2012-10-23rt: Remove box annihilatorBrian Anderson-255/+0
2012-10-23rt: Remove unused string upcallsBrian Anderson-35/+0
2012-10-21Replace rust_atomic_increment/decrement and rust_compare_and_swap_ptr with ↵Luqman Aden-13/+1
intrinsics.
2012-10-20Add new uv functions to rustrt.def.inBrian Anderson-0/+4
2012-10-20uv: implement a way to get client's ip/port.Luqman Aden-0/+22
2012-10-04rt: Remove check_claims from the export listBrian Anderson-1/+0
2012-10-04rt: Remove CHECK_CLAIMSBrian Anderson-15/+0
2012-10-03Attempt to fix os::args errors on various platforms.Graydon Hoare-4/+21
2012-10-02libstd: Switch off legacy modes in both core and std.Patrick Walton-0/+12
2012-09-29rt: Check the results of pthread callsBrian Anderson-6/+6
The stage0 compiler is not working on an x86_64 debian wheezy instance and it looks like maye pthread_create is failing
2012-09-25rustc: Fix calls to the logging function when the must_cast flag is true; ↵Patrick Walton-2/+2
stop using shape code for logging
2012-09-25Revert "rustc: Stop using shape code for logging" due to ICEsPatrick Walton-2/+2
This reverts commit ac822a52be47579ffa59d5ca3e125680a79545d0.
2012-09-25rt: Remove the cycle collectorPatrick Walton-609/+0
2012-09-25rustc: Stop using shape code for loggingPatrick Walton-2/+2
2012-09-24rt: Add a logging function for strings (only).Patrick Walton-0/+8
This will be the shape-free replacement for upcall_log_type.
2012-09-24rt: Call the Rust box annihilator; stop calling the cycle collectorPatrick Walton-12/+11
This reverts commit 991cbfe42c8836e8b4adfcaf288d5c0b8d57397c.
2012-09-24Revert "rt: Call the Rust box annihilator; stop calling the cycle collector" ↵Patrick Walton-11/+12
due to crashes This reverts commit bb0ad11252c493ca8de85025411c3f068f529039.
2012-09-24rt: Call the Rust box annihilator; stop calling the cycle collectorPatrick Walton-12/+11
2012-09-21rustc: Shove the address of the box annihilator into the crate mapPatrick Walton-9/+65
2012-09-19V2: now with more locks!Philipp Brüschweiler-24/+34
2012-09-19core: Allocate threads on demand, not on scheduler startupPhilipp Brüschweiler-42/+69
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-13rt: Implement ThreadPerCore scheduling modePhilipp Brüschweiler-1/+8
Fixes #3465.
2012-09-07gc: Refactoring.Elliott Slaughter-1/+1
2012-09-07rt: Add rust_gc_metadata to rustrt.def.in.Elliott Slaughter-0/+1
2012-09-07rt: Fix GC metadata for 64-bit systems.Elliott Slaughter-2/+2
2012-09-07gc: Fix for GC missing stack frames across segment boundaries.Elliott Slaughter-7/+13
2012-09-07gc: Add stack walker for new garbage collector.Elliott Slaughter-31/+191
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.