aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/trans-array.c
diff options
context:
space:
mode:
authorThomas Koenig <tkoenig@gcc.gnu.org>2019-12-20 11:51:05 +0000
committerThomas Koenig <tkoenig@gcc.gnu.org>2019-12-20 11:51:05 +0000
commit95d27703bc8777efe9cdf2a1d8cac7a08b1f7168 (patch)
tree2ced2afc4d48ec55f5d67887dcf87f78589301db /gcc/fortran/trans-array.c
parentde89b5748d68b76b06e3beca4a956060afb79a3d (diff)
downloadgcc-95d27703bc8777efe9cdf2a1d8cac7a08b1f7168.zip
gcc-95d27703bc8777efe9cdf2a1d8cac7a08b1f7168.tar.gz
gcc-95d27703bc8777efe9cdf2a1d8cac7a08b1f7168.tar.bz2
Introduce -finline-arg-packing.
2019-12-20 Thomas Koenig <tkoenig@gcc.gnu.org> PR middle-end/91512 PR fortran/92738 * invoke.texi: Document -finline-arg-packing. * lang.opt: Add -finline-arg-packing. * options.c (gfc_post_options): Handle -finline-arg-packing. * trans-array.c (gfc_conv_array_parameter): Use flag_inline_arg_packing instead of checking for optimize and optimize_size. 2019-12-20 Thomas Koenig <tkoenig@gcc.gnu.org> PR middle-end/91512 PR fortran/92738 * gfortran.dg/inline_pack_25.f90: New test. From-SVN: r279639
Diffstat (limited to 'gcc/fortran/trans-array.c')
-rw-r--r--gcc/fortran/trans-array.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c
index e879ea1..226fc3a 100644
--- a/gcc/fortran/trans-array.c
+++ b/gcc/fortran/trans-array.c
@@ -8139,7 +8139,7 @@ gfc_conv_array_parameter (gfc_se * se, gfc_expr * expr, bool g77,
making the packing and unpacking operation visible to the
optimizers. */
- if (g77 && optimize && !optimize_size && expr->expr_type == EXPR_VARIABLE
+ if (g77 && flag_inline_arg_packing && expr->expr_type == EXPR_VARIABLE
&& !is_pointer (expr) && ! gfc_has_dimen_vector_ref (expr)
&& !(expr->symtree->n.sym->as
&& expr->symtree->n.sym->as->type == AS_ASSUMED_RANK)