This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug jit/63854] Fix memory leaks seen in JIT


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63854

--- Comment #5 from dmalcolm at gcc dot gnu.org ---
Author: dmalcolm
Date: Wed Nov 19 19:23:06 2014
New Revision: 217793

URL: https://gcc.gnu.org/viewcvs?rev=217793&root=gcc&view=rev
Log:
PR jit/63854: Fix memory leaks within context/pass_manager/dump_manager

gcc/ChangeLog:
    PR jit/63854
    * config/alpha/alpha.c (alpha_option_override): Remove static from
    "handle_trap_shadows_info" and "align_insns_info".
    * config/i386/i386.c (ix86_option_override): Likewise for
    "insert_vzeroupper_info".
    * config/rl78/rl78.c (rl78_asm_file_start): Likewise for
    "rl78_devirt_info" and "rl78_move_elim_info".
    * config/rs6000/rs6000.c (rs6000_option_override): Likewise for
    "analyze_swaps_info".
    * context.c (gcc::context::~context): New.
    * context.h (gcc::context::~context): New.
    * dumpfile.c (dump_files): Add "false" initializers for new field
    "owns_strings".
    (gcc::dump_manager::~dump_manager): New.
    (gcc::dump_manager::dump_register): Add param "take_ownership".
    * dumpfile.h (struct dump_file_info): Add field "owns_strings".
    (gcc::dump_manager::~dump_manager): New.
    (gcc::dump_manager::dump_register): Add param "take_ownership".
    * pass_manager.h (gcc::pass_manager::operator delete): New.
    (gcc::pass_manager::~pass_manager): New.
    * passes.c (pass_manager::register_one_dump_file): Pass "true" to
    new "owns_strings" argument to dump_register.
    (pass_manager::operator delete): New.
    (delete_pass_tree): New function.
    (pass_manager::~pass_manager): New.
    * statistics.c (statistics_early_init): Pass "false" to
    new "owns_strings" argument to dump_register.
    * toplev.c (toplev::finalize): Clean up the context and thus the
    things it owns.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/alpha/alpha.c
    trunk/gcc/config/i386/i386.c
    trunk/gcc/config/rl78/rl78.c
    trunk/gcc/config/rs6000/rs6000.c
    trunk/gcc/context.c
    trunk/gcc/context.h
    trunk/gcc/dumpfile.c
    trunk/gcc/dumpfile.h
    trunk/gcc/pass_manager.h
    trunk/gcc/passes.c
    trunk/gcc/statistics.c
    trunk/gcc/toplev.c


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]