From 44319903056adfd1ce6264d05a9487de5daea058 Mon Sep 17 00:00:00 2001 From: tkoenig Date: Sun, 5 Nov 2017 17:24:37 +0000 Subject: 2017-11-05 Thomas Koenig PR fortran/82471 * lang.opt (ffrontend-loop-interchange): New option. (Wfrontend-loop-interchange): New option. * options.c (gfc_post_options): Handle ffrontend-loop-interchange. * frontend-passes.c (gfc_run_passes): Run optimize_namespace if flag_frontend_optimize or flag_frontend_loop_interchange are set. (optimize_namespace): Run functions according to flags set; also call index_interchange. (ind_type): New function. (has_var): New function. (index_cost): New function. (loop_comp): New function. 2017-11-05 Thomas Koenig PR fortran/82471 * gfortran.dg/loop_interchange_1.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254430 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/fortran/options.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gcc/fortran/options.c') diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c index f7bbd7f2cde..0ee6b7808d9 100644 --- a/gcc/fortran/options.c +++ b/gcc/fortran/options.c @@ -417,6 +417,11 @@ gfc_post_options (const char **pfilename) if (flag_frontend_optimize == -1) flag_frontend_optimize = optimize; + /* Same for front end loop interchange. */ + + if (flag_frontend_loop_interchange == -1) + flag_frontend_loop_interchange = optimize; + if (flag_max_array_constructor < 65535) flag_max_array_constructor = 65535; -- cgit v1.2.1 From 2fb20ba2e4f3f036716fc7cfe5d4c5c713297874 Mon Sep 17 00:00:00 2001 From: marxin Date: Mon, 6 Nov 2017 09:02:15 +0000 Subject: Instrument function exit with __builtin_unreachable in C++ 2017-11-06 Martin Liska PR middle-end/82404 * c-opts.c (c_common_post_options): Set -Wreturn-type for C++ FE. * c.opt: Set default value of warn_return_type. 2017-11-06 Martin Liska PR middle-end/82404 * constexpr.c (cxx_eval_builtin_function_call): Handle __builtin_unreachable call. (get_function_named_in_call): Declare function earlier. (constexpr_fn_retval): Skip __builtin_unreachable. * cp-gimplify.c (cp_ubsan_maybe_instrument_return): Rename to ... (cp_maybe_instrument_return): ... this. (cp_genericize): Call the function unconditionally. 2017-11-06 Martin Liska PR middle-end/82404 * options.c (gfc_post_options): Set default value of -Wreturn-type to false. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254437 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/fortran/options.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gcc/fortran/options.c') diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c index 0ee6b7808d9..c584a19e559 100644 --- a/gcc/fortran/options.c +++ b/gcc/fortran/options.c @@ -435,6 +435,9 @@ gfc_post_options (const char **pfilename) gfc_fatal_error ("Maximum subrecord length cannot exceed %d", MAX_SUBRECORD_LENGTH); + if (warn_return_type == -1) + warn_return_type = 0; + gfc_cpp_post_options (); if (gfc_option.allow_std & GFC_STD_F2008) -- cgit v1.2.1 From 8b72061f8c106def60d8ba7c907e2fedcbb9fa5e Mon Sep 17 00:00:00 2001 From: marxin Date: Wed, 15 Nov 2017 12:39:06 +0000 Subject: Disable -Wreturn-type by default in all languages other from C++. 2017-11-15 Martin Liska * tree-cfg.c (pass_warn_function_return::execute): Compare warn_return_type for greater than zero. 2017-11-15 Martin Liska * options.c (gfc_post_options): Do not set default value of warn_return_type. * trans-decl.c (gfc_trans_deferred_vars): Compare warn_return_type for greater than zero. (generate_local_decl): Likewise (gfc_generate_function_code): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254764 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/fortran/options.c | 3 --- 1 file changed, 3 deletions(-) (limited to 'gcc/fortran/options.c') diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c index c584a19e559..0ee6b7808d9 100644 --- a/gcc/fortran/options.c +++ b/gcc/fortran/options.c @@ -435,9 +435,6 @@ gfc_post_options (const char **pfilename) gfc_fatal_error ("Maximum subrecord length cannot exceed %d", MAX_SUBRECORD_LENGTH); - if (warn_return_type == -1) - warn_return_type = 0; - gfc_cpp_post_options (); if (gfc_option.allow_std & GFC_STD_F2008) -- cgit v1.2.1