aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2004-07-04tree-ssa-ccp.c (set_rhs): Change function to return a bool.Roger Sayle2-10/+32
* tree-ssa-ccp.c (set_rhs): Change function to return a bool. Ensure the replacement rhs is valid gimple before performing the substitution. Return false if these sanity checks fail. (fold_stmt): Only set changed to true, if set_rhs returns true. (execute_fold_all_builtins): Only call modify_stmt if set_rhs succeeds. From-SVN: r84091
2004-07-04re PR c/16348 (Loop gets executed when it shouldnt)Richard Henderson3-4/+21
PR c/16348 * c-typeck.c (c_finish_loop): Don't clear cond for cond_is_first loops. From-SVN: r84089
2004-07-04configure.ac (ranlib_flags): New variable.Mark Mitchell4-3/+38
* configure.ac (ranlib_flags): New variable. * Makefile.in (RANLIB_FLAGS): New variable. (libbackend.a): Use it. * configure: Regenerated. From-SVN: r84088
2004-07-04re PR libfortran/15280 (Fortran9x commandline not accessable)Janne Blomqvist8-2/+130
PR fortran/15280 PR fortran/15665 * gfortran.h (enum gfc_generic_isym_id): Add GFC_ISYM_IARGC and GFC_ISYM_COMMAND_ARGUMENT_COUNT. * intrinsic.c (add_functions): Identify iargc. Add command_argument_count. (add_subroutines): Resolve getarg. Add get_command and get_command_argument. * intrinsic.h (gfc_resolve_getarg, gfc_resolve_get_command, gfc_resolve_get_command_argument): Add prototypes. * iresolve.c (gfc_resolve_getarg, gfc_resolve_get_command, gfc_resolve_get_command_argument): New functions. * trans-decl.c (gfor_fndecl_iargc): New variable. (gfc_build_intrinsic_function_decls): Set it. * trans-intrinsic.c (gfc_conv_intrinsic_iargc): New function. (gfc_conv_intrinsic_function): Use it. * trans.h (gfor_fndecl_iargc): Declare. libgfortran/ * libgfortran.h (gfc_strlen_type): Define. * intrinsics/args.c (getarg): Rename ... (getarg_i4): ... to this. (getarg_i8, get_command_argument_i4, get_command_argument_i8, get_command_i4, get_command_i8): New functions. Co-Authored-By: Paul Brook <paul@codesourcery.com> From-SVN: r84087
2004-07-04* verify.c: Correct array element access formatting thinko.Ranjit Mathew2-48/+52
From-SVN: r84086
2004-07-04verify.c: Insert a short blurb at the start referring to the JVMS.Ranjit Mathew2-108/+213
* verify.c: Insert a short blurb at the start referring to the JVMS. Minor formatting fixes all over the place. (merge_type_state): Remove redundant nested if statement. (verify_jvm_instructions): Ensure current_subr is initialised to NULL_TREE. Cii: Enter Log. Lines beginning with `CVS:' are removed automaticalli From-SVN: r84084
2004-07-04ifcvt.c (noce_try_sign_mask): Call emit_store_flag to generate a "sign mask" ↵Roger Sayle2-2/+9
instead of using ashr_optab directly. * ifcvt.c (noce_try_sign_mask): Call emit_store_flag to generate a "sign mask" instead of using ashr_optab directly. From-SVN: r84081
2004-07-04re PR preprocessor/16192 (Bug in expression evaluation when operand is missing)Neil Booth6-8/+30
* doc/cpp.texi: Don't document what we do for ill-formed expressions. * doc/cppopts.texi: Clarify processing of command-line defines. libcpp: PR preprocessor/16192 PR preprocessor/15913 PR preprocessor/15572 * expr.c (_cpp_parse_expr): Handle remaining cases where an expression is missing. * init.c (post_options): Traditional cpp doesn't do // comments. testsuite: * gcc.dg/cpp/if-mop.c: Two new testcases. * gcc.dg/cpp/trad/comment-3.c: New. From-SVN: r84080
2004-07-04* doc/contrib.texi (Contributors): Adjust link for GNU Classpath.Gerald Pfeifer2-1/+5
From-SVN: r84078
2004-07-04Make-lang.in: Generate and install gfortran man page.Matthias Klose3-8/+28
2004-07-04 Matthias Klose <doko@debian.org> * Make-lang.in: Generate and install gfortran man page. * invoke.texi: Remove extra '@c man end'. From-SVN: r84073
2004-07-04rtl.def (ADDRESSOF): Remove.Richard Henderson44-2866/+203
* rtl.def (ADDRESSOF): Remove. * alias.c (rtx_equal_for_memref_p): Don't handle addressof. (find_base_term, memrefs_conflict_p): Likewise. * cse.c (fixed_base_plus_p, find_best_addr: Likewise. (fold_rtx, cse_insn, set_live_p): Likewise. * dwarf2out.c (mem_loc_descriptor): Likewise. (add_location_or_const_value_attribute): Likewise. * emit-rtl.c (copy_insn_1): Likewise. * explow.c (memory_address): Likewise. * expmed.c (store_split_bit_field): Likewise. * expr.c (expand_expr_real_1): Likewise. * function.c (instantiate_decl (instantiate_virtual_regs_1, fix_lexical_addr): Likewise. * genrecog.c (preds, validate_pattern): Likewise. * integrate.c (copy_rtx_and_substitute): Likewise. * recog.c (general_operand, register_operand): Likewise. (memory_address_p): Likwise. * reload1.c (eliminate_regs, elimination_effects): Likewise. * rtl.c (copy_rtx): Likewise. * rtlanal.c (rtx_unstable_p, rtx_varies_p): Likewise. (rtx_addr_can_trap_p, nonzero_address_p, address_cost): Likewise. * rtlhooks.c (gen_lowpart_general): Likewise. * stmt.c (expand_asm_operands): Likewise. * web.c (entry_register, replace_ref, web_main): Likewise. * config/alpha/alpha.c (input_operand, alpha_legitimate_address_p, alpha_expand_block_move, alpha_expand_block_clear): Likewise. * config/arm/arm.c (thumb_rtx_costs): Likewise. * config/c4x/c4x.c (c4x_valid_operands): Likewise. * config/frv/frv.c (move_destination_operand, move_source_operand, condexec_dest_operand, condexec_source_operand, condexec_memory_operand): Likewise. * config/h8300/h8300.h (PREDICATE_CODES): Likewise. * config/ia64/ia64.c (general_xfmode_operand): Likewise. (destination_xfmode_operand): Likewise. * config/mips/mips.h (PREDICATE_CODES): Likewise. * config/mn10300/mn10300.c (mn10300_address_cost_1): Likewise. * config/s390/s390.c (general_s_operand): Likewise. * config/s390/s390.md (mov*): Likewise. * config/sparc/sparc.h (PREDICATE_CODES): Likewise. * c-typeck.c (c_mark_addressable): Don't put_var_into_stack. * expr.c (expand_expr_real_1): Likewise. * stmt.c (expand_decl): Likewise. * config/c4x/c4x.c (c4x_expand_builtin): Likewise. * function.c (struct fixup_replacement, struct insns_for_mem_entry, postponed_insns, put_var_into_stack, put_reg_into_stack, schedule_fixup_var_refs, fixup_var_refs, find_fixup_replacement, fixup_var_refs_insns, fixup_var_refs_insns_with_hash, fixup_var_refs_insn, fixup_var_refs_1, fixup_memory_subreg, walk_fixup_memory_subreg, fixup_stack_1, optimize_bit_field, gen_mem_addressof, flush_addressof, put_addressof_into_stack, purge_bitfield_addressof_replacements, purge_addressof_replacements, purge_addressof_1, insns_for_mem_hash, insns_for_mem_comp, struct insns_for_mem_walk_info, insns_for_mem_walk, compute_insns_for_mem, is_addressof, purge_addressof, setjmp_protect, setjmp_protect_args): Remove. (push_function_context_to): Don't handle var_refs_queue. (pop_function_context_from, free_after_compilation): Likewise. (instantiate_virtual_regs): Don't handle parm_reg_stack_loc. (assign_parms, allocate_struct_function): Likewise. (use_register_for_decl): New. (expand_function_end): Don't setjmp_protect. * function.h (struct emit_status): Update commentary. (struct function): Remove x_max_parm_reg, x_parm_reg_stack_loc. (max_parm_reg, parm_reg_stack_loc): Remove. * passes.c (DFI_addressof): Remove. (dump_file_info): Remove addressof. (rest_of_handle_addressof): Remove. (rest_of_compilation): Don't call it. * rtl.h (ADDRESSOF_REGNO, ADDRESSOF_DECL): Remove. * stmt.c (expand_decl): Use use_register_for_decl. * tree.h: Update decls. * web.c (mark_addressof): Remove. * doc/invoke.texi (-dF): Remove. ada/ * utils2.c (gnat_mark_addressable): Don't put_var_into_stack. cp/ * typeck.c (cxx_mark_addressable): Don't put_var_into_stack. fortran/ * f95-lang.c (gfc_mark_addressable): Don't put_var_into_stack. treelang/ * treetree.c (tree_mark_addressable): Don't put_var_into_stack. From-SVN: r84072
2004-07-03ia64.c (spill_xfmode_operand): Use assign_stack_temp instead of ↵Richard Henderson3-8/+30
gen_mem_addressof. * config/ia64/ia64.c (spill_xfmode_operand): Use assign_stack_temp instead of gen_mem_addressof. * config/ia64/ia64.md (movxf): Use assign_stack_temp to handle TImode output register. From-SVN: r84071
2004-07-03re PR tree-optimization/16341 (BOOT_CFLAGS='-O2 -fno-inline' causes a ↵Richard Henderson3-3/+160
comparision failure) PR tree-optimization/16341 * tree-sra.c (sra_walk_function): Increment to next stmt before processing the current stmt. (sra_insert_after): Always use BSI_SAME_STMT. From-SVN: r84070
2004-07-03Missed commitRichard Henderson1-0/+5
From-SVN: r84069
2004-07-04Daily bump.GCC Administrator1-1/+1
[[Split portion of a mixed commit.]] From-SVN: r84065.2
2004-07-03decl.c (gfc_match_implicit_range): Don't use typespec.Paul Brook7-85/+126
* decl.c (gfc_match_implicit_range): Don't use typespec. (gfc_match_implicit): Handle character selectors. * gfortran.h (gfc_set_implicit): Remove prototype. (gfc_add_new_implicit_range, gfc_merge_new_implicit): Update. * parse.c (accept_statement): Don't call gfc_set_implicit. * symbol.c (new_ts): Remove. (gfc_set_implicit_none): Use same loop bounds as other functions. (gfc_set_implicit): Remove. (gfc_clear_new_implicit, gfc_add_new_implicit_range): Only set flags. (gfc_merge_new_implicit): Combine with gfc_set_implicit. testsuite/ * gfortran.fortran-torture/compile/implicit_1.f90: New test. From-SVN: r84063
2004-07-03tree.c (type_hash_eq): Allow TYPE_MIN_VALUE which compares equal with ↵Joseph Myers2-1/+6
tree_int_cst_equal. * tree.c (type_hash_eq): Allow TYPE_MIN_VALUE which compares equal with tree_int_cst_equal. From-SVN: r84062
2004-07-03tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Don't fold fp plus with ↵Richard Henderson2-0/+32
minus. * tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Don't fold fp plus with minus. From-SVN: r84061
2004-07-03ia64.md: Define new attribute "empty".Andreas Schwab3-8/+24
* config/ia64/ia64.md: Define new attribute "empty". (prologue_use, nop_x, insn_group_barrier): Set it. * config/ia64/ia64.c (ia64_reorg): When looking for trailing call skip over "empty" insns. From-SVN: r84059
2004-07-03tree-inline.c (initialize_inlined_parameters): Pass proper function context ↵Richard Kenner2-10/+37
to gimplify_body. * tree-inline.c (initialize_inlined_parameters): Pass proper function context to gimplify_body. (walk_tree): Don't walk into types twice. (walk_tree, case POINTER_TYPE): Deal with mutually recursive pointers. From-SVN: r84058
2004-07-03* tree-sra.c (generate_element_init): Remove any useless conversions.Richard Kenner2-1/+6
From-SVN: r84057
2004-07-03gimplify.c (gimplify_conversion): Remove stripping useless conversions from ↵Richard Kenner2-14/+24
here. * gimplify.c (gimplify_conversion): Remove stripping useless conversions from here. (gimplify_expr): Put it here, in place of call to STRIP_MAIN_TYPE_NOPS. (gimplify_modify_expr_to_memcpy, gimplify_variable_sized_compare): Unshare before substituting PLACEHOLDER_EXPR. (gimplify_modify_expr_to_memset): Likewise. Pass address of TO to memset, not TO itself. (gimplify_init_constructor): Make copy of OBJECT so we have it each time we make an expression (to match a PLACEHOLDER_EXPR). From-SVN: r84056
2004-07-03tree-ssa.c (tree_ssa_useless_type_conversion): Also look at ↵Richard Kenner4-3/+8
VIEW_CONVERT_EXPR and NON_LVALUE_EXPR. * tree-ssa.c (tree_ssa_useless_type_conversion): Also look at VIEW_CONVERT_EXPR and NON_LVALUE_EXPR. * tree-ssa-ccp.c (fold_stmt): Call just STRIP_USELESS_TYPE_CONVERSION. * tree-ssa-dom.c (local_fold): Likewise. From-SVN: r84054
2004-07-03langhooks-def.h (LANG_HOOKS_TYPE_MAX_SIZE): New langhook.Richard Kenner4-0/+20
* langhooks-def.h (LANG_HOOKS_TYPE_MAX_SIZE): New langhook. * langhooks.h (strct lang_hooks): New field type_max_size. * function.c (assign_temp): Call it. From-SVN: r84053
2004-07-03sh.c (sh_use_dfa_interface): Add TARGET_SH1.Steven Bosscher3-26/+54
* config/sh/sh.c (sh_use_dfa_interface): Add TARGET_SH1. * config/sh/sh.md: Convert the SH1 pipeline description to a DFA model. From-SVN: r84047
2004-07-03c-decl.c (struct c_binding): Remove contour field; add depth, invisible, ↵Zack Weinberg3-93/+188
nested fields. * c-decl.c (struct c_binding): Remove contour field; add depth, invisible, nested fields. (B_IN_SCOPE, B_IN_CURRENT_SCOPE, B_IN_FILE_SCOPE) (B_IN_EXTERNAL_SCOPE): New convenience macros. (bind): Add invisible and nested arguments. Initialize new fields of struct c_binding; adjust loop scanning for insertion point. (free_binding_and_advance): Clear structure with memset. (pop_scope): Adjust to match. Set DECL_CONTEXT on everything in file scope, even if it's in external scope too. (pushdecl): Adjust to match. Create invisible file-scope declarations for block-scope forward declarations of static functions. (pushtag, warn_if_shadowing, pushdecl_top_level, implicitly_declare) (undeclared_variable, lookup_label, declare_label, define_label) (lookup_tag, lookup_name, lookup_name_in_scope, builtin_function) (c_make_fname_decl, store_parm_decls_newstyle, identifier_global_value) (store_parm_decls_oldstyle): Adjust to match. (diagnose_mismatched_decls): Correct handling of linkage clashes. (merge_decls): No need to copy C_DECL_IN_EXTERNAL_SCOPE. * c-tree.h (C_DECL_IN_EXTERNAL_SCOPE): Delete. (C_DECL_DECLARED_BUILTIN, C_DECL_REGISTER): Slide down one. From-SVN: r84046
2004-07-03re PR c++/3761 (ICE in check_template_shadow, at cp/pt.c:2013, with friend ↵Scott Brumbaugh4-1/+43
and strange class hierarchy) PR c++/3761 * name-lookup.c (push_class_level_binding): Don't pass a TREE_LIST of ambiguous names to check_template_shadow as it only handles declarations. Instead, pull the declaration out and pass that. PR c++/3761 * g++.dg/lookup/crash4.C: New test. From-SVN: r84045
2004-07-03* gcc.c-torture/execute/builtin-abs-1.cZack Weinberg83-760/+983
* gcc.c-torture/execute/builtin-abs-2.c * gcc.c-torture/execute/builtin-complex-1.c * gcc.c-torture/execute/builtins/string-1-lib.c * gcc.c-torture/execute/builtins/string-1.c * gcc.c-torture/execute/builtins/string-2-lib.c * gcc.c-torture/execute/builtins/string-2.c * gcc.c-torture/execute/builtins/string-3-lib.c * gcc.c-torture/execute/builtins/string-3.c * gcc.c-torture/execute/builtins/string-4-lib.c * gcc.c-torture/execute/builtins/string-4.c * gcc.c-torture/execute/builtins/string-5-lib.c * gcc.c-torture/execute/builtins/string-5.c * gcc.c-torture/execute/builtins/string-6-lib.c * gcc.c-torture/execute/builtins/string-6.c * gcc.c-torture/execute/builtins/string-7-lib.c * gcc.c-torture/execute/builtins/string-7.c * gcc.c-torture/execute/builtins/string-8-lib.c * gcc.c-torture/execute/builtins/string-8.c * gcc.c-torture/execute/builtins/string-9-lib.c * gcc.c-torture/execute/builtins/string-9.c * gcc.c-torture/execute/builtins/string-asm-1-lib.c * gcc.c-torture/execute/builtins/string-asm-1.c * gcc.c-torture/execute/builtins/string-asm-2-lib.c * gcc.c-torture/execute/builtins/string-asm-2.c * gcc.c-torture/execute/stdio-opt-1.c * gcc.c-torture/execute/stdio-opt-2.c * gcc.c-torture/execute/stdio-opt-3.c * gcc.c-torture/execute/string-opt-1.c * gcc.c-torture/execute/string-opt-10.c * gcc.c-torture/execute/string-opt-11.c * gcc.c-torture/execute/string-opt-12.c * gcc.c-torture/execute/string-opt-13.c * gcc.c-torture/execute/string-opt-14.c * gcc.c-torture/execute/string-opt-15.c * gcc.c-torture/execute/string-opt-16.c * gcc.c-torture/execute/string-opt-2.c * gcc.c-torture/execute/string-opt-6.c * gcc.c-torture/execute/string-opt-7.c * gcc.c-torture/execute/string-opt-8.c: Replace with ... * gcc.c-torture/execute/builtins/abs-2.c * gcc.c-torture/execute/builtins/abs-3.c * gcc.c-torture/execute/builtins/complex-1.c * gcc.c-torture/execute/builtins/fprintf.c * gcc.c-torture/execute/builtins/fputs.c * gcc.c-torture/execute/builtins/memcmp.c * gcc.c-torture/execute/builtins/memmove.c * gcc.c-torture/execute/builtins/memops-asm.c * gcc.c-torture/execute/builtins/mempcpy-2.c * gcc.c-torture/execute/builtins/mempcpy.c * gcc.c-torture/execute/builtins/memset.c * gcc.c-torture/execute/builtins/printf.c * gcc.c-torture/execute/builtins/sprintf.c * gcc.c-torture/execute/builtins/strcat.c * gcc.c-torture/execute/builtins/strchr.c * gcc.c-torture/execute/builtins/strcmp.c * gcc.c-torture/execute/builtins/strcpy.c * gcc.c-torture/execute/builtins/strcspn.c * gcc.c-torture/execute/builtins/strlen-2.c * gcc.c-torture/execute/builtins/strlen.c * gcc.c-torture/execute/builtins/strncat.c * gcc.c-torture/execute/builtins/strncmp-2.c * gcc.c-torture/execute/builtins/strncmp.c * gcc.c-torture/execute/builtins/strncpy.c * gcc.c-torture/execute/builtins/strpbrk.c * gcc.c-torture/execute/builtins/strpcpy-2.c * gcc.c-torture/execute/builtins/strpcpy.c * gcc.c-torture/execute/builtins/strrchr.c * gcc.c-torture/execute/builtins/strspn.c * gcc.c-torture/execute/builtins/strstr-asm.c * gcc.c-torture/execute/builtins/strstr.c: ... these new files. * gcc.c-torture/execute/builtins/abs-2-lib.c * gcc.c-torture/execute/builtins/abs-3-lib.c * gcc.c-torture/execute/builtins/complex-1-lib.c * gcc.c-torture/execute/builtins/fprintf-lib.c * gcc.c-torture/execute/builtins/fputs-lib.c * gcc.c-torture/execute/builtins/memcmp-lib.c * gcc.c-torture/execute/builtins/memmove-lib.c * gcc.c-torture/execute/builtins/memops-asm-lib.c * gcc.c-torture/execute/builtins/mempcpy-2-lib.c * gcc.c-torture/execute/builtins/mempcpy-lib.c * gcc.c-torture/execute/builtins/memset-lib.c * gcc.c-torture/execute/builtins/printf-lib.c * gcc.c-torture/execute/builtins/sprintf-lib.c * gcc.c-torture/execute/builtins/strcat-lib.c * gcc.c-torture/execute/builtins/strchr-lib.c * gcc.c-torture/execute/builtins/strcmp-lib.c * gcc.c-torture/execute/builtins/strcpy-lib.c * gcc.c-torture/execute/builtins/strcspn-lib.c * gcc.c-torture/execute/builtins/strlen-2-lib.c * gcc.c-torture/execute/builtins/strlen-lib.c * gcc.c-torture/execute/builtins/strncat-lib.c * gcc.c-torture/execute/builtins/strncmp-2-lib.c * gcc.c-torture/execute/builtins/strncmp-lib.c * gcc.c-torture/execute/builtins/strncpy-lib.c * gcc.c-torture/execute/builtins/strpbrk-lib.c * gcc.c-torture/execute/builtins/strpcpy-2-lib.c * gcc.c-torture/execute/builtins/strpcpy-lib.c * gcc.c-torture/execute/builtins/strrchr-lib.c * gcc.c-torture/execute/builtins/strspn-lib.c * gcc.c-torture/execute/builtins/strstr-asm-lib.c * gcc.c-torture/execute/builtins/strstr-lib.c * gcc.c-torture/execute/builtins/lib/abs.c * gcc.c-torture/execute/builtins/lib/fprintf.c * gcc.c-torture/execute/builtins/lib/memset.c * gcc.c-torture/execute/builtins/lib/printf.c * gcc.c-torture/execute/builtins/lib/sprintf.c * gcc.c-torture/execute/builtins/lib/strcpy.c * gcc.c-torture/execute/builtins/lib/strcspn.c * gcc.c-torture/execute/builtins/lib/strncat.c * gcc.c-torture/execute/builtins/lib/strncmp.c * gcc.c-torture/execute/builtins/lib/strncpy.c * gcc.c-torture/execute/builtins/lib/strpbrk.c * gcc.c-torture/execute/builtins/lib/strspn.c * gcc.c-torture/execute/builtins/lib/strstr.c: New files containing support routines. * gcc.c-torture/execute/builtins/abs-1.c: Remove unnecessary declaration. * gcc.c-torture/execute/builtins/lib/main.c: Define link_error when not optimizing. From-SVN: r84044
2004-07-03re PR c++/14971 (better error message for partial specialization of function ↵Giovanni Bajo2-2/+7
templates requested) PR c++/14971 * pt.c (check_explicit_specialization): Clarify error message. From-SVN: r84043
2004-07-03Daily bump.GCC Administrator1-1/+1
[[Split portion of a mixed commit.]] From-SVN: r84038.2
2004-07-02c-decl.c (grokdeclarator): Don't frob current_function_decl around ↵Richard Henderson21-662/+160
variable_size. * c-decl.c (grokdeclarator): Don't frob current_function_decl around variable_size. (set_decl_nonlocal): Remove. (store_parm_decls): Add stmts for pending sizes. * calls.c (calls_function, calls_function_1): Remove. (precompute_arguments): Don't call it. * cfgexpand.c (set_save_expr_context): Remove. (tree_expand_cfg): Don't call it. * dwarf2out.c (add_bound_info): Don't handle SAVE_EXPR. (dwarf2out_finish): Likewise. * expr.c (emit_block_move): Adjust addresses to BLKmode. (store_constructor): Don't pre-evaluate SAVE_EXPR. (safe_from_p): Don't queue SAVE_EXPRs. (expand_expr_real_1 <case SAVE_EXPR>): Rewrite to expect, or build plain VAR_DECLs. * fold-const.c (twoval_comparison_p): Don't look at SAVE_EXPR_RTL. (fold): Likewise. (fold_checksum_tree): Don't special-case SAVE_EXPR. * function.c (free_after_compilation): Don't clear x_save_expr_regs. (put_var_into_stack): Don't handle SAVE_EXPR. (gen_mem_addressof): Likewise. * function.h (struct function): Remove x_save_expr_regs. (save_expr_regs): Remove. * gengtype.c (adjust_field_tree_exp): Don't special-case SAVE_EXPR. * print-tree.c (print_node): Don't dump SAVE_EXPR_NOPLACEHOLDER. * stor-layout.c (variable_size): Don't set it. (force_type_save_exprs, force_type_save_exprs_1): Remove. * tree-inline.c (remap_save_expr): Remove fn argument. Update all callers. Don't set SAVE_EXPR_CONTEXT. * tree-inline.h (remap_save_expr): Update decl. * tree.c (save_expr): Update build size. (first_rtl_op): Don't handle SAVE_EXPR. (unsave_expr_1, contains_placeholder_p): Likewise. (decl_function_context): Likewise. * tree.def (SAVE_EXPR): Remove args 1 and 2. * tree.h (SAVE_EXPR_CONTEXT, SAVE_EXPR_RTL): Remove. (SAVE_EXPR_NOPLACEHOLDER, SAVE_EXPR_PERSISTENT_P): Remove. cp/ * tree.c (cp_unsave_r): Update remap_save_expr call. java/ * jcf-write.c (generate_bytecode_insns <case SAVE_EXPR>): Rewrite. From-SVN: r84036
2004-07-03bugreport.texi, [...]: Avoid some first-person references and patronizing ↵Joseph Myers14-71/+89
comments. * doc/bugreport.texi, doc/configterms.texi, doc/contrib.texi, doc/contribute.texi, doc/cpp.texi, doc/cppinternals.texi, doc/extend.texi, doc/install.texi, doc/invoke.texi, doc/md.texi, doc/portability.texi, doc/tree-ssa.texi, doc/trouble.texi: Avoid some first-person references and patronizing comments. Based on printed manual. * doc/invoke.texi: Don't reference fortran@gnu.org. * doc/trouble.texi (Warning when a non-void function value is ignored): Rewrite. From Russ Allbery and Chris Devers. From-SVN: r84034
2004-07-02re PR c++/16240 (g++ generates incorrect mangled name)Mark Mitchell5-4/+39
PR c++/16240 * mangle.c (write_template_arg): Correct mangling. PR c++/16240 * g++.dg/abi/mangle22.C: New test. * g++.dg/abi/mangle23.C: Likewise. From-SVN: r84033
2004-07-02Fix PR numberMark Mitchell1-1/+1
From-SVN: r84030
2004-07-02re PR c++/16270 (ICE on inner member template)Mark Mitchell2-0/+7
PR c++/16270 * decl.c (grokdeclarator): Robustify. From-SVN: r84029
2004-07-02tree-ssa-pre.c (bitmap_set_t): New.Daniel Berlin2-51/+211
2004-07-02 Daniel Berlin <dberlin@dberlin.org) * tree-ssa-pre.c (bitmap_set_t): New. (bb_value_sets): avail_out is now a bitmap_set_t. (bitmap_find_leader): New function. (bitmap_value_insert_into_set): Ditto. (bitmap_set_copy): Ditto. (bitmap_value_replace_in_set): Ditto. (bitmap_set_contains_value): Ditto. (bitmap_set_new): Ditto. (bitmap_set_pool): New pool. (find_or_generate_expression): Use bitmap_ functions on AVAIL sets. (insert_aux): Ditto. (add_to_sets): Ditto. (compute_avail): Ditto (eliminate): Ditto. (init_pre): Ditto. (fini_pre): Ditto. (execute_pre): Ditto. From-SVN: r84025
2004-07-02rs6000.c (struct processor_costs): New structure used to hold instruction ↵Roger Sayle2-154/+317
latencies/sizes for processor types. * config/rs6000/rs6000.c (struct processor_costs): New structure used to hold instruction latencies/sizes for processor types. (rs6000_cost): New global variable pointing to current CPU's costs. (rs6000_override_options): Initialize rs6000_cost to point to the appropriate cost table based upon rs6000_cpu and optimize_size. (rs6000_rtx_costs): Use rs6000_cost to avoid hardcoding processor timings inline. From-SVN: r84024
2004-07-02* expmed.c (make_tree): Don't use SET_DECL_RTL.Richard Henderson2-15/+21
From-SVN: r84023
2004-07-02re PR fortran/16290 (Test intrinsic_set_exponent.f90 fails on irix6.5)David Billinghurst2-4/+10
2004-07-02 David Billinghurst (David.Billinghurst@riotinto.com) PR fortran/16290 * gfortran.fortran-torture/execute/intrinsic_set_exponent.f90 Allow for cases without denormalized floating point numbers. From-SVN: r84018
2004-07-02* tree-flow.h (bb_ann_d): Remove ephi_nodes field.Steven Bosscher2-3/+4
From-SVN: r84016
2004-07-01alpha.c (struct machine_function): Add gp_save_rtx.Richard Henderson2-5/+28
* config/alpha/alpha.c (struct machine_function): Add gp_save_rtx. (alpha_gp_save_rtx): Use assign_stack_local instead of gen_mem_addressof. From-SVN: r84015
2004-07-01alpha.c (struct alpha_rtx_cost_data): Add int_div.Richard Henderson2-15/+51
* config/alpha/alpha.c (struct alpha_rtx_cost_data): Add int_div. (alpha_rtx_cost_data): Update to match. (alpha_rtx_cost_size): New. (alpha_rtx_costs): Honor optimize_size. From-SVN: r84014
2004-07-01gimple-low.c (lower_function_body): Don't reset_block_changes here.Richard Henderson9-2/+21
* gimple-low.c (lower_function_body): Don't reset_block_changes here. * cfgexpand.c (tree_expand_cfg): Do it here. * config/alpha/alpha.c (alpha_output_mi_thunk_osf): And here. * config/ia64/ia64.c (ia64_output_mi_thunk): And here. * config/mips/mips.c (mips_output_mi_thunk): And here. * config/rs6000/rs6000.c (rs6000_output_mi_thunk): And here. * config/sh/sh.c (sh_output_mi_thunk): And here. * config/sparc/sparc.c (sparc_output_mi_thunk): And here. From-SVN: r84012
2004-07-01tree.def (RTL_EXPR): Remove.Richard Henderson24-458/+107
* tree.def (RTL_EXPR): Remove. * c-typeck.c (lvalue_p): Don't handle it. * expr.c (safe_from_p): Likewise. (expand_expr_real_1): Likewise. * fold-const.c (non_lvalue, operand_equal_p, fold): Likewise. (fold_checksum_tree, tree_expr_nonnegative_p): Likewise. * gengtype.c (adjust_field_tree_exp): Likewise. * stmt.c (warn_if_unused_value): Likewise. * tree-gimple.c (recalculate_side_effects): Likewise. * tree-pretty-print.c (dump_generic_node): Likewise. * tree.c (make_node_stat, first_rtl_op, unsave_expr_1): Likewise. (unsafe_for_reeval, stabilize_reference, build1_stat): Likewise. * tree.h (RTL_EXPR_SEQUENCE, RTL_EXPR_RTL, RTL_EXPR_ALT_RTL): Remove. * stmt.c (struct stmt_status): Remove x_last_expr_type, x_last_expr_value, x_last_expr_alt_rtl, x_expr_stmts_for_value. (last_expr_type, last_expr_value, last_expr_alt_rtl): Remove. (expand_expr_stmt): Merge with expand_expr_stmt_value. Remove all the bits that tracked last_expr. (expand_end_bindings): Don't track last_expr. (expand_start_stmt_expr, expand_end_stmt_expr): Remove. (clear_last_expr): Remove. (expand_asm): Don't call it. (expand_asm_operands, expand_end_cond): Likewise. (expand_naked_return, expand_null_return_1): Likewise. * c-typeck.c (c_begin_compound_stmt): Likewise. * cfgexpand.c (expand_block): Use expand_expr_stmt. * expr.c (expand_expr_real_1): Likewise. * tree.h: Update prototypes. * function.h (struct sequence_stack): Remove sequence_rtl_expr. (struct emit_status): Remove sequence_rtl_expr. (struct function): Remove x_rtl_expr_chain. (seq_rtl_expr, rtl_expr_chain): Remove. * function.c (struct temp_slot): Remove rtl_expr. (assign_stack_temp_for_type): Don't set it. (free_temp_slots, pop_temp_slots): Don't check it. (free_after_compilation): Don't clear x_rtl_expr_chain. (fixup_var_refs): Don't search it. (preserve_rtl_expr_result, free_temps_for_rtl_expr): Remove. * emit-rtl.c (start_sequence): Don't use sequence_rtl_expr or seq_rtl_expr. (push_topmost_sequence): Likewise. (end_sequence, init_emit): Likewise. (start_sequence_for_rtl_expr): Remove. * expmed.c (make_tree): Build a VAR_DECL instead of an RTL_EXPR. * rtl.h (preserve_rtl_expr_result): Remove. ada/ * trans.c (gnat_stabilize_reference): Don't handle RTL_EXPR. * utils.c (max_size): Likewise. cp/ * class.c (fixed_type_or_null): Don't handle RTL_EXPR. * method.c (synthesize_method): Don't clear_last_expr. * name-lookup.c (maybe_push_cleanup_level): Likewise. From-SVN: r84009
2004-07-02ifcvt.c, [...]: Fix comment typos.Kazu Hirata8-9/+15
* ifcvt.c, modulo-sched.c, tree-alias-common.c, tree-sra.c, tree-ssa-copy.c, tree-ssa-dom.c, tree-ssa-pre.c: Fix comment typos. From-SVN: r84008
2004-07-02Daily bump.GCC Administrator1-1/+1
From-SVN: r84006
2004-07-01gcc.c (STANDARD_STARTFILE_PREFIX_1): Define.Aaron W. LaFramboise4-9/+56
2004-07-02 Aaron W. LaFramboise <aaronraolete36@aaronwl.com> * gcc.c (STANDARD_STARTFILE_PREFIX_1): Define. (STANDARD_STARTFILE_PREFIX_2): Define. (standard_startfile_prefix_1): Initialize to STANDARD_STARTFILE_PREFIX_1. (standard_startfile_prefix_2): Initialize to STANDARD_STARTFILE_PREFIX_2. * config/i386/mingw32.h (MD_STARTFILE_PREFIX): Remove. (STANDARD_STARTFILE_PREFIX_1): Define. (STANDARD_STARTFILE_PREFIX_2): Define. * doc/tm.texi (STANDARD_STARTFILE_PREFIX_1): Document. (STANDARD_STARTFILE_PREFIX_2): Document. From-SVN: r84002
2004-07-01tree-sra.c (sra_walk_expr): Don't maybe_lookup_element_for_expr in order to ↵Richard Henderson2-9/+13
disable scalarization. * tree-sra.c (sra_walk_expr): Don't maybe_lookup_element_for_expr in order to disable scalarization. Instead set a flag and wait for a candidate decl. From-SVN: r84001
2004-07-01cppinternals.texi, [...]: Use terminology "testsuite" and "enumerated".Joseph Myers8-48/+54
* doc/cppinternals.texi, doc/install.texi, doc/invoke.texi, doc/md.texi, doc/sourcebuild.texi, doc/tm.texi, doc/trouble.texi: Use terminology "testsuite" and "enumerated". From-SVN: r84000
2004-07-01dwarf2out.c (reg_save): Use INVALID_REGNUM.Richard Henderson2-9/+21
* dwarf2out.c (reg_save): Use INVALID_REGNUM. (dwarf2out_reg_save, dwarf2out_return_save): Likewise. (initial_return_save): Likewise. (flush_queued_reg_saves): Remap register numbers. (dwarf2out_return_reg): Likewise. From-SVN: r83999