rust/src
bors aabfed5e0c Auto merge of #45996 - eddyb:even-mirer-1, r=arielb1
MIR: hide .rodata constants vs by-ref ABI clash in trans.

Back in #45380, constants were copied into locals during MIR creation to ensure that arguments ' memory can be used by the callee, if the constant is placed in `.rodata` and the ABI passes it by-ref.

However, there are several drawbacks (see https://github.com/rust-lang/rust/pull/45380#discussion_r150447709), most importantly the complication of constant propagation (UB if a constant ends up in `Call` arguments) and inconveniencing analyses.

Instead, I've modified the `rustc_trans` implementation of calls to copy an `Operand::Constant` argument locally if it's not immediate, and added a test that segfaults without the copy.

cc @dotdash @arielb1
2017-11-17 13:30:24 +00:00
..
bootstrap rustbuild: Install rustfmt as part of extended build 2017-11-16 10:47:26 +01:00
build_helper
ci Auto merge of #45991 - gnzlbg:fix_i586, r=alexcrichton 2017-11-17 05:18:45 +00:00
doc Auto merge of #45692 - steveklabnik:ship-cargo-book, r=alexcrichton 2017-11-16 01:16:58 +00:00
etc
grammar
jemalloc@1f5a28755e
liballoc examples in Cow::into_owned don't need to wrap result in Cows 2017-11-14 18:23:24 -06:00
liballoc_jemalloc rustc: Handle some libstd symbole exports better 2017-11-04 20:01:11 -07:00
liballoc_system
libarena
libbacktrace Disable mmap in libbacktrace on Apple platforms 2017-11-08 02:28:17 -08:00
libcompiler_builtins@f5532b22b5 Update the compiler-builtins to latest master. 2017-11-15 16:07:48 -08:00
libcore Auto merge of #45595 - scottmcm:iter-try-fold, r=dtolnay 2017-11-17 07:43:08 +00:00
libfmt_macros Retain information on whether a format argument has explicit position 2017-11-09 20:57:58 +00:00
libgetopts
libgraphviz
liblibc@c1068cd82a Update libc (new const definitions for Linux sparc64) 2017-11-14 10:47:04 -02:00
libpanic_abort
libpanic_unwind
libproc_macro proc_macro: use the proc_macro API at runtime to construct quasi-quoted TokenStream's. 2017-11-09 01:40:04 +02:00
libprofiler_builtins
librustc Auto merge of #45996 - eddyb:even-mirer-1, r=arielb1 2017-11-17 13:30:24 +00:00
librustc_allocator rustc: Handle some libstd symbole exports better 2017-11-04 20:01:11 -07:00
librustc_apfloat Make trans const eval error on overflow and NaN, matching HIR const eval. 2017-11-07 20:13:19 +01:00
librustc_asan
librustc_back Control LLVM's TrapUnreachable feature through rustc's TargetOptions. 2017-11-11 12:15:43 -08:00
librustc_borrowck Introduce LocalDefId which provides a type-level guarantee that the DefId is from the local crate. 2017-11-16 14:04:01 +01:00
librustc_const_eval Auto merge of #45050 - petrochenkov:ambind, r=nikomatsakis 2017-11-10 19:10:12 +00:00
librustc_const_math Extract (f32::MAX + 0.5 ULP) constant 2017-11-07 20:13:19 +01:00
librustc_cratesio_shim
librustc_data_structures IndexVec: add '_ to make clear where borrowing is happening 2017-11-16 05:57:45 -05:00
librustc_driver Auto merge of #45944 - eddyb:provide, r=nikomatsakis 2017-11-15 08:02:19 +00:00
librustc_errors Auto merge of #45741 - oli-obk:refactor_suggestions, r=estebank 2017-11-09 15:42:26 +00:00
librustc_incremental incr.comp.: Remove default serialization implementations for things in rustc::hir::def_id so that we get an ICE instead of silently doing the wrong thing. 2017-11-16 17:13:39 +01:00
librustc_lint convert EXTRA_REQUIREMENT_IN_IMPL into a hard error 2017-11-15 16:49:21 -05:00
librustc_llvm Control LLVM's TrapUnreachable feature through rustc's TargetOptions. 2017-11-11 12:15:43 -08:00
librustc_lsan
librustc_metadata Auto merge of #46004 - michaelwoerister:cached-mir-wip-3, r=nikomatsakis 2017-11-17 10:12:21 +00:00
librustc_mir Auto merge of #45996 - eddyb:even-mirer-1, r=arielb1 2017-11-17 13:30:24 +00:00
librustc_msan
librustc_passes rustc: split off BodyOwnerKind from MirSource. 2017-11-14 08:54:27 +02:00
librustc_platform_intrinsics
librustc_plugin
librustc_privacy Split hir::TyImplTrait, move checks to HIR lowering 2017-11-15 15:46:01 -05:00
librustc_resolve Auto merge of #45050 - petrochenkov:ambind, r=nikomatsakis 2017-11-10 19:10:12 +00:00
librustc_save_analysis save-analysis: run rustfmt 2017-11-08 10:43:05 +13:00
librustc_trans Auto merge of #45996 - eddyb:even-mirer-1, r=arielb1 2017-11-17 13:30:24 +00:00
librustc_trans_utils rustc_driver: base extern query providers on local ones. 2017-11-12 18:20:15 +02:00
librustc_tsan
librustc_typeck Auto merge of #46004 - michaelwoerister:cached-mir-wip-3, r=nikomatsakis 2017-11-17 10:12:21 +00:00
librustdoc Rollup merge of #46010 - lnicola:escape-root, r=GuillaumeGomez 2017-11-16 10:05:07 +01:00
libserialize
libstd Auto merge of #45981 - GuillaumeGomez:rollup, r=GuillaumeGomez 2017-11-14 16:18:19 +00:00
libstd_unicode Fixed several pulldown warnings when documenting libstd. 2017-11-14 17:22:57 +08:00
libsyntax Rollup merge of #45973 - arielb1:fast-path, r=estebank 2017-11-16 10:05:03 +01:00
libsyntax_ext Retain information on whether a format argument has explicit position 2017-11-09 20:57:58 +00:00
libsyntax_pos Fix style in interner test 2017-11-13 07:55:20 +01:00
libterm
libtest libtest: Force a newline every 100 dots when testing in quiet mode. 2017-11-06 03:53:39 +08:00
libunwind
llvm@51f104bf1c Emit debug info for trait object pointer 2017-11-15 01:48:14 -07:00
rt
rtstartup auto trait future compatibility lint 2017-11-03 16:13:21 -02:00
rustc
rustllvm Auto merge of #45920 - sunfishcode:trap-on-unreachable, r=Zoxc 2017-11-16 06:10:36 +00:00
test Auto merge of #45996 - eddyb:even-mirer-1, r=arielb1 2017-11-17 13:30:24 +00:00
tools Auto merge of #46004 - michaelwoerister:cached-mir-wip-3, r=nikomatsakis 2017-11-17 10:12:21 +00:00
Cargo.lock Reenable clippy testing 2017-11-15 10:42:47 +01:00
Cargo.toml
stage0.txt