- 29 Jun, 2004 33 commits
-
-
2004-06-29 Steven Bosscher <stevenb@suse.de> Make sure types in assignments are compatible. Mostly mechanical. * trans-const.h (gfc_index_one_node): New define. * trans-array.c (gfc_trans_allocate_array_storage, gfc_trans_allocate_temp_array, gfc_trans_array_constructor_subarray, gfc_trans_array_constructor_value, gfc_trans_array_constructor, gfc_conv_array_ubound, gfc_conv_array_ref, gfc_trans_scalarized_loop_end, gfc_conv_section_startstride, gfc_conv_ss_startstride, gfc_conv_loop_setup, gfc_array_init_size, gfc_trans_array_bounds, gfc_trans_dummy_array_bias, gfc_conv_expr_descriptor, gfc_trans_deferred_array): Use the correct types in assignments, conversions and conditionals for expressions. * trans-expr.c (gfc_conv_expr_present, gfc_conv_substring, gfc_conv_unary_op, gfc_conv_cst_int_power, gfc_conv_string_tmp, gfc_conv_function_call, gfc_trans_pointer_assignment, gfc_trans_scalar_assign): Likewise. * trans-intrinsic.c (build_fixbound_expr, gfc_conv_intrinsic_bound, gfc_conv_intrinsic_anyall, gfc_conv_intrinsic_count, gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_btest, gfc_conv_intrinsic_singlebitop, gfc_conv_intrinsic_ishft, gfc_conv_intrinsic_ishftc, gfc_conv_intrinsic_strcmp, gfc_conv_allocated, gfc_conv_associated, gfc_conv_intrinsic_rrspacing, gfc_conv_intrinsic_trim): Likewise. * trans-io.c (set_string): Likewise. * trans-stmt.c (gfc_trans_do, gfc_trans_forall_loop, gfc_do_allocate, generate_loop_for_temp_to_lhs, generate_loop_for_rhs_to_temp, compute_inner_temp_size, compute_overall_iter_number, gfc_trans_assign_need_temp, gfc_trans_pointer_assign_need_temp, gfc_trans_forall_1, gfc_evaluate_where_mask, gfc_trans_where_assign, gfc_trans_where_2): Likewise. * trans-types.c (gfc_get_character_type, gfc_build_array_type, gfc_get_nodesc_array_type, gfc_get_array_type_bounds): Likewise. * trans.c (gfc_add_modify_expr): Add sanity check that types for the lhs and rhs are the same for scalar assignments. From-SVN: r83877
Steven Bosscher committed -
From-SVN: r83876
Tobias Schlüter committed -
From-SVN: r83875
Tobias Schlüter committed -
* dump-parse-tree.c (show_common): New function. (gfc_show_namespace): Show commons. From-SVN: r83874
Tobias Schlüter committed -
* gcc.dg/compat/vector-defs.h: Use vector_size attribute only for GCC 3.5+, for GCC up to 3.4 mode(V*) attribute instead. From-SVN: r83873
Jakub Jelinek committed -
PR target/16195 * config/rs6000/rs6000.c (rs6000_conditional_register_usage): Make r30 fixed if TARGET_TOC && TARGET_MINIMAL_TOC. (first_reg_to_save): Pretend call_used_regs[30] is 0 if TARGET_TOC && TARGET_MINIMAL_TOC. (rs6000_emit_prologue, rs6000_emit_epilogue): Likewise. * gcc.dg/20040625-1.c: New test. From-SVN: r83872
Jakub Jelinek committed -
2004-06-29 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de> Andrew Vaught <andyv@firstinter.net> PR fortran/13249 PR fortran/15481 * declc (gfc_match_save): Adapt to new common structures, don't allow saving USE-associated common. * dump-parse-tree (gfc_show_attr): (saved_)common are not symbol attributes any longer. (gfc_show_symbol): Don't show old-style commons any longer. (gfc_show_namespace): Adapt call to gfc_traverse_symtree to new interface. * gfortran.h (symbol_attribute): Remove common and saved_common attributes. (gfc_symbol): Remove common_head element. (gfc_common_head): New struct. (gfc_get_common_head): New macro. (gfc_symtree): Add field 'common' to union. (gfc_namespace): Add field 'common_root'; change type of field 'blank_common' to blank_common. (gfc_add_data): New prototype. (gfc_traverse_symtree): Expect a symtree as first argument instead of namespace. * match.c (gfc_get_common): New function. (match_common_name): Change to take char * as argument, adapt, fix bug with empty name. (gfc_match_common): Adapt to new data structures. Disallow redeclaration of USE-associated COMMON-block. Fix bug with empty common. (var_element): Adapt to new common structures. * match.h (gfc_get_common): Declare. * module.c: Add 2004 to copyright years, add commons to module file layout description. (ab_attribute, attr_bits, mio_symbol_attributes): Remove code for removed attributes. (mio_symbol): Adapt to new way of storing common relations. (load_commons): New function. (read_module): Skip common list on first pass, load_commons at second. (write_commons): New function. (write_module): Call write_commons(). * symbol.c (gfc_add_saved_comon, gfc_add_common): Remove functions related to removed attributes. (gfc_add_data): New function. (gfc_clear_attr): Don't set removed attributes. (gfc_copy_attr): Don't copy removed attributes. (traverse_symtree): Remove. (gfc_traverse_symtree): Don't traverse symbol tree of the passed namespace, but require a symtree to be passed instead. Unify with traverse_symtree. (gfc_traverse_ns): Call gfc_traverse_symtree according to new interface. (save_symbol): Remove setting of removed attribute. * trans-common.c (gfc_sym_mangled_common_id): Change to take 'char *' argument instead of 'gfc_symbol'. (build_common_decl, new_segment, translate_common): Adapt to new data structures, add new argument name. (create_common): Adapt to new data structures, add new argument name. Fix typo in intialization of derived types. (finish_equivalences): Add second argument in call to create_common. (named_common): take 'gfc_symtree' instead of 'gfc_symbol'. (gfc_trans_common): Adapt to new data structures. * trans-decl.c (gfc_create_module_variables): Also output symbols from commons. Co-Authored-By: Andrew Vaught <andyv@firstinter.net> From-SVN: r83871
Tobias Schlüter committed -
From-SVN: r83870
Tobias Schlüter committed -
* testsuite/libjava.compile/PR16249.java: New test case. PR gcc/16249. From-SVN: r83869
Bryce McKinlay committed -
2004-06-29 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de> Andrew Vaught <andyv@firstinter.net> * gfortran.h (gfc_gsymbol): New typedef. (gfc_gsym_root): New variable. (gfc_get_gsymbol, gfc_find_gsym): New prototypes. * parse.c (global_used): New function. (parse_block_data): Check for double empty BLOCK DATA, use global symbol table. (parse_module): Use global symbol table. (add_global_procedure, add_global_program): New functions. (gfc_parse_file): Use global symbol table. * symbol.c (gfc_gsym_root): New variable. (gfc_find_gsym, gsym_compare, gfc_get_gsymbol): New functions. Co-Authored-By: Andrew Vaught <andyv@firstinter.net> From-SVN: r83868
Tobias Schlüter committed -
PR java/1262 * class.c (layout_class_method): Do not override package-private method if its in a different package. (split_qualified_name): Move here from parse.y. Rename from breakdown_qualified. Add comment. (in_same_package): Move here from parse.y. Add comment. * java-tree.h (break_down_qualified, in_same_package): Declare. (in_same_package): Likewise. * parse.y (breakdown_qualified, in_same_package): Moved to class.c. Callers updated. From-SVN: r83867
Bryce McKinlay committed -
* sh.h (TARGET_VARARGS_PRETEND_ARGS): Define. * sh.c (extra_push): Delete. (sh_expand_prologue): Don't do extra stack adjustment for current_function_pretend_args_size if it comes from varargs setup. Use TARGET_VARARGS_PRETEND_ARGS. Don't set extra_push. (sh_expand_epilogue): Don't use extra_push. (sh_setup_incoming_varargs): Set pretend_arg_size when necessary. From-SVN: r83864
Joern Rennecke committed -
* sh.h (TARGET_VARARGS_PRETEND_ARGS): Define. * sh.c (extra_push): Delete. (sh_expand_prologue): Don't do extra stack adjustment for current_function_pretend_args_size if it comes from varargs setup. Use TARGET_VARARGS_PRETEND_ARGS. Don't set extra_push. (sh_expand_epilogue): Don't use extra_push. (sh_setup_incoming_varargs): Set pretend_arg_size when necessary. [[Split portion of a mixed commit.]] From-SVN: r83863.2
Joern Rennecke committed -
fortran/ * module.c (mio_gmp_real): Correct writing of negative numbers. testsuite/ * gfortran.fortran-torture/execute/parameter_2.f90: New test. Also corrected dates in previous ChangeLog entries From-SVN: r83862
Tobias Schlüter committed -
* expmed.c (expand_smod_pow2): Provide alternate implementations that avoid conditional jumps, and choose between them based upon the target's rtx_costs. From-SVN: r83861
Roger Sayle committed -
2004-06-29 Andrew Pinski <apinski@apple.com> * tree-sra.c: Include expr.h for definition of MOVE_RATIO. * Makefile.in (tree-sra.c): Update dependencies. From-SVN: r83860
Andrew Pinski committed -
fortran/ PR fortran/15963 * expr.c (check_intrinsic_op): Allow comparison of characters. Make logic easier. testsuite/ PR fortran/15963 * gfortran.fortran-torture/execute/initialization_1.f90: New test. From-SVN: r83859
Tobias Schlüter committed -
* tree-sra.c: Rewrite from scratch. Handle nested aggregates. * gcc.dg/tree-ssa/20040430-1.c: Expect zero if's. From-SVN: r83858
Richard Henderson committed -
2004-06-29 Andrew Haley <aph@redhat.com> * except.c (expand_start_java_handler): Push a new binding level. Don't build a TRY_CATCH_EXPR now, we'll do it later. Call register_exception_range() to register where we'll do it. (expand_end_java_handler): Remove old bogus code. Replace with new logic that simply builds TRY_CATCH_EXPRs and inserts them at the top of the expression we're curently building. (maybe_end_try): Delete. * decl.c (binding_level.exception_range): New field. (clear_binding_level): Add field exception_range. Reformat. (poplevel): Call expand_end_java_handler(). (poplevel): Call java_add_stmt only if functionbody is false. (maybe_poplevels): Don't call maybe_end_try() from here. (end_java_method): Clear no longer used trees in function decl. (register_exception_range): New function. * java-tree.h (register_exception_range, struct eh_range): Declare. From-SVN: r83857
Andrew Haley committed -
* vec.h (VEC_T_safe_push, VEC_T_safe_insert): Tweak for when size_t is bigger than int. From-SVN: r83855
Nathan Sidwell committed -
gcc/ * target-def.h (TARGET_CXX_GET_COOKIE_SIZE, TARGET_CXX_COOKIE_HAS_SIZE): Define. (TARGET_CXX): Use them. * target.h (struct gcc_target): Add cxx.get_cookie_size and cxx.cookie_has_size. * targhooks.c (default_cxx_get_cookie_size): New fucntion. * targhooks.h (default_cxx_get_cookie_size): Add prototype. * config/arm/arm.c (TARGET_CXX_GET_COOKIE_SIZE, TARGET_CXX_COOKIE_HAS_SIZE): Define. (arm_get_cookie_size, arm_cookie_has_size): New functions. * Make-lang.in (cp/init.o): Add dependency on $(TARGET_H). * doc/tm.texi: Document TARGET_CXX_GET_COOKIE_SIZE and TARGET_CXX_COOKIE_HAS_SIZE. gcc/cp/ * init.c: Include target.h. (get_cookie_size): Remove and replace with target hook. Update callers. (build_new_1): Store the element size in the cookie. libstdc++-v3/ * libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Store the element size in the cookie. testsuite/ * g++.old-deja/g++.abi/arraynew.C: Handle ARM EABI cookies. * g++.old-deja/g++.abi/cxa_vec.C: Allocate larger cookies for AEABI. From-SVN: r83854
Paul Brook committed -
From-SVN: r83853
Danny Smith committed -
cp: PR c++/16260 * parser.c (cp_parser_template_declaration_after_export): Disable access checks here ... (cp_parser_class_specifier): ... not here. testsuite: PR c++/16260 * g++.dg/parse/crash15.C: New. From-SVN: r83851
Nathan Sidwell committed -
configure.ac (AC_CHECK_HEADERS): Add dirent.h configure: Regenerate. mf-hooks2.c: Surround uses of dirent.h with #ifdef HAVE_DIRENT_H. Remove spurious inclusion of <strings.h>. From-SVN: r83850
Nick Clifton committed -
* cfglayout.c (fixup_reorder_chain): Don't do anything for e_fall->dest == EXIT_BLOCK_PTR. From-SVN: r83849
J"orn Rennecke committed -
From-SVN: r83847
Nick Clifton committed -
* tree-cfg.c (verify_stmt): Add last_in_block parameter. Verify that eh stmts can throw. (verify_stmts): Update verify_stmt call. (tree_purge_dead_eh_edges, tree_purge_all_dead_eh_edges): New. * tree-eh.c (remove_stmt_from_eh_region): New. (lower_eh_constructs): Fix throw_stmt_table delete routine. (tree_could_trap_p): Match may_trap_p. (maybe_clean_eh_stmt): New. * tree-flow.h: Update decls. * tree-ssa-ccp.c (pass_ccp): Add TODO_verify_stmts. (substitute_and_fold): Clean eh edges. * tree-ssa-dce.c (mark_control_dependent_edges_necessary): Handle empty basic blocks. * tree-ssa-dom.c (need_eh_cleanup): New. (tree_ssa_dominator_optimize): Allocate it. Cleanup eh edges. (optimize_stmt): Cleanup eh stmts; set need_eh_cleanup. From-SVN: r83843
Richard Henderson committed -
* function.c (assign_parms): Don't abort with zero size stack parm failing the PARM_BOUNDARY check. From-SVN: r83840
Alan Modra committed -
2004-06-28 Andrew Pinski <apinski@apple.com> * gcc.dg/pr14963.c: Remove the dg-warning as it is dected by the error already. From-SVN: r83839
Andrew Pinski committed -
* testsuite/libjava.jacks/jacks.xfail: Remove 8.1.3-superclass-6. From-SVN: r83838
Bryce McKinlay committed -
* common.opt (ftree-fre): New flag. * flags.h (flag_tree_fre): Declare. * opts.c (decode_options): Set. * timevar.def (TV_TREE_FRE): Define. * tree-flow-inline.h (may_propagate_copy): Re-arrange for readability. Handle destinations that are not SSA_NAMEs. * tree-flow.h (struct ptr_info_def): Move from tree.h (cprop_into_stmt, cprop_into_successor_phis): Remove. (vn_compute, vn_lookup_or_add, vn_add, vn_lookup): Add vuse_optype parameter. * tree-pass.h (pass_fre): Declare. * tree-ssa-copy.c (cprop_operand): Move to tree-ssa-dom.c (cprop_into_stmt): Likewise. (cprop_into_successor_phis): Likewise. * tree-ssa-dom.c (eliminate_redundant_computations): Fix argument ordering in call to may_propagate_copy. * tree-ssa-pre.c (is_undefined_value): Assume hard registers to be always defined. (add_to_sets): New local function. (create_value_expr_from): New local function. (compute_avail): Call them. (eliminate): Don't ignore statements with virtual operands. (init_pre): New local function. (fini_pre): New local function. (execute_pre): Call them. Add argument DO_FRE. Don't do insertion if DO_FRE is true. (do_pre): New function. (do_fre): New function. (gate_fre): New function. (pass_fre): Declare. * tree-ssa.c (init_tree_ssa): Don't call vn_init. (delete_tree_ssa): Don't call vn_delete. * tree-vn.c (val_expr_pair_d): Add documentation. (vn_compute): Add VUSES argument to incorporate in computing hash values. Update all callers. (expressions_equal_p): Call operand_equal_p with OEP_PURE_SAME. (vn_add): Add VUSES argument. Update all callers. (vn_lookup): Likewise. (vn_lookup_or_add): Likewise. * doc/invoke.texi: Document -ftree-fre and -fdump-tree-fre. From-SVN: r83837
Diego Novillo committed -
2004-06-28 Jerry Quinn <jlquinn@optonline.net> * java/beans/Expression.java: New file. * java/beans/Statement.java: New file. * Makefile.am: Added new files. * Makefile.in: Re-generate. From-SVN: r83836
Jerry Quinn committed -
From-SVN: r83834
GCC Administrator committed
-
- 28 Jun, 2004 7 commits
-
-
From-SVN: r83831
Bryce McKinlay committed -
* config/m32r/m32r.c (m32r_sched_odd_word_p, m32r_adjust_cost, m32r_sched_init, m32r_sched_reorder, m32r_variable_issue): Remove. (TARGET_SCHED_ADJUST_COST, TARGET_SCHED_VARIABLE_ISSUE, TARGET_SCHED_INIT, TARGET_SCHED_REORDER): Don't define. * config/m32r/m32r.md: Rewrite the pipeline description as a DFA. From-SVN: r83829
Steven Bosscher committed -
* tree.def (REALPART_EXPR, IMAGPART_EXPR): Change class to 'r'. * fold-const.c (operand_equal_p <case 'r'>): Add REALPART_EXPR, IMAGPART_EXPR. * tree-dump.c (dequeue_and_dump): Handle REALPART_EXPR and IMAGPART_EXPR explicitly. * tree-inline.c (estimate_num_insns_1): Don't handle REALPART_EXPR and IMAGPART_EXPR specially. * tree.c (build1_stat): Copy TREE_THIS_VOLATILE into class 'r'. From-SVN: r83825
Richard Henderson committed -
From-SVN: r83819
Joern Rennecke committed -
From-SVN: r83818
J"orn Rennecke committed -
* builtins.def (execl, execlp, execle, execv, execvp, execve, fork): Change to DEF_EXT_LIB_BUILTIN. From-SVN: r83817
Joseph Myers committed -
* decl.c: Remove calls to add_decl_expr, pushdecl, rest_of_compilation, and rest_of_type_compilation; add arg to create_*_decl. (annotate_decl_with_node): Deleted. (gnat_to_gnu_entity, case E_Array_Type): Set location of fields. * gigi.h (get_decls, block_has_vars, pushdecl): Deleted. (get_current_block_context, gnat_pushdecl): New declarations. (gnat_init_stmt_group): Likewise. (create_var_decl, create_type_decl, create_subprog_decl): Add new arg. * misc.c (LANG_HOOKS_CLEAR_BINDING_STACK): Deleted. (LANG_HOOKS_GETDECLS, LANG_HOOKS_PUSHDECL): Deleted. (gnat_init): Call gnat_init_stmt_group. * trans.c (global_stmt_group, gnu_elab_proc_decl): New variables. (gnu_pending_elaboration_list): Deleted. (mark_visited, mark_unvisited, gnat_init_stmt_group): New functions. (gigi): Rearrange initialization calls and move some to last above. (gnat_to_gnu): If statement and not in procedure, go into elab proc. Delete calls to add_decl_expr; add arg to create_*_decl. (gnat_to_gnu, case N_Loop): Recalculate side effects on COND_EXPR. (gnat_to_gnu, case N_Subprogram_Body): Move some code to begin_subprog_body and call it. Don't push and pop ggc context. (gnat_to_gnu, case N_Compilation_Unit): Rework to support elab proc. (add_stmt): Remove handling of DECL_EXPR from here. If not in function, mark visited. (add_decl_expr): Put global at top level. Check for cases of DECL_INITIAL we have to handle here. (process_type): Add extra arg to create_type_decl. (build_unit_elab): Rework to just gimplify. * utils.c (pending_elaborations, elist_stack, getdecls): Deleted. (block_has_vars, mark_visited, add_pending_elaborations): Likewise. (get_pending_elaborations, pending_elaborations_p): Likewise. (push_pending_elaborations, pop_pending_elaborations): Likewise. (get_elaboration_location, insert_elaboration_list): Likewise. (gnat_binding_level): Renamed from ada_binding_level. (init_gnat_to_gnu): Don't clear pending_elaborations. (global_bindings_p): Treat as global if no current_binding_level. (set_current_block_context): New function. (gnat_pushdecl): Renamed from pushdecl; major rework. All callers changed. (create_type_decl, create_var_decl, create_subprog_decl): Add new arg. (finish_record_type): Call call pushdecl for stub decl. (function_nesting_depth): Deleted. (begin_subprog_body): Delete obsolete code. * utils2.c (build_call_alloc_dealloc): Add new arg to create_var_decl. From-SVN: r83816
Richard Kenner committed
-