3497 Commits

Author SHA1 Message Date
Eduard Burtescu
4e752651f4 Truncate symbol hashes to 64 bits. 2014-01-01 01:42:24 +02:00
bors
1dcc986d52 auto merge of #11173 : whitequark/rust/master, r=thestinger
This PR adds `std::unsafe::intrinsics::{volatile_load,volatile_store}`, which map to LLVM's `load volatile` and `store volatile` operations correspondingly.

This would fix #11172.

I have addressed several uncertainties with this PR in the line comments.
2013-12-31 15:06:55 -08:00
bors
bd52e6acc6 auto merge of #11157 : alexcrichton/rust/issue-11154, r=pcwalton
Closes #11154
2013-12-31 13:52:03 -08:00
Kiet Tran
576a85105f Mark provided methods in dead-code pass 2013-12-31 16:19:57 -05:00
Alex Crichton
0daaeab244 Conservatively export all trait methods and impls
The comments have more information as to why this is done, but the basic idea is
that finding an exported trait is actually a fairly difficult problem. The true
answer lies in whether a trait is ever referenced from another exported method,
and right now this kind of analysis doesn't exist, so the conservative answer of
"yes" is always returned to answer whether a trait is exported.

Closes #11224
Closes #11225
2013-12-31 12:42:13 -08:00
Gareth Smith
d435f4f059 Fix issue #11216 - Replace std::hashmap::{each_key, each_value} with iterators. 2013-12-31 20:29:39 +00:00
SiegeLord
cbe8c61fed Add a --no-analysis command line switch 2013-12-31 15:28:08 -05:00
SiegeLord
a7a9e488a4 Generate --dep-info earlier in the compillation. 2013-12-31 15:28:02 -05:00
Alex Crichton
870024a160 Disallow LTO with a preference to dynamic linking
Closes #11154
2013-12-31 11:48:47 -08:00
Peter Zotov
f98f83a15d Implement volatile_load and volatile_store intrinsics. 2013-12-31 02:54:25 +04:00
Vadim Chugunov
856222987d Revert "Embed Windows application manifest." 2013-12-30 13:22:54 -08:00
Alex Crichton
fe30087080 Add metadata from a tempdir instead of a build dir
Right now if you have concurrent builds of two libraries in the same directory
(such as rustc's bootstrapping process), it's possible that two libraries will
stomp over each others' metadata, producing corrupt rlibs.

By placing the metadata file in a tempdir we're guranteed to not conflict with
ay other builds happening concurrently. Normally this isn't a problem because
output filenames are scoped to the name of the crate, but metadata is special in
that it has the same name across all crates.
2013-12-30 08:21:41 -08:00
bors
f37b746699 auto merge of #11182 : luisbg/rust/crateid, r=cmr
Issue #11048
2013-12-30 04:32:09 -08:00
Steven Fackler
dc830345e8 Remove @muts from ExtCtxt 2013-12-29 23:41:09 -08:00
Steven Fackler
3965dddf49 Make ast_fold take &mut self 2013-12-29 23:41:05 -08:00
Luis de Bethencourt
f872c47278 Rename PkgId to CrateId 2013-12-29 15:25:32 -05:00
Luis de Bethencourt
4bc09713df Rename pkgid variables 2013-12-29 15:25:26 -05:00
Steven Fackler
0607c138ca Stop using @ExtCtxt 2013-12-28 21:16:03 -07:00
bors
2922697087 auto merge of #11175 : klutzy/rust/ice, r=alexcrichton
`ln_str` caused ICE if `RUST_LOG=rustc::middle::liveness` is given
due to borrow failure.
2013-12-28 14:12:01 -08:00
klutzy
eaae0ac68a rustc: Fix a borrow failure in .ln_str()
`ln_str` caused ICE if `RUST_LOG=rustc::middle::liveness` is given
due to borrow failure.
2013-12-29 02:47:12 +09:00
Alex Crichton
b6a7463526 Initialize LLVM only once
This also appears to fix a race in LLVM that was causing a deadlock on the bots
during the doc-test tests (where we use rustc in parallel).
2013-12-27 23:39:33 -08:00
Luqman Aden
1265a03139 librustc: Implement coercion for traits. 2013-12-27 03:26:46 -05:00
Patrick Walton
ad160146fd librustc: Fix tidy problem. 2013-12-26 15:54:37 -08:00
Patrick Walton
cc0584731a librustc: De-@mut the def map.
This is the last `@mut` in `librustc` that does not depend on libsyntax.
2013-12-26 15:54:37 -08:00
Patrick Walton
56b9a207ab librustc: De-@mut the value and type ribs in the resolver 2013-12-26 15:54:37 -08:00
Patrick Walton
c48335e334 librustc: De-@mut Module::imports in the resolver 2013-12-26 15:54:37 -08:00
Patrick Walton
47846110a4 librustc: Fully de-@mut trait_impls in the type context 2013-12-26 15:54:37 -08:00
Patrick Walton
fecef74d57 librustc: De-@mut the inherent implementations list 2013-12-26 15:54:37 -08:00
Patrick Walton
ed819c9a81 librustc: De-@mut the crate cache in the crate reader 2013-12-26 15:54:37 -08:00
Patrick Walton
1f76a9ba5e librustc: De-@mut populated_external_traits in the type context 2013-12-26 15:54:37 -08:00
Patrick Walton
f62faa89ed librustc: De-@mut outputs in the session 2013-12-26 15:54:37 -08:00
Patrick Walton
e4815b6c3f librustc: De-@mut the users list in liveness 2013-12-26 15:54:37 -08:00
Patrick Walton
ff23e1202f librustc: De-@mut BindingRscope::anon_bindings 2013-12-26 15:54:36 -08:00
Patrick Walton
d7b152701e librustc: De-@mut building_library in the session 2013-12-26 15:54:36 -08:00
Patrick Walton
c56bac7f40 librustc: De-@mut node_id in the session 2013-12-26 15:54:36 -08:00
Patrick Walton
eaf69494a5 librustc: De-@mut the loop scope in liveness 2013-12-26 15:54:36 -08:00
Patrick Walton
298d0b870f librustc: De-@mut label_ribs in the resolver 2013-12-26 15:54:36 -08:00
Patrick Walton
7f816b7ef4 librustc: De-@mut the idstack in constant checking 2013-12-26 15:54:36 -08:00
Patrick Walton
8c703643ad librustc: De-@mut the reachability worklist 2013-12-26 15:54:36 -08:00
Patrick Walton
4b4ff2cf8b librustc: De-@mut DynamicFailureHandler::finished 2013-12-26 15:54:36 -08:00
Patrick Walton
fc0b466fd4 librustc: De-@mut all_loans in the borrow checker 2013-12-26 15:54:36 -08:00
Patrick Walton
0afae85bc2 librustc: De-@mut inherent_candidates and extension_candidates in
method lookup
2013-12-26 15:54:36 -08:00
Patrick Walton
1a6c1e5d32 librustc: De-@mut Liveness::successors 2013-12-26 15:54:36 -08:00
Patrick Walton
89dfd00dcf librustc: De-@mut next_id in the type context 2013-12-26 15:54:36 -08:00
Patrick Walton
a483ee8e33 librustc: De-@mut the trait map 2013-12-26 15:54:36 -08:00
Patrick Walton
d3fc7b9918 librustc: De-@mut the translation stats 2013-12-26 15:54:36 -08:00
Patrick Walton
9f6706975b librustc: De-@mut fn_stats in the stats 2013-12-26 15:54:36 -08:00
Patrick Walton
e84f79feb1 librustc: De-@mut llvm_insns in the stats 2013-12-26 15:54:35 -08:00
Patrick Walton
8c3a552ac5 librustc: Remove the unused llvm_insn_ctxt from the stats 2013-12-26 15:54:35 -08:00
Patrick Walton
97ceac7377 librustc: De-@mut n_llvm_insns in the stats 2013-12-26 15:54:35 -08:00