about summary refs log tree commit diff
path: root/src/rt
AgeCommit message (Collapse)AuthorLines
2011-09-01Check error code in rust_file_is_dir. Prevent comparison of uninitialized memBrian Anderson-1/+3
2011-09-01Remove a bunch of string builtins. Issue #855Brian Anderson-88/+0
2011-09-01rt: Allow iteration over the dynastackPatrick Walton-17/+109
2011-09-01rt: Make logging more resilient to null vector pointers (useful when ↵Patrick Walton-2/+8
debugging GC)
2011-09-01rt: Make debug string in rust_obstack slightly prettierPatrick Walton-1/+1
2011-09-01rt: Zero out dynamic allocas for nowPatrick Walton-0/+1
2011-09-01rt: Include rust_shape.h in rust_obstack.cpp and remove the duplicate ↵Patrick Walton-3/+2
DPRINT() macro
2011-09-01rt: Add a missing FIXME to rust_obstack.cpp for segmented stacksPatrick Walton-1/+1
2011-09-01rt: Remove duplicate DPRINT() macro from rust_gc.cppPatrick Walton-2/+0
2011-09-01rt: Disable debug spew in rust_shapePatrick Walton-4/+4
2011-08-31Expose STDERR to rust.Erick Tryzelaar-0/+2
2011-08-31rt: Make the dynamic stack self-describingPatrick Walton-19/+60
2011-08-31rt: Set n_params appropriately in upcall_get_type_descPatrick Walton-0/+1
2011-08-31rt: Prevent trailing commas from showing up when logging oddly aligned arraysPatrick Walton-16/+24
2011-08-31rt: Introduce "end_dp" bailouts in order to avoid marching past the end of ↵Patrick Walton-19/+32
oddly aligned vectors
2011-08-31rt: Make |align| a member of the shape glue class instead of threading it ↵Patrick Walton-231/+240
through every function
2011-08-30Allow main to take istrs. Issue #855Brian Anderson-3/+48
2011-08-30rt: Override the character interpretation of u8/i8 values when loggingPatrick Walton-1/+19
2011-08-30rt: Fix logging of type-parametric resourcesPatrick Walton-26/+30
2011-08-30rustc: Allow non-type-parametric resources to be loggedPatrick Walton-20/+62
2011-08-29rt: Have data::walk_fn be defensive regarding whether the derived ↵Patrick Walton-1/+2
implementation of walk_fn moves the data pointer
2011-08-29rt: Move to a custom alignof since __alignof__ returns the "preferred" ↵Patrick Walton-12/+30
alignment rather than the one that gets used in structs
2011-08-29rt: Don't dereference a null pointer when traversing a function with no ↵Patrick Walton-2/+3
environment
2011-08-29Rename upcall_istr_push to rust_istr_push in rustrt.def.inBrian Anderson-1/+1
2011-08-29Make std::istr::push_byte efficientMarijn Haverbeke-2/+11
It used to allocate two (!) heap values per pushed byte. It now goes through a runtime function that simply grows the istr and writes the byte.
2011-08-29Factor vector reserve code in runtime into its own functionMarijn Haverbeke-21/+13
2011-08-29Implement non-internal ivecsMarijn Haverbeke-406/+132
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-26rt: Allow closures to be loggedPatrick Walton-9/+46
2011-08-25rt: Null check in walk_obj_contents. Prevents marking from crashing when ↵Patrick Walton-0/+2
calling object constructors.
2011-08-25rt: Remember the number of captured type descriptors for objects in the type ↵Patrick Walton-0/+8
descriptor crate cache
2011-08-25rustc: Add an extra flag to object tydescs so that shapes know how to find ↵Patrick Walton-8/+12
the captured subtydescs
2011-08-25Cleaning up task and comm exports, updating all the test cases.Eric Holk-2/+3
2011-08-24rt: Fix walk_obj_contents for type-parameteric objects. Hash tables can be ↵Patrick Walton-27/+41
logged now.
2011-08-24rt: Factor out type param construction into from_tydesc and from_obj_shape. ↵Patrick Walton-31/+50
(The latter is unimplemented at the moment.)
2011-08-24rt: Print out fields of objects when logging themPatrick Walton-2/+35
2011-08-24Return an error code after fail under win32Brian Anderson-1/+1
2011-08-24Revert "Back out copy-glue"Marijn Haverbeke-1/+3
This reverts commit 629ee94a0b360e2df1a1bbf7bf61ef346adf36ad.
2011-08-24Back out copy-glueMarijn Haverbeke-3/+1
This wasn't a good idea after all.
2011-08-24Remove rust_start_ivecMarijn Haverbeke-9/+0
2011-08-24Optimize += [x] into a simple push operationMarijn Haverbeke-0/+25
This is a preparation for making vectors always-on-the-heap again, which would cause way too much malloc traffic for this idiom. I will add an efficient std::vec::push in the future, and migrate += [x] to that instead. Reduces compiler code size by 3%
2011-08-22Add skeleton of copy glue that actually copiesMarijn Haverbeke-1/+3
2011-08-22Rename copy_glue back to take_glueMarijn Haverbeke-4/+4
2011-08-22Pass structural types by pointer, not by valueMarijn Haverbeke-3/+2
If we lose tail calls, this is possible. It simplifies things a lot. Direct motivation: We want ivecs with pointers pointing into themselves. When copying those, the pointers have to be adjusted. It is impossible to this when copying them with Load/Store.
2011-08-20Conditionally define CDECL and FASTCALL on windowsBrian Anderson-0/+4
These may already be defined by other includes. Hopefully puts out the windows fire.
2011-08-20Fix comment typosBrian Anderson-2/+2
2011-08-20Rewrite reap_dead_tasks to never grab the sched lock before a task lockBrian Anderson-5/+47
Doing so contradicts the locking order used everywhere else and causes deadlocks. Un-XFAIL task-perf-spawnalot Closes #854
2011-08-20rustc: Introduce ABI versioning so we can change value representations ↵Patrick Walton-0/+14
without breaking the compiler
2011-08-20rt: Move the GetProcAddress/dlsym stuff out of rust_gc.cpp into rust_abi.hPatrick Walton-18/+43
2011-08-20Move bump_dp, get_dp from rust_shape.cpp to rust_shape.hBrian Anderson-18/+18
Put out the darwin fire for real
2011-08-20Revert "Add another 'using namespace shape' inside namespace shape"Brian Anderson-2/+0
This reverts commit 09f4cd90a852b69bb72fc5385fdabbde39f5fb91.