rust/src/librustc/middle
Ariel Ben-Yehuda 13809ffff7 don't iterate over all impls when none match
before:
573.01user 4.04system 7:33.86elapsed 127%CPU (0avgtext+0avgdata 1141656maxresident)k
after:
567.03user 4.00system 7:28.23elapsed 127%CPU (0avgtext+0avgdata 1133112maxresident)k

an additional 1% improvement
2015-08-18 00:25:29 +03:00
..
cfg use is_method_call rather than directly accessing the method_map 2015-07-07 18:48:27 +03:00
infer add a fast-path to resolve_type_vars_if_possible 2015-08-18 00:24:16 +03:00
traits add a fast-path to resolve_type_vars_if_possible 2015-08-18 00:24:16 +03:00
ty_relate add a fast-path to resolve_type_vars_if_possible 2015-08-18 00:24:16 +03:00
astconv_util.rs rustc: make ty::mk_* constructors into methods on ty::ctxt. 2015-06-26 07:34:56 +03:00
astencode.rs remove the last remnants of old interface 2015-08-15 21:35:49 -04:00
cast.rs use VariantDef instead of struct_fields 2015-08-06 16:54:40 +03:00
check_const.rs introduce an ADTDef struct for struct/enum definitions 2015-08-06 14:16:56 +03:00
check_loop.rs Fallout out rustc 2015-04-01 11:22:39 -04:00
check_match.rs rename ADTDef to AdtDef etc. 2015-08-07 15:03:09 +03:00
check_rvalues.rs Address nits 2015-07-01 13:08:25 -07:00
check_static_recursion.rs rustc: replace def::MethodProvenance with ty::ImplOrTraitItemContainer. 2015-08-04 01:16:53 +03:00
const_eval.rs move InlinedItem into librustc, where it belongs 2015-08-14 20:07:55 -04:00
dataflow.rs Use vec![elt; n] where possible 2015-07-09 11:05:32 +02:00
dead.rs use VariantDef instead of struct_fields 2015-08-06 16:54:40 +03:00
def.rs rustc: replace def::MethodProvenance with ty::ImplOrTraitItemContainer. 2015-08-04 01:16:53 +03:00
dependency_format.rs rustc: Allow changing the default allocator 2015-08-14 15:13:10 -07:00
effect.rs review feedback: Use checked-arith instead of saturated-arith for push_unsafe! and pop_unsafe!. 2015-07-23 23:39:25 +02:00
entry.rs syntax: move ast_map to librustc. 2015-06-10 02:40:45 +03:00
expr_use_visitor.rs expr_use_visitor: Remove FIXME that is no longer needed (and in fact 2015-08-12 20:59:01 -04:00
fast_reject.rs make trait matching smarter with projections 2015-08-17 21:53:44 +03:00
free_region.rs Add two new kinds of predicates, WellFormed and ObjectSafe. 2015-08-12 17:57:57 -04:00
implicator.rs Add two new kinds of predicates, WellFormed and ObjectSafe. 2015-08-12 17:57:57 -04:00
intrinsicck.rs Replace get_item_path[-1] with get_item_name 2015-08-12 20:22:25 +02:00
lang_items.rs Remove morestack support 2015-08-10 16:35:44 -07:00
liveness.rs remove get_ident and get_name, make as_str sound 2015-07-28 18:07:20 +02:00
mem_categorization.rs use VariantDef instead of struct_fields 2015-08-06 16:54:40 +03:00
outlives.rs Correct nits from @nrc 2015-08-14 09:26:19 -04:00
pat_util.rs rustc: switch most remaining middle::ty functions to methods. 2015-06-26 07:34:57 +03:00
privacy.rs Fallout out rustc 2015-04-01 11:22:39 -04:00
reachable.rs rustc: remove MethodOrigin and use the container to distinguish inherent methods. 2015-07-04 17:51:31 +03:00
recursion_limit.rs for x in xs.iter() -> for x in &xs 2015-02-02 13:40:18 -05:00
region.rs move InlinedItem into librustc, where it belongs 2015-08-14 20:07:55 -04:00
resolve_lifetime.rs Replace illegal with invalid in most diagnostics 2015-07-29 01:59:31 +03:00
stability.rs use VariantDef instead of struct_fields 2015-08-06 16:54:40 +03:00
subst.rs Correctly subst defaults with the in-scope substs 2015-07-25 19:57:58 -07:00
ty_fold.rs Extend ParameterEnvironment to remember the free_id, and to be usable 2015-08-12 17:57:57 -04:00
ty_match.rs Transition to the new object lifetime defaults, replacing the old 2015-07-14 19:36:15 -04:00
ty_walk.rs Introduce ClosureSubsts rather than just having random fields in the 2015-07-24 04:53:17 -04:00
ty.rs don't iterate over all impls when none match 2015-08-18 00:25:29 +03:00
weak_lang_items.rs Remove morestack support 2015-08-10 16:35:44 -07:00
wf.rs Correct nits from @nrc 2015-08-14 09:26:19 -04:00