diff options
| author | Ariel Ben-Yehuda <ariel.byd@gmail.com> | 2015-04-19 23:38:37 +0300 |
|---|---|---|
| committer | Ariel Ben-Yehuda <ariel.byd@gmail.com> | 2015-04-19 23:38:37 +0300 |
| commit | 94a1b266f9b3688d8fb6ff382e7b846a8d4eb38d (patch) | |
| tree | ce0e1d08318b1e0c51712625cfa442adfe628d32 /src/rustllvm/RustWrapper.cpp | |
| parent | be41e9806747febb761d4d9ba85e937197db09af (diff) | |
| download | rust-94a1b266f9b3688d8fb6ff382e7b846a8d4eb38d.tar.gz rust-94a1b266f9b3688d8fb6ff382e7b846a8d4eb38d.zip | |
Call skolemize_late_bound_regions only after fast rejection
skolemize_late_bound_regions essentially copies the entire type (most of the times it shouldn't, but it does), and match_impl runs millions of times. Times compiling rustc, tested with $ make -j4 rustc-stage1 $ ( time RUSTFLAGS=-Z time-passes make -j4 rustc-stage2 ) # need LLVM time for calibration Before: real 21m44.960s user 29m38.812s sys 0m14.944s After: real 19m31.445s user 26m47.260s sys 0m14.952s Making this is a 10% performance improvement. LLVM passes took 867 seconds before, 862 seconds after.
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
