about summary refs log tree commit diff
path: root/src/rt/rust_util.h
AgeCommit message (Collapse)AuthorLines
2011-09-02Add a rust_str typedef to the runtime. Issue #855Brian Anderson-2/+4
2011-09-02Rename istr-stuff to str in the runtime. Issue #855Brian Anderson-1/+1
2011-09-02Remove estrs and evecs from runtime. Issue #855Brian Anderson-30/+0
2011-09-01Factor out make_istr utility function in runtime. Issue #855Brian Anderson-0/+13
2011-08-29Factor vector reserve code in runtime into its own functionMarijn Haverbeke-0/+9
2011-08-29Implement non-internal ivecsMarijn Haverbeke-17/+7
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-18Make windows respect RUST_SEED. Closes #627.Michael Sullivan-11/+10
2011-08-18Remove rc_base. Closes #603.Michael Sullivan-15/+5
2011-08-18Rename rust_vec to rust_evecBrian Anderson-5/+5
2011-08-17rustc: Use obstacks in lieu of dynamically-allocated frames only when the ↵Patrick Walton-0/+10
frame is actually dynamically-sized
2011-08-17Revert "rt: Use obstacks in lieu of dynamically-sized frames"Patrick Walton-10/+0
This reverts commit cc5fcfce89312042e52401eb883160ebf289235f.
2011-08-17rt: Use obstacks in lieu of dynamically-sized framesPatrick Walton-0/+10
2011-08-10rt: Use _LP64 instead of SIZE_MAX and UINT64_MAX to try to put out the ↵Patrick Walton-1/+1
burning tinderbox
2011-08-10rt: Attempt to quiet MinGW by including limits.hPatrick Walton-0/+1
2011-07-28Do all runtime calls to getenv at initializationBrian Anderson-1/+1
getenv is not threadsafe and (maybe as a result) it's randomly crashing with CFLAGS=-g and RUST_THREADS=32. Calls from rust code are still on their own.
2011-07-28Updating to work on Windows.Eric Holk-3/+3
2011-07-28Per-thread scheduling. Closes #682.Eric Holk-1/+2
Tasks are spawned on a random thread. Currently they stay there, but we should add task migration and load balancing in the future. This should drammatically improve our task performance benchmarks.
2011-07-21Lots of work on memory tracking and channels.Eric Holk-2/+2
We're trying to get closer to doing correct move semantics for channel operations. This involves a lot of cleanup (such as removing the unused sched parameter from rust_vec constructor) and making circular_buffer kernel_owned. Added tagging for memory allocations. This means we give a string tag to everything we allocate. If we leak something and TRACK_ALLOCATIONS is enabled, then it's much easier now to tell exactly what is leaking.
2011-07-19Fix calculation of sizeof boxed ivec of str in rt. Closes #712Brian Anderson-0/+1
2011-07-13Prohibit trailing whitespace under 'tidy' script. Clean up all caught cases.Graydon Hoare-3/+3
2011-07-13Fix compile-command lines in rt.Graydon Hoare-1/+1
2011-07-07Tightened up the scoping for our various new operators, which shouldEric Holk-0/+4
make it harder to use the wrong one.
2011-06-28Renamed what's left of rust_dom to rust_schedulerEric Holk-26/+27
2011-06-28Moved win32_require to the kernel.Eric Holk-3/+3
2011-06-28Removed dom_owned, splitting things between task_owned and kernel_owned. Had ↵Eric Holk-23/+26
to re-xfail a few tests brson recently un-xfailed.
2011-06-14rustc: Implement on-heap resizing for interior vectorsPatrick Walton-2/+2
2011-06-13rustc: Implement simple interior vector append translationPatrick Walton-0/+24
2011-04-19Overhaul logging system in runtimeMarijn Haverbeke-6/+4
See https://github.com/graydon/rust/wiki/Logging-vision The runtime logging categories are now treated in the same way as modules in compiled code. Each domain now has a log_lvl that can be used to restrict the logging from that domain (will be used to allow logging to be restricted to a single domain). Features dropped (can be brought back to life if there is interest): - Logger indentation - Multiple categories per log statement - I possibly broke some of the color code -- it confuses me
2011-04-07Move to macro-based logging checks in the C++ codeMarijn Haverbeke-2/+2
No functions should be called for log statements that turn out to be inactive.
2011-04-02Change rust_vec to have a 16-byte header, to 16-byte-align vec-body data. ↵Graydon Hoare-0/+1
Major perf win.
2011-03-14Add basic file-system functionalityMarijn Haverbeke-4/+1
std.fs.list_dir will list the files in a directory, std.fs.file_is_dir will, given a pathname, determine whether it is a directory or not.
2010-08-09Added peek() to ptr_vec.Michael Bebenita-0/+7
2010-08-09Added the RUST_SEED env variable to seed the Rust task scheduler -- helpful ↵Michael Bebenita-5/+14
when debugging task race conditions within a single thread domain.
2010-07-25Attempt number 1 at extinguishing the windows tree remotely (apologies to ↵Roy Frostig-3/+3
those hacking on Sunday evening PST).
2010-07-25Expose an RNG (the one used by our runtime) to Rust via std.Roy Frostig-0/+32
2010-07-19Added a message passing system based on lock free queues for inter-thread ↵Michael Bebenita-2/+2
communication. Channels now buffer on the sending side, and no longer require blocking when sending. Lots of other refactoring and bug fixes.
2010-06-23Populate tree.Graydon Hoare-0/+155