- 09 Sep, 2005 8 commits
-
-
PR fortran/21104 * trans.h (gfc_interface_sym_mapping, gfc_interface_mapping): Moved from trans-expr.c. (gfc_init_interface_mapping, gfc_free_interface_mapping) (gfc_add_interface_mapping, gfc_finish_interface_mapping) (gfc_apply_interface_mapping): Declare. * trans-array.h (gfc_set_loop_bounds_from_array_spec): Declare. (gfc_trans_allocate_temp_array): Add pre and post block arguments. * trans-array.c (gfc_set_loop_bounds_from_array_spec): New function. (gfc_trans_allocate_array_storage): Replace loop argument with separate pre and post blocks. (gfc_trans_allocate_temp_array): Add pre and post block arguments. Update call to gfc_trans_allocate_array_storage. (gfc_trans_array_constructor, gfc_conv_loop_setup): Adjust for new interface to gfc_trans_allocate_temp_array. * trans-expr.c (gfc_interface_sym_mapping, gfc_interface_mapping): Moved to trans.h. (gfc_init_interface_mapping, gfc_free_interface_mapping) (gfc_add_interface_mapping, gfc_finish_interface_mapping) (gfc_apply_interface_mapping): Make extern. (gfc_conv_function_call): Build an interface mapping for array return values too. Call gfc_set_loop_bounds_from_array_spec. Adjust call to gfc_trans_allocate_temp_array so that code is added to SE rather than LOOP. From-SVN: r104075
Richard Sandiford committed -
PR fortran/12840 * trans.h (gfor_fndecl_internal_realloc): Declare. (gfor_fndecl_internal_realloc64): Declare. * trans-decl.c (gfor_fndecl_internal_realloc): New variable. (gfor_fndecl_internal_realloc64): New variable. (gfc_build_builtin_function_decls): Initialize them. * trans-array.h (gfc_trans_allocate_temp_array): Add a fourth argument. * trans-array.c (gfc_trans_allocate_array_storage): Add an argument to say whether the array can grow later. Don't allocate the array on the stack if so. Don't call malloc for zero-sized arrays. (gfc_trans_allocate_temp_array): Add a similar argument here. Pass it along to gfc_trans_allocate_array_storage. (gfc_get_iteration_count, gfc_grow_array): New functions. (gfc_iterator_has_dynamic_bounds): New function. (gfc_get_array_constructor_element_size): New function. (gfc_get_array_constructor_size): New function. (gfc_trans_array_ctor_element): Replace pointer argument with a descriptor tree. (gfc_trans_array_constructor_subarray): Likewise. Take an extra argument to say whether the variable-sized part of the constructor must be allocated using realloc. Grow the array when this argument is true. (gfc_trans_array_constructor_value): Likewise. (gfc_get_array_cons_size): Delete. (gfc_trans_array_constructor): If the loop bound has not been set, split the allocation into a static part and a dynamic part. Set loop->to to the bounds for static part before allocating the temporary. Adjust call to gfc_trans_array_constructor_value. (gfc_conv_loop_setup): Allow any constructor to determine the loop bounds. Check whether the constructor has a dynamic size and prefer to use something else if so. Expect the loop bound to be set later. Adjust call to gfc_trans_allocate_temp_array. * trans-expr.c (gfc_conv_function_call): Adjust another call here. From-SVN: r104073
Richard Sandiford committed -
PR c++/23180 * g++.dg/init/pr23180-1.C: New test. * g++.dg/init/pr23180-2.C: New test. From-SVN: r104070
Josh Conner committed -
PR c++/23180 * expr.c (expand_expr_addr_expr_1): Don't invoke expand_simple_binop for EXPAND_INITIALIZER. From-SVN: r104069
Josh Conner committed -
PR debug/23190 * toplev.c (wrapup_global_declaration_1): Split out ... (wrapup_global_declaration_2): ... from ... (wrapup_global_declarations): ... here. Return bool. (check_global_declaration_1): Split out ... (check_global_declarations): from here. (emit_debug_global_declarations): New. * toplev.h (wrapup_global_declaration_1, wrapup_global_declaration_2, check_global_declaration_1, emit_debug_global_declarations): Declare. * c-decl.c (c_write_global_declarations_1): Don't create a vector of decls. Call wrapup_global_declaration_1, wrapup_global_declaration_2, check_global_declaration_1 directly. (c_write_global_declarations_2): New. (ext_block): New. (c_write_global_declarations): Call c_write_global_declarations_2. * langhooks.c (write_global_declarations): Call emit_debug_global_declarations. * cgraphunit.c (cgraph_varpool_remove_unreferenced_decls): Don't remove decls that have DECL_RTL_SET_P. * passes.c (rest_of_decl_compilation): Invoke cgraph_varpool_finalize_decl for all but functions. cp/ * decl.c (wrapup_globals_for_namespace): Call emit_debug_global_declarations. * decl2.c (cp_finish_file): Likewise. From-SVN: r104065
Richard Henderson committed -
2005-09-09 Paul Thomas <pault@gcc.gnu.org> * gfortran.dg/g77/19990905-0.f: Remove XFAIL, rearrange equivalences and add comment to connect the test with the PR. - forgotten in previous. From-SVN: r104061
Paul Thomas committed -
2005-09-09 Paul Thomas <pault@gcc.gnu.org> PR fortran/18878 * module.c (find_use_name_n): Based on original find_use_name. Either counts number of use names for a given real name or returns use name n. (find_use_name, number_use_names): Interfaces to the function find_use_name_n. (read_module): Add the logic and calls to these functions, so that mutiple reuses of the same real name are loaded. 2005-09-09 Paul Thomas <pault@gcc.gnu.org> PR fortran/22304 PR fortran/23270 PR fortran/18870 PR fortran/16511 PR fortran/17917 * gfortran.h: Move definition of BLANK_COMMON_NAME from trans- common.c so that it is accessible to module.c. Add common_head field to gfc_symbol structure. Add field for the equivalence name AND new attr field, in_equivalence. * match.c (gfc_match_common, gfc_match_equivalence): In loops that flag common block equivalences, emit an error if the common blocks are different, using sym->common_head as the common block identifier. Ensure that symbols that are equivalence associated with a common block are marked as being in_common. * module.c (write_blank_common): New. (write_common): Use unmangled common block name. (load_equiv): New function ported from g95. (read_module): Call load_equiv. (write_equiv): New function ported from g95. Correct string referencing for gfc functions. Give module equivalences a unique name. (write_module): Call write_equiv and write_blank_common. * primary.c (match_variable) Old gfc_match_variable, made static and third argument provided to indicate if parent namespace to be visited or not. (gfc_match_variable) New. Interface to match_variable. (gfc_match_equiv_variable) New. Interface to match_variable. * trans-common.c (finish_equivalences): Provide the call to create_common with a gfc_common_header so that module equivalences are made external, rather than local. (find_equivalences): Ensure that all members in common block equivalences are marked as used. This prevents the subsequent call to this function from making local unions. * trans-decl.c (gfc_generate_function_code): Move the call to gfc_generate_contained_functions to after the call to gfc_trans_common so the use-associated, contained common blocks produce the correct references. (gfc_create_module_variable): Return for equivalenced symbols with existing backend declaration. 2005-09-09 Paul Thomas <pault@gcc.gnu.org> PR fortran/18878 * gfortran.dg/module_double_reuse.f90: New. 2005-09-09 Paul Thomas <pault@gcc.gnu.org> PR fortran/23270 PR fortran/22304 PR fortran/18870 PR fortran/17917 PR fortran/16511 * gfortran.dg/common_equivalence_1.f: New. * gfortran.dg/common_equivalence_2.f: New. * gfortran.dg/common_equivalence_3.f: New. * gfortran.dg/contained_equivalence_1.f90: New. * gfortran.dg/module_blank_common.f90: New. * gfortran.dg/module_commons_1.f90: New. * gfortran.dg/module_equivalence_1.f90: New. * gfortran.dg/nested_modules_1.f90: New. * gfortran.dg/g77/19990905-0.f: Remove XFAIL, rearrange equivalences and add comment to connect the test with the PR. From-SVN: r104060
Paul Thomas committed -
[[Split portion of a mixed commit.]] From-SVN: r104056.2
GCC Administrator committed
-
- 08 Sep, 2005 14 commits
-
-
fortran/ PR fortran/23765 * match.c (gfc_match_common): Remove unnecessary / wrong special cases for end-of-statement. testsuite/ PR fortran/23765 * gfortran.dg/common_6.f90: New test. From-SVN: r104046
Tobias Schlüter committed -
2005-09-08 Thomas Fitzsimmons <fitzsim@redhat.com> PR libgcj/23761 * include/java-props.h (_Jv_Module_Load_Path): Declare variable. * java/lang/natRuntime.cc (init): Call lt_dlsetsearchpath after lt_dlinit. * gnu/classpath/natSystemProperties.cc (_Jv_Module_Load_Path): Define variable. (_Jv_SetDLLSearchPath): Do not call lt_dlsetsearchpath. Set _Jv_Module_Load_Path. From-SVN: r104044
Thomas Fitzsimmons committed -
2005-09-08 Janne Blomqvist <jblomqvi@cc.hut.fi> * gfortran.texi: Add section about implemented F2003 features. From-SVN: r104043
Janne Blomqvist committed -
re PR c++/23691 (`mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression) PR c++/23691 * decl2.c (mark_used): Instantiate static data members initialized by constants, even in a template. PR c++/23691 * g++.dg/template/static16.C: New test. From-SVN: r104041
Mark Mitchell committed -
PR fortran/15326 * trans-array.c (gfc_add_loop_ss_code): Set ss->string_length in the GFC_SS_FUNCTION case too. * trans-expr.c (gfc_conv_function_val): Allow symbols to be bound to function pointers as well as function decls. (gfc_interface_sym_mapping, gfc_interface_mapping): New structures. (gfc_init_interface_mapping, gfc_free_interface_mapping) (gfc_get_interface_mapping_charlen, gfc_get_interface_mapping_array) (gfc_set_interface_mapping_bounds, gfc_add_interface_mapping) (gfc_finish_interface_mapping, gfc_apply_interface_mapping_to_cons) (gfc_apply_interface_mapping_to_ref) (gfc_apply_interface_mapping_to_expr) (gfc_apply_interface_mapping): New functions. (gfc_conv_function_call): Evaluate the arguments before working out where the result should go. Make the null pointer case provide the string length in parmse.string_length. Cope with non-constant string lengths, using the above functions to evaluate such lengths. Use a temporary typespec; don't assign to sym->cl->backend_decl. Don't assign to se->string_length when returning a cached array descriptor. From-SVN: r104040
Richard Sandiford committed -
tree-vrp.c (extract_range_from_unary_expr): Do not set the range for the result of a conversion if... * tree-vrp.c (extract_range_from_unary_expr): Do not set the range for the result of a conversion if the new min and max cannot be compared. From-SVN: r104036
Eric Botcazou committed -
PR fortran/19928 * trans-array.c (gfc_conv_array_ref): Call gfc_advance_se_ss_chain after handling scalarized references. Make "indexse" inherit from "se" when handling AR_ELEMENTs. (gfc_walk_variable_expr): Add GFC_SS_SCALAR entries for each substring or scalar reference that follows an array section. * trans-expr.c (gfc_conv_variable): When called from within a scalarization loop, start out with "ref" pointing to the scalarized part of the reference. Don't call gfc_advance_se_ss_chain here. From-SVN: r104035
Richard Sandiford committed -
2005-09-08 Andreas Krebbel <krebbel1@de.ibm.com> * config/s390/s390.c (s390_sr_alias_set): Variable removed. (override_options): Setting s390_sr_alias_set removed. (save_fpr, save_gprs): Set alias set to vararg or frame. (restore_fpr, restore_gprs, s390_emit_prologue): Replace s390_sr_alias_set with get_frame_alias_set (). (s390_gimplify_va_arg): Replace s390_sr_alias_set with get_varargs_alias_set (). From-SVN: r104034
Andreas Krebbel committed -
2005-09-08 Andrew Pinski <pinskia@physics.uc.edu> PR obj-c++/16816 * obj-c++.dg/selector-5.mm: New test. * obj-c++.dg/selector-6.mm: New test. 2005-09-08 Andrew Pinski <pinskia@physics.uc.edu> PR obj-c++/16816 * parser.c (cp_parser_objc_selector_expression): Treat CPP_SCOPE as two CPP_COLON. From-SVN: r104033
Andrew Pinski committed -
2005-09-08 Andrew Pinski <pinskia@physics.uc.edu> PR objc/20574 PR objc/19324 * c-parser.c (c_parser_objc_method_definition): If the next token is not "{", error out and don't start the function. 2005-09-08 Andrew Pinski <pinskia@physics.uc.edu> PR objc/20574 PR objc/19324 * objc.dg/error-1.m: New test. From-SVN: r104032
Andrew Pinski committed -
PR fortran/23373 * trans-expr.c (gfc_trans_pointer_assignment): Assign to a temporary descriptor if the rhs is not a null pointer or variable. From-SVN: r104029
Richard Sandiford committed -
2005-09-07 Jerry DeLisle <jvdelisle@verizon.net> PR libfortran/23760 * gfortran.dg/g77/1832.f: Remove long string in write statement to allow the test to pass on correct list directed output with prepended space. From-SVN: r104027
Jerry DeLisle committed -
* gcc.dg/intmax_t-1.c: Disable for xscale*-*-elf*. From-SVN: r104022
James E Wilson committed -
[[Split portion of a mixed commit.]] From-SVN: r104019.2
GCC Administrator committed
-
- 07 Sep, 2005 14 commits
-
-
2005-09-07 Thomas Koenig <Thomas.Koenig@online.de> * gfortran.dg/parameter+save.f90: Rename to * gfortran.dg/parameter_save.f90: .. this. From-SVN: r104011
Thomas Koenig committed -
PR libfortran/23262 * acinclude.m4 (LIBGFOR_CHECK_CRLF): New check. * configure.ac: Use new check. * configure.in: Regenerate. * config.h.in: Regenerate. * configure: Regenerate. * io/transfer.c (next_record_w): Add case for CRLF as line terminator. * io/unix.c (tempfile, regular_file): Open files with O_BINARY on systems with CRLF. From-SVN: r104009
Francois-Xavier Coudert committed -
2005-09-07 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/20848 * symbol.c(check_conflict): Add conflict for parameter/save, 2005-09-07 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/20848 * gfortran.dg/parameter+save.f90: New test case. From-SVN: r104005
Thomas Koenig committed -
tree-vrp.c (extract_range_from_expr): Move the check for non nullness after the check for gimple invariant. 2005-09-08 Andrew Pinski <pinskia@physics.uc.edu> * tree-vrp.c (extract_range_from_expr): Move the check for non nullness after the check for gimple invariant. From-SVN: r104002
Andrew Pinski committed -
PR libfortran/23419 * io/write.c (extract_int): Use memcpy to access buffer. (extract_uint): Ditto. (extract_real): Ditto. From-SVN: r104000
Steve Ellcey committed -
From-SVN: r103989
Richard Kenner committed -
PR target/23747 * config/m32r.md (movmemsi_internal): Canonicalize order of operands in PLUS component of template. From-SVN: r103987
Kazuhiro Inaoka committed -
2005-09-07 Andreas Krebbel <krebbel1@de.ibm.com> * reload1.c (fixup_eh_region_note): Remove assertion. (fixup_abnormal_edges): Reverted removal of call to find_many_sub_basic_blocks made on 2005-08-31. From-SVN: r103984
Andreas Krebbel committed -
* function.c (ARG_POINTER_CFA_OFFSET): Move ... * defaults.h (ARG_POINTER_CFA_OFFSET): ... here. (INCOMING_FRAME_SP_OFFSET): Move from dwarf2out.c. * dwarf2out.c (struct cfa_loc): Change reg to unsigned int, rearrange for better packing. (INCOMING_FRAME_SP_OFFSET): Move to defaults.h. (lookup_cfa_1): Remove inline marker. (cfa_equal_p): Split out of ... (def_cfa_1): ... here. Use INVALID_REGNUM. (build_cfa_loc): Handle !cfa->indirect. (frame_pointer_cfa_offset): New. (dbx_reg_number): Assert register elimination performed; do leaf register remapping. (reg_loc_descriptor): Avoid calling dbx_reg_number when unused. (eliminate_reg_to_offset): New. (based_loc_descr): Remove can_use_fbreg argument. Use fbreg only for verifiably local stack frame addresses; re-base to CFA. (mem_loc_descriptor): Remove can_use_fbreg argument. (concat_loc_descriptor, loc_descriptor): Likewise. (containing_function_has_frame_base): Remove. (rtl_for_decl_location): Don't do register elimination or leaf register remapping here. (secname_for_decl): Split out from .. (add_location_or_const_value_attribute): ... here. (convert_cfa_to_loc_list): New. (compute_frame_pointer_to_cfa_displacement): New. (gen_subprogram_die): Use them. * tree.h (frame_base_decl): Remove. * var-tracking.c (frame_base_decl, frame_stack_adjust): Remove. (prologue_stack_adjust): Remove. (vt_stack_adjustments): Use INCOMING_FRAME_SP_OFFSET. (adjust_stack_reference): Re-base memories to arg_pointer_rtx. (set_frame_base_location): Remove. (compute_bb_dataflow, emit_notes_in_bb): Don't call it. (dump_attrs_list, dump_dataflow_set): Use string concatenation. (vt_add_function_parameters): Don't eliminate_regs. (vt_initialize): Don't create frame_base_decl. From-SVN: r103983
Richard Henderson committed -
PR fortran/19269 * simplify.c (gfc_simplify_transpose): Set the result's typespec from the source, not the first element of the return value. From-SVN: r103982
Richard Sandiford committed -
2005-09-07 Richard Guenther <rguenther@suse.de> * cp-gimplify.c (cp_gimplify_expr): Create empty CONSTRUCTOR for EMPTY_CLASS_EXPR. From-SVN: r103981
Richard Guenther committed -
install.texi (*-*-solaris2*): Clarify wording on the recommended version of GNU binutils for 4.x and later. * doc/install.texi (*-*-solaris2*): Clarify wording on the recommended version of GNU binutils for 4.x and later. From-SVN: r103980
Eric Botcazou committed -
* ggc-page.c (ggc_push_context): Remove. (ggc_pop_context): Likewise. * ggc.h (ggc_push_context): Remove. (ggc_pop_context): Likewise. From-SVN: r103979
Mark Mitchell committed -
[[Split portion of a mixed commit.]] From-SVN: r103975.2
GCC Administrator committed
-
- 06 Sep, 2005 4 commits
-
-
re PR target/8973 ([arc-7-elf] the interupt handler does not return properly, uses j.d insted of j.d.f) 2005-09-06 Saurabh Verma <saurabh.verma@codito.com> PR target/8973 * config/arc/arc.c (arc_output_function_epilogue): Update flags while returning from an interrupt handler. From-SVN: r103972
Saurabh Verma committed -
2005-09-06 Saurabh Verma <saurabh.verma@codito.com> PR target/8972 * config/arc/arc.c (output_shift): Add check for loop count when optimizing. From-SVN: r103971
Saurabh Verma committed -
* tree-ssa-phiopt.c (conditional_replacement): Construct proper SSA form manually. (abs_replacement): Likewise. (pass_phiopt): Remove TODO_update_ssa. From-SVN: r103970
Steven Bosscher committed -
PR c/23075 * c-typeck.c (c_finish_return): Set TREE_NO_WARNING on RETURN_EXPR if "return with no value, in function returning non-void" warning has been issued. * tree-cfg.c (execute_warn_function_return): Don't look at RETURN_EXPRs with TREE_NO_WARNING set. * typeck.c (check_return_expr): Add no_warning argument. Set *no_warning to true if "return-statement with no value, in function returning" warning has been issued. * cp-tree.h (check_return_expr): Adjust prototype. * semantics.c (finish_return_stmt): Set TREE_NO_WARNING if check_return_expr set *no_warning to true. * gcc.dg/pr23075.c: New test. * g++.dg/warn/pr23075.C: New test. From-SVN: r103967
Jakub Jelinek committed
-