rust/src/librustc_mir
bors 01a8b5f26e Auto merge of #69290 - wesleywiser:speed_up_ctfe_stress_4, r=RalfJung
Check `RUSTC_CTFE_BACKTRACE` much less by generating fewer errors

Before this change, `get_size_and_align()`  calls `get_fn_alloc()` *a
lot* in CTFE heavy code. This previously returned an `Error` which would
check if `RUSTC_CTFE_BACKTRACE` was set on construction. Doing this
turned out to be a performance hotspot as @nnethercote discovered in
#68792.

This is an alternate take on that PR which resolves the performance
issue by generating *many* fewer errors. Previously, `ctfe-stress-4`
would generate over 5,000,000 errors each of which would check for the
presence of the environment variable. With these changes, that number is
reduced to 30.

r? @RalfJung
2020-02-21 06:43:40 +00:00
..
borrow_check Auto merge of #69145 - matthewjasper:mir-typeck-static-ty, r=nikomatsakis 2020-02-20 15:52:57 +00:00
const_eval Auto merge of #68847 - ecstatic-morse:const-impl, r=oli-obk 2020-02-20 08:41:17 +00:00
dataflow Auto merge of #69113 - ecstatic-morse:unified-dataflow-borrowed, r=wesleywiser 2020-02-19 04:57:10 +00:00
interpret Check RUSTC_CTFE_BACKTRACE much less by generating fewer errors 2020-02-19 18:28:37 -05:00
monomorphize Change const eval to return ConstValue, instead of Const as the type inside it shouldn't be used. 2020-02-15 11:56:23 +13:00
transform Rollup merge of #69185 - RalfJung:const-prop-lints, r=oli-obk 2020-02-20 20:18:50 +01:00
util Make lookup of associated item by name O(log n) 2020-02-19 10:51:40 -08:00
Cargo.toml Make librustc_infer compile. 2020-02-16 11:49:29 +01:00
const_eval.rs Code review changes. 2020-02-16 09:59:01 +13:00
lib.rs Remove unused feature gates from librustc_mir 2020-02-07 13:58:57 +01:00
shim.rs Make lookup of associated item by name O(log n) 2020-02-19 10:51:40 -08:00