- 04 Nov, 2011 12 commits
-
-
* trans-intrinsic.c (gfc_conv_intrinsic_arith): Introduce parent expression variable. Use it. From-SVN: r180919
Mikael Morin committed -
* trans-intrinsic.c (gfc_conv_intrinsic.c): Introduce current loop pointer. Use it. From-SVN: r180918
Mikael Morin committed -
* trans-intrinsic.c (gfc_conv_intrinsic_arith): Small argument handling cleanup. From-SVN: r180917
Mikael Morin committed -
From-SVN: r180916
GCC Administrator committed -
* trans-intrinsic.c (gfc_conv_intrinsic_arith): Update conditions. From-SVN: r180913
Mikael Morin committed -
* frontend-passes.c (cfe_register_funcs): Return early in the case of an inline intrinsic function. (optimize_binop_array_assignment): Skip optimization in the case of an inline intrinsic function. From-SVN: r180911
Mikael Morin committed -
* array.c (match_subscript): Skip whitespaces before setting locus. * matchexp.c (match_level_1): Ditto. From-SVN: r180910
Mikael Morin committed -
* trans-intrinsic.c (gfc_conv_intrinsic_minmaxval): Set loop's temporary rank to the loop rank. Mark ss chains for multiple loop if necessary. Use gfc_trans_scalarized_loop_boundary to end one loop and start another. From-SVN: r180909
Mikael Morin committed -
* trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Set loop's temporary rank to the loop rank. Mark ss chains for multiple loop if necessary. Use gfc_trans_scalarized_loop_boundary to end one loop and start another. From-SVN: r180908
Mikael Morin committed -
* trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Don't calculate offset twice in generated code. From-SVN: r180907
Mikael Morin committed -
* trans-expr.c (gfc_conv_procedure_call): Handle temporaries for arguments to elemental calls. * trans-stmt.c (replace_ss): New function. (gfc_conv_elemental_dependencies): Remove temporary loop handling. Create a new ss for the temporary and replace the original one with it. Remove fake array references. Recalculate all offsets. From-SVN: r180906
Mikael Morin committed -
* trans-array.h (gfc_free_ss, gfc_set_delta): New prototypes. * trans-array.c (gfc_free_ss): Remove forward declaration. Make non-static. (set_delta, gfc_set_delta): Remove forward declaration. Make non-static and rename the former to the later. Update uses. From-SVN: r180905
Mikael Morin committed
-
- 03 Nov, 2011 28 commits
-
-
* trans.h (gfc_inline_intrinsic_function_p): Move prototype... * gfortran.h (gfc_inline_intrinsic_function_p): ... here. * dependency.c (gfc_check_argument_var_dependency): Check dependencies of inline intrinsics' arguments. From-SVN: r180904
Mikael Morin committed -
* trans-array.c (gfc_trans_preloop_setup): New pointers to outer dimension's ss and loop. Use them. From-SVN: r180903
Mikael Morin committed -
* trans-array.c (outermost_loop): New function. (gfc_trans_array_constructor, gfc_set_vector_loop_bounds, gfc_add_loop_ss_code): Put generated code out of the outermost loop. From-SVN: r180902
Mikael Morin committed -
* trans-array.c (constant_array_constructor_loop_size): Handle multiple loops. From-SVN: r180901
Mikael Morin committed -
* trans-array.c (get_rank, get_loop_upper_bound_for_array): New functions. (gfc_trans_array_constructor): Handle multiple loops. From-SVN: r180900
Mikael Morin committed -
* trans.h (struct gfc_loopinfo): New field parent. * trans-array.c (gfc_cleanup_loop): Free nested loops. (gfc_add_ss_to_loop): Set nested_loop's parent loop. (gfc_trans_array_constructor): Update assertion. (gfc_conv_loop_setup): Ditto. From-SVN: r180899
Mikael Morin committed -
* trans-array.c (gfc_add_loop_ss_code): Skip non-nestedmost ss. Call recursively gfc_add_loop_ss_code for all the nested loops. (gfc_conv_ss_startstride): Only get the descriptor for the outermost ss. Call recursively gfc_conv_ss_startstride for all the nested loops. (set_loop_bounds): Call recursively for all the nested loops. (set_delta): Ditto. From-SVN: r180898
Mikael Morin committed -
* trans.h (struct gfc_loopinfo): New fields nested and next. * trans-array.c (gfc_add_ss_to_loop): Update list of nested list if ss has non-null nested_ss field. From-SVN: r180897
Mikael Morin committed -
* trans-array.c (gfc_trans_create_temp_array): Loop over the parents. From-SVN: r180895
Mikael Morin committed -
trans-array.c (get_array_ref_dim, [...]): Rename the former to the latter and loop over the parents. * trans-array.c (get_array_ref_dim, get_scalarizer_dim_for_array_dim): Rename the former to the latter and loop over the parents. (innermost_ss): New function. (get_array_ref_dim_for_loop_dim): New function. (gfc_trans_create_temp_array): Use get_scalarizer_dim_for_array_dim. (set_loop_bounds): Use get_array_dim_for_loop_dim). From-SVN: r180894
Mikael Morin committed -
* trans.h (struct gfc_ss): New field nested_ss. * trans-expr.c (gfc_advance_se_ss_chain): Update assertion. From-SVN: r180893
Mikael Morin committed -
* trans-array.c (set_vector_loop_bounds): Loop over the parents. From-SVN: r180892
Mikael Morin committed -
* trans-array.c (gfc_trans_array_constructor): Loop over the parents. From-SVN: r180891
Mikael Morin committed -
* trans-array.c (gfc_set_loop_bounds_from_array_spec): Loop over the parents. From-SVN: r180890
Mikael Morin committed -
* trans.h (struct gfc_ss): New field parent. * trans-array.c (gfc_trans_scalarizing_loops): Skip clearing if a parent exists. * trans-expr.c (gfc_advance_se_ss_chain): Move to parent ss at the end of the chain. From-SVN: r180889
Mikael Morin committed -
* trans-array.h (gfc_trans_create_temp_array): Remove loop argument. * trans-array.c (gfc_trans_create_temp_array): Ditto. Get loop from ss. Update reference to loop. Remove loop argument. (gfc_trans_array_constructor, gfc_conv_loop_setup): Update calls to gfc_trans_create_temp_array. * trans-expr.c (gfc_conv_procedure_call): Ditto. * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Ditto. * trans-stmt.c (gfc_conv_elemental_dependencies): Ditto. Set loop before calling gfc_trans_create_temp_array. From-SVN: r180888
Mikael Morin committed -
* trans-array.c (gfc_trans_create_temp_array): New variable total_dim. Set total_dim to loop's rank. Replace usages of loop's rank. From-SVN: r180887
Mikael Morin committed -
* trans-array.c (gfc_trans_array_constructor, trans_array_constructor): Rename the former to the later. Get loop from ss. Remove loop argument. (gfc_add_loop_ss_code): Update call. From-SVN: r180886
Mikael Morin committed -
* trans-array.c (gfc_set_vector_loop_bounds): Get loop from ss. Remove loop argument. (gfc_add_loop_ss_code): Update call. From-SVN: r180885
Mikael Morin committed -
* trans.h (struct gfc_ss): New field loop. * trans-array.c (set_ss_loop): New function. (gfc_add_ss_to_loop): Call set_ss_loop. From-SVN: r180884
Mikael Morin committed -
* trans.h (struct gfc_ss_info): New field refcount. * trans-array.c (free_ss_info): Decrement refcount. Return early if still non-zero. (gfc_get_array_ss, gfc_get_temp_ss, gfc_get_scalar_ss): Increment refcount. From-SVN: r180883
Mikael Morin committed -
* trans-array.c (gfc_trans_create_temp_array): Move invariant condition out of the containing loop. From-SVN: r180882
Mikael Morin committed -
trans-array.c (gfc_conv_loop_setup, [...]): Move specloop arrays clearing from the former to the latter. * trans-array.c (gfc_conv_loop_setup, gfc_trans_create_temp_array): Move specloop arrays clearing from the former to the latter. From-SVN: r180881
Mikael Morin committed -
trans-array.c (set_loop_bounds): Separate the beginning of gfc_conv_loop_setup into a function of its own. * trans-array.c (set_loop_bounds): Separate the beginning of gfc_conv_loop_setup into a function of its own. (set_delta): Separate the end of gfc_conv_loop_setup into a function of its own. (gfc_conv_loop_setup): Call set_loop_bounds and set delta. (set_loop_bounds, set_delta, gfc_conv_loop_setup): Make loopspec a pointer to the specloop field from the loop struct. From-SVN: r180880
Mikael Morin committed -
2011-11-03 Tobias Burnus <burnus@net-b.de> PR fortran/50933 * interface.c (gfc_compare_derived_types): Fix check for * BIND(C). 2011-11-03 Tobias Burnus <burnus@net-b.de> PR fortran/50933 * gfortran.dg/bind_c_dts_5.f90: New. From-SVN: r180879
Tobias Burnus committed -
2011-11-03 Tobias Burnus <burnus@net-b.de> PR fortran/50960 * trans-decl.c (gfc_finish_var_decl): Mark PARAMETER as * TREE_READONLY. 2011-11-03 Tobias Burnus <burnus@net-b.de> PR fortran/50960 * gfortran.dg/module_parameter_array_refs_2.f90: New. From-SVN: r180878
Tobias Burnus committed -
* trans.h (struct gfc_ss, struct gfc_ss_info): Move field gfc_ss::where into gfc_ss_info. * trans-array.c (gfc_add_loop_ss_code): Update reference chains. * trans-stmt.c (gfc_trans_where_assign, gfc_trans_where_3): Ditto. From-SVN: r180877
Mikael Morin committed -
* trans.h (struct gfc_ss, struct gfc_ss_info): Move field gfc_ss::useflags into gfc_ss_info. * trans-array.c (gfc_mark_ss_chain_used, gfc_trans_preloop_setup, gfc_trans_scalarizing_loops, gfc_trans_scalarized_boundary): Update reference chains. * trans-expr.c (gfc_conv_procedure_call): Ditto. * trans-intrinsic.c (gfc_conv_intrinsic_function): Ditto. From-SVN: r180875
Mikael Morin committed
-