import program
# Local Analysis/Optimization
-import allocate_iregister_slots
-import inline_methods
+private import allocate_iregister_slots
+private import inline_methods
# Global Analysis types
-import instantiated_type_analysis
-import reachable_method_analysis
-import reachable_as_init
-import reachable_from_init_method_analysis
+private import instantiated_type_analysis
+private import reachable_method_analysis
+private import reachable_as_init
+private import reachable_from_init_method_analysis
# Global Analysis implementation
-import cha_analysis
-import rta_analysis
-import reachable_as_init_impl
-import reachable_from_init_method_analysis_impl
+private import cha_analysis
+private import rta_analysis
+private import reachable_as_init_impl
+private import reachable_from_init_method_analysis_impl
# Global Optimizations
-import dead_method_removal
-import inline_get_and_set
-import remove_out_of_init_get_test
+private import dead_method_removal
+private import inline_get_and_set
+private import remove_out_of_init_get_test
redef class ToolContext
readable writable var _global_callgraph: String = "rta"
if not tc.no_out_of_init_get_test_removal then optimize_out_of_init_getters
end
+ fun dump_global_optimizations_information(directory_name: String) do
+ dump_out_of_init_information(directory_name)
+ dump_dead_method_optimization(directory_name)
+ dump_inline_get_set(directory_name)
+ end
+
# This method will create log files storing analysis information
fun dump_global_analysis_information(directory_name: String) do
dump_reachable_methods(directory_name, tc.global_callgraph)