-namespace factor
-{
+namespace factor {
-extern cell megamorphic_cache_hits;
-extern cell megamorphic_cache_misses;
+struct dispatch_statistics {
+ cell megamorphic_cache_hits;
+ cell megamorphic_cache_misses;
-cell lookup_method(cell object, cell methods);
-PRIMITIVE(lookup_method);
+ cell cold_call_to_ic_transitions;
+ cell ic_to_pic_transitions;
+ cell pic_to_mega_transitions;
-cell object_class(cell object);
-
-PRIMITIVE(mega_cache_miss);
-
-PRIMITIVE(reset_dispatch_stats);
-PRIMITIVE(dispatch_stats);
-
-void jit_emit_class_lookup(jit *jit, fixnum index, cell type);
-
-void jit_emit_mega_cache_lookup(jit *jit, cell methods, fixnum index, cell cache);
+ cell pic_tag_count;
+ cell pic_tuple_count;
+};
}