diff options
author | marxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-11-12 15:50:05 +0000 |
---|---|---|
committer | marxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-11-12 15:50:05 +0000 |
commit | 25faed340686df8d7bb2242dc8d04285976922b6 (patch) | |
tree | d8c21743c5863ddf0f3ca4d381a04732f4ce45b7 /gcc/config/i386 | |
parent | 09a069ef63a70b66b392f732d2d2d0220ca6727e (diff) | |
download | gcc-25faed340686df8d7bb2242dc8d04285976922b6.tar.gz |
Fix big memory leak in ix86_valid_target_attribute_p
* config/i386/i386.c (ix86_valid_target_attribute_p):
Finalize options at the of the function.
* gcc.c (driver_get_configure_time_options): Call newly
introduced init_opts_obstack.
* lto-wrapper.c (main): Likewise.
* opts.c (init_opts_obstack): New function.
(init_options_struct): Call newly
introduced init_opts_obstack.
* opts.h (init_options_struct): Declare.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230264 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/i386')
-rw-r--r-- | gcc/config/i386/i386.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 1a6b2fd760e..805f7a88978 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -6237,6 +6237,8 @@ ix86_valid_target_attribute_p (tree fndecl, DECL_FUNCTION_SPECIFIC_OPTIMIZATION (fndecl) = new_optimize; } + finalize_options_struct (&func_options); + return ret; } |