Brian Anderson
4c4a2320eb
rt: Make rust_port_detach less contentious
...
It still utterly dominates some benchmarks with busy waiting, but at least it
doesn't create lock contention while doing so.
2012-03-05 19:39:56 -08:00
Brian Anderson
0a5603cb58
rt: Make linked failure less prone to deadlock
...
Still a mess.
2012-03-05 19:39:56 -08:00
Brian Anderson
cc276fe3c9
rt: Be more precise with VALGRIND_MAKE_MEM_UNDEFINED
2012-03-05 19:39:56 -08:00
Brian Anderson
c78da1e170
rt: Stop calling prepare_valgrind_stack when it's not needed
2012-03-05 19:39:56 -08:00
Brian Anderson
f057f00300
rt: Simplify reap_dead_tasks
2012-03-05 19:39:56 -08:00
Brian Anderson
8efe4b8913
rt: Add an assert to the scheduler loop
2012-03-05 19:39:56 -08:00
Brian Anderson
e08f46db68
rt: Move receive code into rust_port
2012-03-05 19:39:56 -08:00
Brian Anderson
77295c56c5
rt: Simplify the recv interface
2012-03-05 19:39:56 -08:00
Brian Anderson
8e0efce0da
rt: Move some code from rust_port_detach into rust_port::detach
2012-03-05 19:39:56 -08:00
Brian Anderson
93fa933a19
rt: Move some locking from rust_port to rust_task
2012-03-05 19:39:56 -08:00
Brian Anderson
e3ccac8ed3
rt: Renome rust_task::lock to port_lock
2012-03-05 19:39:55 -08:00
Brian Anderson
fa566ad2fd
rt: Make the rust_task_thread lock private
2012-03-05 19:39:55 -08:00
Brian Anderson
2465a63a69
rt: Move transition from rust_task to rust_task_thread
2012-03-05 19:39:55 -08:00
Brian Anderson
237652299e
rt: Protect cond and cond_name with the state_lock
2012-03-05 19:39:55 -08:00
Brian Anderson
0432030c27
rt: Don't take the task lock on state transitions
2012-03-05 19:39:55 -08:00
Brian Anderson
43f9f4d54a
etc: Add helgrind suppressions for libunwind
2012-03-05 19:39:55 -08:00
Brian Anderson
b2a075e20d
rt: Protect rust_task::state with a lock
2012-03-05 19:39:55 -08:00
Brian Anderson
d7298a797b
rt: Protect rust_task::killed with a lock
2012-03-05 19:39:55 -08:00
Brian Anderson
8a4c8bab84
test: Add test for #979
2012-03-05 18:41:55 -08:00
Brian Anderson
d2135597e9
std: Use util::unreachable
2012-03-05 18:23:01 -08:00
Brian Anderson
2c8c8f9a06
Stop .gitignoring rustboot. It does not exist
2012-03-05 18:17:26 -08:00
Brian Anderson
77ed09728b
rustc: Use std::util::unreachable
2012-03-05 18:16:25 -08:00
Brian Anderson
b32e09172c
rustc: Make llvm_err non-returning
2012-03-05 18:16:15 -08:00
Brian Anderson
a34ad8c4e7
Stop .gitignoring the rustc directory
2012-03-05 18:15:46 -08:00
Brian Anderson
602015f902
rustc: Use consistent casing for names of timed passes
2012-03-05 17:44:11 -08:00
Brian Anderson
0ee96de4ee
rustc: Lower case error messages
2012-03-05 17:05:20 -08:00
Brian Anderson
13a07ce1d4
rustc: Remove some redundant text from error messages
2012-03-05 17:05:20 -08:00
Niko Matsakis
8820d4485b
print type arguments when pretty-printing all nominal types
2012-03-05 16:47:52 -08:00
Niko Matsakis
3269a4043c
rewrite vec to be more unsafe, more inlined
2012-03-05 16:47:52 -08:00
Niko Matsakis
0416a946b7
give user control of whether we use inline hint or inline always
...
supply inline hints for resource ctors/dtors
2012-03-05 16:47:51 -08:00
Niko Matsakis
cc2ebfc105
set LLVM inline hint for all #[inline] methods, whether CC or local
2012-03-05 16:47:51 -08:00
Graydon Hoare
e400733e90
Extra removal, missed by last commit.
2012-03-05 16:02:38 -08:00
Graydon Hoare
6c87c34277
Remove dead code from rt (debug_obj, rust_obj, rust_closure, rust_box_obj, rust_vtable)
2012-03-05 15:50:11 -08:00
Brian Anderson
15df3950ad
rustc: Remove remaining non-inbounds GEPs
2012-03-05 15:12:36 -08:00
Brian Anderson
3a4c96a196
rt: Remove virtual methods from memory_region, rust_srv
2012-03-05 14:47:24 -08:00
Graydon Hoare
5bf185b499
Port fsync, waitpid and remove_file to core::{os,libc}.
2012-03-05 14:00:44 -08:00
Erick Tryzelaar
faccd4ac92
std: export json::error.
2012-03-05 08:47:21 -08:00
Brian Anderson
633881a562
test: xfail-fast run-pass/classes-simple.rs
2012-03-04 14:13:18 -08:00
Tim Chevalier
e2fa6f03f5
Translate simple classes
...
Programs using classes with fields only (no methods) compile and run,
as long as nothing refers to a class in a different crate (todo).
Also changed the AST representation of classes to have a separate
record for constructor info (instead of inlining the fields in the
item_class node), and fixed up spans and pretty-printing for
classes.
2012-03-04 12:43:17 -08:00
Brian Anderson
1d826b735c
rustdoc: Build appropriate filenames for pages
2012-03-04 00:23:54 -08:00
Brian Anderson
0e3cee747a
rustdoc: Convert markdown writer to a writer_factory
2012-03-03 23:56:38 -08:00
Brian Anderson
0b2ffa854f
rustdoc: Simplify the markdown_pass interface a bit
2012-03-03 23:20:40 -08:00
Brian Anderson
2cdb662022
rustdoc: Remove some bogus error handling around process spawning
2012-03-03 22:09:31 -08:00
Brian Anderson
f8742b476f
rustdoc: Introduce the concept of a 'page'
2012-03-03 21:56:17 -08:00
Tim Chevalier
481d27a65d
Update paths in gen-astencode
2012-03-03 17:49:15 -08:00
Brian Anderson
2d7750bc30
core: Fix os::load_self types on FreeBSD
2012-03-02 22:43:56 -08:00
Brian Anderson
38b2b74413
rt: Move RUST_POISON_ON_FREE into rust_env
2012-03-02 20:13:52 -08:00
Erick Tryzelaar
6b0c4822c1
std: add a fs::remove_file function.
2012-03-02 19:15:36 -08:00
Erick Tryzelaar
3cb2cd1f71
comp/fuzzer: rewrite to use io::with_str_reader.
2012-03-02 19:15:35 -08:00
Erick Tryzelaar
f630ebdb6a
comp/std: rename io::string_reader to io::str_reader.
2012-03-02 19:15:35 -08:00