From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26426 invoked by alias); 3 Feb 2015 21:09:17 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 26402 invoked by uid 48); 3 Feb 2015 21:09:12 -0000 From: "lucier at math dot purdue.edu" To: gcc-bugs@gcc.gnu.org Subject: [Bug other/64928] New: unreasonable cpu time and memory usage in "phase opt and generate" with -ftest-coverage -fprofile-arcs Date: Tue, 03 Feb 2015 21:09:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: other X-Bugzilla-Version: 4.9.2 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: lucier at math dot purdue.edu X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-02/txt/msg00267.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64928 Bug ID: 64928 Summary: unreasonable cpu time and memory usage in "phase opt and generate" with -ftest-coverage -fprofile-arcs Product: gcc Version: 4.9.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: other Assignee: unassigned at gcc dot gnu.org Reporter: lucier at math dot purdue.edu With this compiler: firefly:~/Downloads/gambit/lib> /pkgs/gcc-4.9.2/bin/gcc -v Using built-in specs. COLLECT_GCC=/pkgs/gcc-4.9.2/bin/gcc COLLECT_LTO_WRAPPER=/pkgs/gcc-4.9.2/libexec/gcc/x86_64-unknown-linux-gnu/4.9.2/lto-wrapper Target: x86_64-unknown-linux-gnu Configured with: ../../gcc-4.9.2/configure --prefix=/pkgs/gcc-4.9.2 Thread model: posix gcc version 4.9.2 (GCC) With this command: /pkgs/gcc-4.9.2/bin/gcc -Q -save-temps -Wno-unused -Wno-write-strings -O1 -fno-math-errno -fschedule-insns2 -fno-strict-aliasing -fno-trapping-math -fwrapv -fomit-frame-pointer -fPIC -fno-common -mieee-fp -fprofile-arcs -ftest-coverage -I"../include" -c -o "_system.o" -I. -DHAVE_CONFIG_H -D___GAMBCDIR="\"/usr/local/Gambit-C\"" -D___SYS_TYPE_CPU="\"x86_64\"" -D___SYS_TYPE_VENDOR="\"unknown\"" -D___SYS_TYPE_OS="\"linux-gnu\"" -D___CONFIGURE_COMMAND="\"./configure 'CC=/pkgs/gcc-4.9.2/bin/gcc -Q -save-temps' '--enable-track-scheme' '--enable-coverage'"\" -D___OBJ_EXTENSION="\".o\"" -D___EXE_EXTENSION="\"\"" -D___BAT_EXTENSION="\"\"" -D___PRIMAL _system.c -D___LIBRARY I get the output: Execution times (seconds) phase setup : 0.12 (100%) usr 0.00 ( 0%) sys 0.13 (100%) wall 35712 kB (100%) ggc TOTAL : 0.12 0.00 0.13 35728 kB btowc wctob mbrlen __signbitf __signbit __signbitl ___H__20___system ___H__23__23_type ___H__23__23_type_2d_cast ___H__23__23_subtype ___H__23__23_subtype_2d_set_21_ ___H__23__23_fixnum_3f_ ___H__23__23_subtyped_3f_ ___H__23__23_subtyped_2d_mutable_3f_ ___H__23__23_subtyped_2e_vector_3f_ ___H__23__23_subtyped_2e_symbol_3f_ ___H__23__23_subtyped_2e_flonum_3f_ ___H__23__23_subtyped_2e_bignum_3f_ ___H__23__23_special_3f_ ___H__23__23_ratnum_3f_ ___H__23__23_cpxnum_3f_ ___H__23__23_structure_3f_ ___H__23__23_values_3f_ ___H__23__23_meroon_3f_ ___H__23__23_jazz_3f_ ___H__23__23_frame_3f_ ___H__23__23_continuation_3f_ ___H__23__23_promise_3f_ ___H__23__23_return_3f_ ___H__23__23_foreign_3f_ ___H__23__23_flonum_3f_ ___H__23__23_bignum_3f_ ___H__23__23_unbound_3f_ ___H__23__23_quasi_2d_append ___H__23__23_quasi_2d_list ___H__23__23_quasi_2d_cons ___H__23__23_quasi_2d_list_2d__3e_vector ___H__23__23_quasi_2d_vector ___H__23__23_case_2d_memv ___H__23__23_eqv_3f_ ___H_eqv_3f_ ___H__23__23_eq_3f_ ___H_eq_3f_ ___H__23__23_bvector_2d_equal_3f_ ___H__23__23_equal_3f_ ___H_equal_3f_ ___H__23__23_symbol_2d_hash ___H_symbol_2d_hash ___H__23__23_keyword_2d_hash ___H_keyword_2d_hash ___H__23__23_eq_3f__2d_hash ___H_eq_3f__2d_hash ___H__23__23_eqv_3f__2d_hash ___H_eqv_3f__2d_hash ___H__23__23_equal_3f__2d_hash ___H_equal_3f__2d_hash ___H__23__23_string_3d__3f__2d_hash ___H_string_3d__3f__2d_hash ___H__23__23_string_2d_ci_3d__3f__2d_hash ___H_string_2d_ci_3d__3f__2d_hash ___H__23__23_generic_2d_hash ___H__23__23_fail_2d_check_2d_invalid_2d_hash_2d_number_2d_exception ___H_invalid_2d_hash_2d_number_2d_exception_3f_ ___H_invalid_2d_hash_2d_number_2d_exception_2d_procedure ___H_invalid_2d_hash_2d_number_2d_exception_2d_arguments ___H__23__23_raise_2d_invalid_2d_hash_2d_number_2d_exception ___H__23__23_fail_2d_check_2d_unbound_2d_table_2d_key_2d_exception ___H_unbound_2d_table_2d_key_2d_exception_3f_ ___H_unbound_2d_table_2d_key_2d_exception_2d_procedure ___H_unbound_2d_table_2d_key_2d_exception_2d_arguments ___H__23__23_raise_2d_unbound_2d_table_2d_key_2d_exception ___H__23__23_gc_2d_hash_2d_table_3f_ ___H__23__23_gc_2d_hash_2d_table_2d_ref ___H__23__23_gc_2d_hash_2d_table_2d_set_21_ ___H__23__23_gc_2d_hash_2d_table_2d_rehash_21_ ___H__23__23_smallest_2d_prime_2d_no_2d_less_2d_than ___H__23__23_gc_2d_hash_2d_table_2d_resize_21_ ___H__23__23_gc_2d_hash_2d_table_2d_allocate ___H__23__23_gc_2d_hash_2d_table_2d_for_2d_each ___H__23__23_gc_2d_hash_2d_table_2d_search ___H__23__23_gc_2d_hash_2d_table_2d_foldl ___H__23__23_mem_2d_allocated_3f_ ___H__23__23_fail_2d_check_2d_table ___H_table_3f_ ___H__23__23_make_2d_table ___H_make_2d_table ___H__23__23_table_2d_get_2d_eq_2d_gcht ___H__23__23_table_2d_get_2d_gcht_2d_not_2d_mem_2d_alloc ___H__23__23_table_2d_get_2d_gcht ___H__23__23_table_2d_length ___H_table_2d_length ___H__23__23_table_2d_access ___H__23__23_table_2d_ref ___H_table_2d_ref ___H__23__23_table_2d_resize_21_ ___H__23__23_table_2d_set_21_ ___H_table_2d_set_21_ ___H__23__23_table_2d_search ___H_table_2d_search ___H__23__23_table_2d_for_2d_each ___H_table_2d_for_2d_each ___H__23__23_table_2d_foldl ___H__23__23_table_2d__3e_list ___H_table_2d__3e_list ___H__23__23_list_2d__3e_table ___H_list_2d__3e_table ___H__23__23_table_2d_copy ___H_table_2d_copy ___H__23__23_table_2d_merge_21_ ___H_table_2d_merge_21_ ___H__23__23_table_2d_merge ___H_table_2d_merge ___H__23__23_table_2d_equal_3f_ ___H__23__23_table_2d_equal_3f__2d_hash ___H__23__23_fail_2d_check_2d_unbound_2d_serial_2d_number_2d_exception ___H_unbound_2d_serial_2d_number_2d_exception_3f_ ___H_unbound_2d_serial_2d_number_2d_exception_2d_procedure ___H_unbound_2d_serial_2d_number_2d_exception_2d_arguments ___H__23__23_raise_2d_unbound_2d_serial_2d_number_2d_exception ___H__23__23_object_2d__3e_serial_2d_number ___H_object_2d__3e_serial_2d_number ___H__23__23_serial_2d_number_2d__3e_object ___H_serial_2d_number_2d__3e_object ___H__23__23_object_2d__3e_u8vector ___H_object_2d__3e_u8vector ___H__23__23_u8vector_2d__3e_object ___H_u8vector_2d__3e_object ___setup_mod ___init_mod ____20___system Analyzing compilation unit Performing interprocedural optimizations <*free_lang_data> <*free_inline_summary> Assembling functions: ___setup_mod ___init_mod ___H_u8vector_2d__3e_object ___H__23__23_u8vector_2d__3e_object ___H_object_2d__3e_u8vector ___H__23__23_object_2d__3e_u8vector {GC 298137k -> 101678k} ___H_serial_2d_number_2d__3e_object ___H__23__23_serial_2d_number_2d__3e_object ___H_object_2d__3e_serial_2d_number ___H__23__23_object_2d__3e_serial_2d_number ___H__23__23_raise_2d_unbound_2d_serial_2d_number_2d_exception ___H_unbound_2d_serial_2d_number_2d_exception_2d_arguments ___H_unbound_2d_serial_2d_number_2d_exception_2d_procedure ___H_unbound_2d_serial_2d_number_2d_exception_3f_ ___H__23__23_fail_2d_check_2d_unbound_2d_serial_2d_number_2d_exception ___H__23__23_table_2d_equal_3f__2d_hash ___H__23__23_table_2d_equal_3f_ ___H_table_2d_merge ___H__23__23_table_2d_merge ___H_table_2d_merge_21_ ___H__23__23_table_2d_merge_21_ ___H_table_2d_copy ___H__23__23_table_2d_copy ___H_list_2d__3e_table ___H__23__23_list_2d__3e_table ___H_table_2d__3e_list ___H__23__23_table_2d__3e_list ___H__23__23_table_2d_foldl ___H_table_2d_for_2d_each ___H__23__23_table_2d_for_2d_each ___H_table_2d_search ___H__23__23_table_2d_search ___H_table_2d_set_21_ ___H__23__23_table_2d_resize_21_ ___H_table_2d_ref ___H__23__23_table_2d_access ___H_table_2d_length ___H__23__23_table_2d_length ___H__23__23_table_2d_get_2d_gcht ___H__23__23_table_2d_get_2d_gcht_2d_not_2d_mem_2d_alloc ___H__23__23_table_2d_get_2d_eq_2d_gcht ___H_make_2d_table ___H_table_3f_ ___H__23__23_fail_2d_check_2d_table ___H__23__23_mem_2d_allocated_3f_ ___H__23__23_gc_2d_hash_2d_table_2d_foldl ___H__23__23_gc_2d_hash_2d_table_2d_search ___H__23__23_gc_2d_hash_2d_table_2d_for_2d_each ___H__23__23_gc_2d_hash_2d_table_2d_allocate ___H__23__23_gc_2d_hash_2d_table_2d_resize_21_ ___H__23__23_smallest_2d_prime_2d_no_2d_less_2d_than ___H__23__23_gc_2d_hash_2d_table_3f_ ___H__23__23_raise_2d_unbound_2d_table_2d_key_2d_exception ___H_unbound_2d_table_2d_key_2d_exception_2d_arguments ___H_unbound_2d_table_2d_key_2d_exception_2d_procedure ___H_unbound_2d_table_2d_key_2d_exception_3f_ ___H__23__23_fail_2d_check_2d_unbound_2d_table_2d_key_2d_exception ___H__23__23_raise_2d_invalid_2d_hash_2d_number_2d_exception ___H_invalid_2d_hash_2d_number_2d_exception_2d_arguments ___H_invalid_2d_hash_2d_number_2d_exception_2d_procedure ___H_invalid_2d_hash_2d_number_2d_exception_3f_ ___H__23__23_fail_2d_check_2d_invalid_2d_hash_2d_number_2d_exception ___H__23__23_generic_2d_hash ___H_string_2d_ci_3d__3f__2d_hash ___H_string_3d__3f__2d_hash ___H__23__23_string_3d__3f__2d_hash ___H_equal_3f__2d_hash ___H__23__23_equal_3f__2d_hash ___H_eqv_3f__2d_hash ___H__23__23_eqv_3f__2d_hash ___H_eq_3f__2d_hash ___H__23__23_eq_3f__2d_hash ___H_keyword_2d_hash ___H__23__23_keyword_2d_hash ___H_symbol_2d_hash ___H__23__23_symbol_2d_hash ___H_equal_3f_ ___H__23__23_equal_3f_ ___H__23__23_bvector_2d_equal_3f_ ___H_eq_3f_ ___H__23__23_eq_3f_ ___H_eqv_3f_ ___H__23__23_eqv_3f_ ___H__23__23_case_2d_memv ___H__23__23_quasi_2d_vector ___H__23__23_quasi_2d_list_2d__3e_vector ___H__23__23_quasi_2d_cons ___H__23__23_quasi_2d_list ___H__23__23_quasi_2d_append ___H__23__23_unbound_3f_ ___H__23__23_bignum_3f_ ___H__23__23_flonum_3f_ ___H__23__23_foreign_3f_ ___H__23__23_return_3f_ ___H__23__23_promise_3f_ ___H__23__23_continuation_3f_ ___H__23__23_frame_3f_ ___H__23__23_jazz_3f_ ___H__23__23_meroon_3f_ ___H__23__23_values_3f_ ___H__23__23_structure_3f_ ___H__23__23_cpxnum_3f_ ___H__23__23_ratnum_3f_ ___H__23__23_special_3f_ ___H__23__23_subtyped_2e_bignum_3f_ ___H__23__23_subtyped_2e_flonum_3f_ ___H__23__23_subtyped_2e_symbol_3f_ ___H__23__23_subtyped_2e_vector_3f_ ___H__23__23_subtyped_2d_mutable_3f_ ___H__23__23_subtyped_3f_ ___H__23__23_fixnum_3f_ ___H__23__23_subtype_2d_set_21_ ___H__23__23_subtype ___H__23__23_type_2d_cast ___H__23__23_type ___H__20___system ___H__23__23_gc_2d_hash_2d_table_2d_set_21_ ___H__23__23_table_2d_set_21_ ___H__23__23_gc_2d_hash_2d_table_2d_rehash_21_ ___H__23__23_table_2d_ref ___H__23__23_gc_2d_hash_2d_table_2d_ref ___H__23__23_make_2d_table ___H__23__23_string_2d_ci_3d__3f__2d_hash ____20___system _GLOBAL__sub_I_65535_0__system.c Execution times (seconds) phase setup : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 1134 kB ( 0%) ggc phase parsing : 0.11 ( 0%) usr 0.12 (14%) sys 0.23 ( 1%) wall 7383 kB ( 1%) ggc phase opt and generate : 35.79 (100%) usr 0.73 (86%) sys 36.55 (99%) wall 513422 kB (98%) ggc garbage collection : 0.08 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall 0 kB ( 0%) ggc dump files : 0.00 ( 0%) usr 0.01 ( 1%) sys 0.00 ( 0%) wall 0 kB ( 0%) ggc callgraph construction : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 2337 kB ( 0%) ggc callgraph optimization : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 399 kB ( 0%) ggc ipa dead code removal : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 0 kB ( 0%) ggc ipa inlining heuristics : 0.01 ( 0%) usr 0.01 ( 1%) sys 0.01 ( 0%) wall 1132 kB ( 0%) ggc ipa profile : 0.00 ( 0%) usr 0.01 ( 1%) sys 0.00 ( 0%) wall 2688 kB ( 1%) ggc ipa pure const : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 0 kB ( 0%) ggc cfg construction : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 416 kB ( 0%) ggc cfg cleanup : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall 14 kB ( 0%) ggc trivially dead code : 0.14 ( 0%) usr 0.00 ( 0%) sys 0.15 ( 0%) wall 0 kB ( 0%) ggc df scan insns : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall 13 kB ( 0%) ggc df multiple defs : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 0 kB ( 0%) ggc df reaching defs : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc df live regs : 0.29 ( 1%) usr 0.00 ( 0%) sys 0.26 ( 1%) wall 0 kB ( 0%) ggc df live&initialized regs: 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 0 kB ( 0%) ggc df reg dead/unused notes: 0.24 ( 1%) usr 0.01 ( 1%) sys 0.24 ( 1%) wall 12426 kB ( 2%) ggc register information : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall 0 kB ( 0%) ggc alias analysis : 0.21 ( 1%) usr 0.00 ( 0%) sys 0.19 ( 1%) wall 23934 kB ( 5%) ggc alias stmt walking : 0.33 ( 1%) usr 0.01 ( 1%) sys 0.28 ( 1%) wall 609 kB ( 0%) ggc register scan : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 104 kB ( 0%) ggc rebuild jump labels : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall 0 kB ( 0%) ggc preprocessing : 0.03 ( 0%) usr 0.03 ( 4%) sys 0.06 ( 0%) wall 1743 kB ( 0%) ggc lexical analysis : 0.03 ( 0%) usr 0.03 ( 4%) sys 0.03 ( 0%) wall 0 kB ( 0%) ggc parser (global) : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall 1477 kB ( 0%) ggc parser function body : 0.04 ( 0%) usr 0.06 ( 7%) sys 0.10 ( 0%) wall 3815 kB ( 1%) ggc inline parameters : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 89 kB ( 0%) ggc tree gimplify : 0.03 ( 0%) usr 0.01 ( 1%) sys 0.02 ( 0%) wall 5057 kB ( 1%) ggc tree CFG construction : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 1743 kB ( 0%) ggc tree CFG cleanup : 0.16 ( 0%) usr 0.00 ( 0%) sys 0.24 ( 1%) wall 300 kB ( 0%) ggc tree copy propagation : 0.28 ( 1%) usr 0.00 ( 0%) sys 0.31 ( 1%) wall 3211 kB ( 1%) ggc tree PTA : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 217 kB ( 0%) ggc tree PHI insertion : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 2191 kB ( 0%) ggc tree SSA rewrite : 0.19 ( 1%) usr 0.00 ( 0%) sys 0.18 ( 0%) wall 17777 kB ( 3%) ggc tree SSA other : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 18 kB ( 0%) ggc tree SSA incremental : 0.23 ( 1%) usr 0.01 ( 1%) sys 0.26 ( 1%) wall 27481 kB ( 5%) ggc tree operand scan : 0.02 ( 0%) usr 0.02 ( 2%) sys 0.05 ( 0%) wall 15630 kB ( 3%) ggc dominator optimization : 0.22 ( 1%) usr 0.01 ( 1%) sys 0.22 ( 1%) wall 27417 kB ( 5%) ggc tree CCP : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall 491 kB ( 0%) ggc tree PHI const/copy prop: 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 127 kB ( 0%) ggc tree split crit edges : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 743 kB ( 0%) ggc tree reassociation : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall 7 kB ( 0%) ggc tree FRE : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall 2875 kB ( 1%) ggc tree code sinking : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc tree forward propagate : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 336 kB ( 0%) ggc tree conservative DCE : 0.10 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall 99 kB ( 0%) ggc tree aggressive DCE : 0.10 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall 20 kB ( 0%) ggc tree DSE : 2.80 ( 8%) usr 0.00 ( 0%) sys 2.80 ( 8%) wall 0 kB ( 0%) ggc tree loop invariant motion: 0.16 ( 0%) usr 0.03 ( 4%) sys 0.19 ( 1%) wall 64219 kB (12%) ggc scev constant prop : 0.29 ( 1%) usr 0.00 ( 0%) sys 0.27 ( 1%) wall 12074 kB ( 2%) ggc complete unrolling : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 16 kB ( 0%) ggc tree iv optimization : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 932 kB ( 0%) ggc tree SSA uncprop : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 0 kB ( 0%) ggc tree rename SSA copies : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall 0 kB ( 0%) ggc dominance frontiers : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 0 kB ( 0%) ggc dominance computation : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall 0 kB ( 0%) ggc out of ssa : 5.90 (16%) usr 0.50 (59%) sys 6.41 (17%) wall 26 kB ( 0%) ggc expand vars : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 866 kB ( 0%) ggc expand : 0.39 ( 1%) usr 0.02 ( 2%) sys 0.40 ( 1%) wall 87038 kB (17%) ggc post expand cleanups : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 322 kB ( 0%) ggc forward prop : 0.33 ( 1%) usr 0.00 ( 0%) sys 0.33 ( 1%) wall 14733 kB ( 3%) ggc CSE : 7.53 (21%) usr 0.01 ( 1%) sys 7.53 (20%) wall 30934 kB ( 6%) ggc dead code elimination : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall 0 kB ( 0%) ggc dead store elim1 : 0.37 ( 1%) usr 0.01 ( 1%) sys 0.36 ( 1%) wall 7276 kB ( 1%) ggc dead store elim2 : 1.73 ( 5%) usr 0.00 ( 0%) sys 1.71 ( 5%) wall 18715 kB ( 4%) ggc loop init : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 713 kB ( 0%) ggc loop invariant motion : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 27 kB ( 0%) ggc branch prediction : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 277 kB ( 0%) ggc combiner : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall 913 kB ( 0%) ggc integrated RA : 0.87 ( 2%) usr 0.00 ( 0%) sys 0.99 ( 3%) wall 48097 kB ( 9%) ggc LRA non-specific : 1.61 ( 4%) usr 0.01 ( 1%) sys 1.63 ( 4%) wall 37254 kB ( 7%) ggc LRA virtuals elimination: 0.13 ( 0%) usr 0.00 ( 0%) sys 0.10 ( 0%) wall 15481 kB ( 3%) ggc LRA reload inheritance : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 11 kB ( 0%) ggc LRA create live ranges : 0.32 ( 1%) usr 0.01 ( 1%) sys 0.29 ( 1%) wall 7642 kB ( 1%) ggc LRA hard reg assignment : 0.69 ( 2%) usr 0.01 ( 1%) sys 0.73 ( 2%) wall 0 kB ( 0%) ggc reload CSE regs : 5.74 (16%) usr 0.00 ( 0%) sys 5.73 (16%) wall 12325 kB ( 2%) ggc thread pro- & epilogue : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 465 kB ( 0%) ggc combine stack adjustments: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc hard reg cprop : 0.33 ( 1%) usr 0.00 ( 0%) sys 0.34 ( 1%) wall 4 kB ( 0%) ggc scheduling 2 : 1.79 ( 5%) usr 0.01 ( 1%) sys 1.77 ( 5%) wall 299 kB ( 0%) ggc machine dep reorg : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 0 kB ( 0%) ggc shorten branches : 0.21 ( 1%) usr 0.00 ( 0%) sys 0.20 ( 1%) wall 0 kB ( 0%) ggc final : 0.36 ( 1%) usr 0.00 ( 0%) sys 0.34 ( 1%) wall 1508 kB ( 0%) ggc variable output : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 146 kB ( 0%) ggc straight-line strength reduction: 0.06 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall 16 kB ( 0%) ggc rest of compilation : 0.35 ( 1%) usr 0.02 ( 2%) sys 0.37 ( 1%) wall 991 kB ( 0%) ggc remove unused locals : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall 0 kB ( 0%) ggc address taken : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 0 kB ( 0%) ggc unaccounted todo : 0.19 ( 1%) usr 0.00 ( 0%) sys 0.18 ( 0%) wall 0 kB ( 0%) ggc TOTAL : 35.90 0.85 36.79 521957 kB The "phase opt and generate" part uses most of the CPU time and most of the RAM. With somewhat larger files, RAM usage goes up > 80GB. Including _system.i with this report.