Richard Henderson [Mon, 5 Jul 2004 04:24:40 +0000 (21:24 -0700)]
function.c (struct assign_parm_data_all): New.
* function.c (struct assign_parm_data_all): New.
(struct assign_parm_data_one): New.
(assign_parms_initialize_all, assign_parms_augmented_arg_list,
assign_parm_find_data_types, assign_parms_setup_varargs,
assign_parm_find_entry_rtl, assign_parm_is_stack_parm,
assign_parm_find_stack_rtl, assign_parm_adjust_entry_rtl,
assign_parm_adjust_stack_rtl, assign_parm_setup_block_p,
assign_parm_setup_block, assign_parm_setup_reg,
assign_parm_setup_stack, assign_parms_unsplit_complex): Split from ...
(assign_parms): ... here.
From-SVN: r84105
Bud Davis [Mon, 5 Jul 2004 01:19:08 +0000 (01:19 +0000)]
re PR libfortran/15472 (implicit open for unformatted file causes run-time error)
2004-07-04 Bud Davis <bdavis9659@comcast.net>
Paul Brook <paul@codesourcery.com>
PR fortran/15472
* io/transfer.c(us_write): set recl for seq unform writes to max size.
* io/transfer.c(data_transfer_init): handle un-opened seq unform unit.
* io/unix.c(fd_alloc_w_at): handle requests at start, fd_flush at
right time.
* io/unix.c(is_seekable): set based upon the file/device, not the
method being used to access it (fd or mmap).
* io/unix.c(fd_flush): don't set file_size if !seekable.
* io/unix.c(fd_truncate: ditto.
* gfortran.fortran-torture/execute/seq_io.f90: New test.
Co-Authored-By: Paul Brook <paul@codesourcery.com>
From-SVN: r84104
GCC Administrator [Mon, 5 Jul 2004 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r84102
Daniel Berlin [Sun, 4 Jul 2004 22:51:36 +0000 (22:51 +0000)]
tree-ssa-pre.c (bb_value_sets): phi_gen, tmp_gen, new_sets now are bitmap_set_t's.
2004-07-04 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-pre.c (bb_value_sets): phi_gen, tmp_gen, new_sets
now are bitmap_set_t's.
(bitmap_insert_into_set): No point in inserting the value if
it's invariant.
(bitmap_set_contains): New function.
(bitmap_set_replace_value): Add comment on why we do it
this way.
(set_contains): Removed.
(bitmap_set_subtract_from_value_set): New name of
set_subtract now that it's arguments are two different
types of sets.
Update callers.
(bitmap_find_leader): Change algorithm used.
(find_or_generate_expression): Update use of functions for new
bitmap sets.
(create_expression_by_pieces): Ditto.
(insert_aux): Ditto.
(insert): Ditto.
(add_to_sets): Ditto.
(init_pre): Ditto.
(execute_pre): Ditto.
(compute_avail): Ditto.
Also ignore virtual phis.
From-SVN: r84099
Richard Sandiford [Sun, 4 Jul 2004 22:22:50 +0000 (22:22 +0000)]
* combine.c (simplify_comparison): Fix comment typo.
From-SVN: r84098
Eric Botcazou [Sun, 4 Jul 2004 21:42:28 +0000 (23:42 +0200)]
sparc.c (SIBCALL_SLOT_EMPTY_P): Rename into LEAF_SIBCALL_SLOT_RESERVED_P after negation.
* config/sparc/sparc.c (SIBCALL_SLOT_EMPTY_P): Rename
into LEAF_SIBCALL_SLOT_RESERVED_P after negation.
(eligible_for_sibcall_delay): Adjust use of SIBCALL_SLOT_EMPTY_P.
(output_restore): Change parameter from 'insn' to 'pat'.
(output_return): Adjust call to output_restore.
(output_sibcall): Adjust use of SIBCALL_SLOT_EMPTY_P.
Adjust call to output_restore.
From-SVN: r84097
Neil Booth [Sun, 4 Jul 2004 21:28:07 +0000 (21:28 +0000)]
netbsd.h (NETBSD_OS_CPP_BUILTINS_COMMON): Define __unix__ and assert system is bsd.
* config/netbsd.h (NETBSD_OS_CPP_BUILTINS_COMMON): Define __unix__
and assert system is bsd.
From-SVN: r84096
Richard Sandiford [Sun, 4 Jul 2004 21:09:37 +0000 (21:09 +0000)]
mips.h (MASK_DEBUG_C, [...]): Delete.
* config/mips/mips.h (MASK_DEBUG_C, TARGET_DEBUG_C_MODE): Delete.
(TARGET_SWITCHES): Remove -mdebugc.
* config/mips/mips.md (seq, sne, sgt, sge, slt, sle, sgtu, sgeu)
(sltu, sleu): Remove TARGET_DEBUG_C_MODE handling.
(seq_[sd]i, sne_[sd]i, sge_[sd]i, sle_[sd]i_reg, sgeu_[sd]i)
(sle_[sd]i_reg): Delete.
From-SVN: r84095
Steven Bosscher [Sun, 4 Jul 2004 20:58:46 +0000 (20:58 +0000)]
iq2000.c (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define.
* config/iq2000/iq2000.c (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE):
Define.
* config/iq2000/iq2000.md: Translate old pipeline description to an
equivalent new one.
From-SVN: r84094
Kelley Cook [Sun, 4 Jul 2004 20:04:31 +0000 (20:04 +0000)]
Make-lang.in (doc/gnat_ugn_unw.texi): Eliminate explicit dependency on xgnatugn, instead build it via a submake.
* Make-lang.in (doc/gnat_ugn_unw.texi): Eliminate explicit
dependency on xgnatugn, instead build it via a submake.
(ADA_INFOFILES): Add doc/gnat_ugn_unw.texi.
From-SVN: r84093
Mark Mitchell [Sun, 4 Jul 2004 19:41:32 +0000 (19:41 +0000)]
method.c (implicitly_declare_fn): Set linkage of generated functions.
* method.c (implicitly_declare_fn): Set linkage of generated
functions.
From-SVN: r84092
Roger Sayle [Sun, 4 Jul 2004 18:41:05 +0000 (18:41 +0000)]
tree-ssa-ccp.c (set_rhs): Change function to return a bool.
* 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
Paolo Carlini [Sun, 4 Jul 2004 17:57:58 +0000 (17:57 +0000)]
basic_string.h: Trivial formatting fixes and/or const-ification of some variables.
2004-07-04 Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_string.h: Trivial formatting fixes and/or
const-ification of some variables.
* include/bits/deque.tcc: Likewise.
* include/bits/stl_algobase.h: Likewise.
* include/bits/stl_bvector.h: Likewise.
* include/bits/stl_construct.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_pair.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/vector.tcc: Likewise.
From-SVN: r84090
Richard Henderson [Sun, 4 Jul 2004 17:28:56 +0000 (10:28 -0700)]
re PR c/16348 (Loop gets executed when it shouldnt)
PR c/16348
* c-typeck.c (c_finish_loop): Don't clear cond for cond_is_first loops.
From-SVN: r84089
Mark Mitchell [Sun, 4 Jul 2004 17:18:59 +0000 (17:18 +0000)]
configure.ac (ranlib_flags): New variable.
* configure.ac (ranlib_flags): New variable.
* Makefile.in (RANLIB_FLAGS): New variable.
(libbackend.a): Use it.
* configure: Regenerated.
From-SVN: r84088
Janne Blomqvist [Sun, 4 Jul 2004 17:00:12 +0000 (20:00 +0300)]
re PR libfortran/15280 (Fortran9x commandline not accessable)
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
Ranjit Mathew [Sun, 4 Jul 2004 16:32:32 +0000 (16:32 +0000)]
* verify.c: Correct array element access formatting thinko.
From-SVN: r84086
Michael Koch [Sun, 4 Jul 2004 15:27:05 +0000 (15:27 +0000)]
FirstThread.java, [...]: Removed.
2004-07-04 Michael Koch <konqueror@gmx.de>
* gnu/gcj/runtime/FirstThread.java,
gnu/gcj/runtime/natFirstThread.cc: Removed.
* gnu/java/lang/MainThread.java,
gnu/java/lang/natMainThread.cc: New files.
* prims.cc (_Jv_RunMain): Use MainThread instead of FirstThread.
* Makefile.am: Added new files and removed deleted ones.
* Makefile.in: Regenerated.
From-SVN: r84085
Ranjit Mathew [Sun, 4 Jul 2004 15:19:16 +0000 (15:19 +0000)]
verify.c: Insert a short blurb at the start referring to the JVMS.
* 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
Roger Sayle [Sun, 4 Jul 2004 14:57:34 +0000 (14:57 +0000)]
ifcvt.c (noce_try_sign_mask): Call emit_store_flag to generate a "sign mask" 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
Neil Booth [Sun, 4 Jul 2004 12:57:50 +0000 (12:57 +0000)]
re PR preprocessor/16192 (Bug in expression evaluation when operand is missing)
* 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
Gerald Pfeifer [Sun, 4 Jul 2004 11:34:50 +0000 (11:34 +0000)]
* doc/contrib.texi (Contributors): Adjust link for GNU Classpath.
From-SVN: r84078
Paolo Carlini [Sun, 4 Jul 2004 11:05:14 +0000 (11:05 +0000)]
1.cc: Add instantiations for systems with no COMDAT or weak support.
2004-07-04 Paolo Carlini <pcarlini@suse.de>
* testsuite/25_algorithms/copy/1.cc: Add instantiations for
systems with no COMDAT or weak support.
* testsuite/25_algorithms/copy/2.cc: Likewise.
* testsuite/25_algorithms/copy/3.cc: Likewise.
* testsuite/25_algorithms/copy/4.cc: Likewise.
From-SVN: r84076
Matthias Klose [Sun, 4 Jul 2004 09:06:54 +0000 (09:06 +0000)]
libtool-version: New.
2004-07-04 Matthias Klose <doko@debian.org>
* libtool-version: New.
* Makefile.am (libgfortran_la_LDFLAGS): Use -version-info for soname.
* Makefile.in: Regenerate.
* configure.ac: Remove libtool_VERSION macro
* configure: Regenerate
From-SVN: r84074
Matthias Klose [Sun, 4 Jul 2004 09:01:40 +0000 (09:01 +0000)]
Make-lang.in: Generate and install gfortran man page.
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
Richard Henderson [Sun, 4 Jul 2004 08:07:15 +0000 (01:07 -0700)]
rtl.def (ADDRESSOF): Remove.
* 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
Richard Henderson [Sun, 4 Jul 2004 03:03:00 +0000 (20:03 -0700)]
ia64.c (spill_xfmode_operand): Use assign_stack_temp instead of 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
Richard Henderson [Sun, 4 Jul 2004 02:52:36 +0000 (19:52 -0700)]
re PR tree-optimization/16341 (BOOT_CFLAGS='-O2 -fno-inline' causes a 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
Richard Henderson [Sun, 4 Jul 2004 02:16:58 +0000 (19:16 -0700)]
Missed commit
From-SVN: r84069
Anthony Green [Sun, 4 Jul 2004 02:12:58 +0000 (02:12 +0000)]
[multiple changes]
2004-07-03 Mark Wielaard <mark@klomp.org>
Anthony Green <green@redhat.com>
* java/net/URL.java (getFile): Clarify return value doc.
(getPath): Return null if file is empty - not empty String.
(set): Convert protocol to lower case before doing anything.
Only change the protocol handler if it's different.
2004-07-03 Anthony Green <green@redhat.com>
* java/net/URL.java (URL): Convert protocol to lower case before
doing anything, so we getURLStreamHandler() with the proper value.
From-SVN: r84068
GCC Administrator [Sun, 4 Jul 2004 00:16:13 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r84066.2
GCC Administrator [Sun, 4 Jul 2004 00:16:10 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r84065.2
Paul Brook [Sat, 3 Jul 2004 23:25:46 +0000 (23:25 +0000)]
decl.c (gfc_match_implicit_range): Don't use typespec.
* 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
Joseph Myers [Sat, 3 Jul 2004 19:59:11 +0000 (20:59 +0100)]
tree.c (type_hash_eq): Allow TYPE_MIN_VALUE which compares equal with tree_int_cst_equal.
* tree.c (type_hash_eq): Allow TYPE_MIN_VALUE which compares equal
with tree_int_cst_equal.
From-SVN: r84062
Richard Henderson [Sat, 3 Jul 2004 18:57:18 +0000 (11:57 -0700)]
tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Don't fold fp plus with minus.
* tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Don't fold
fp plus with minus.
From-SVN: r84061
Andreas Schwab [Sat, 3 Jul 2004 16:59:38 +0000 (16:59 +0000)]
ia64.md: Define new attribute "empty".
* 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
Richard Kenner [Sat, 3 Jul 2004 14:48:14 +0000 (14:48 +0000)]
tree-inline.c (initialize_inlined_parameters): Pass proper function context 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
Richard Kenner [Sat, 3 Jul 2004 13:56:38 +0000 (13:56 +0000)]
* tree-sra.c (generate_element_init): Remove any useless conversions.
From-SVN: r84057
Richard Kenner [Sat, 3 Jul 2004 13:51:51 +0000 (13:51 +0000)]
gimplify.c (gimplify_conversion): Remove stripping useless conversions from 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
Richard Kenner [Sat, 3 Jul 2004 13:45:29 +0000 (13:45 +0000)]
tree-ssa.c (tree_ssa_useless_type_conversion): Also look at 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
Richard Kenner [Sat, 3 Jul 2004 13:40:47 +0000 (13:40 +0000)]
langhooks-def.h (LANG_HOOKS_TYPE_MAX_SIZE): New langhook.
* 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
Steven Bosscher [Sat, 3 Jul 2004 11:56:43 +0000 (11:56 +0000)]
sh.c (sh_use_dfa_interface): Add TARGET_SH1.
* 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
Zack Weinberg [Sat, 3 Jul 2004 02:35:05 +0000 (02:35 +0000)]
c-decl.c (struct c_binding): Remove contour field; add depth, invisible, 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
Scott Brumbaugh [Sat, 3 Jul 2004 02:19:27 +0000 (02:19 +0000)]
re PR c++/3761 (ICE in check_template_shadow, at cp/pt.c:2013, with friend 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
Zack Weinberg [Sat, 3 Jul 2004 02:16:50 +0000 (02:16 +0000)]
* gcc.c-torture/execute/builtin-abs-1.c
* 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
Giovanni Bajo [Sat, 3 Jul 2004 02:05:27 +0000 (02:05 +0000)]
re PR c++/14971 (better error message for partial specialization of function templates requested)
PR c++/14971
* pt.c (check_explicit_specialization): Clarify error message.
From-SVN: r84043
GCC Administrator [Sat, 3 Jul 2004 00:16:14 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r84039.2
GCC Administrator [Sat, 3 Jul 2004 00:16:10 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r84038.2
Richard Henderson [Sat, 3 Jul 2004 00:15:50 +0000 (17:15 -0700)]
c-decl.c (grokdeclarator): Don't frob current_function_decl around 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
Paul Brook [Fri, 2 Jul 2004 23:58:41 +0000 (23:58 +0000)]
cxxabi_tweaks.h: New file.
* config/cpu/arm/cxxabi_tweaks.h: New file.
* config/cpu/generic/cxxabi_tweaks.h: New file.
From-SVN: r84035
Joseph Myers [Fri, 2 Jul 2004 23:57:12 +0000 (00:57 +0100)]
bugreport.texi, [...]: Avoid some first-person references and patronizing 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
Mark Mitchell [Fri, 2 Jul 2004 23:56:38 +0000 (23:56 +0000)]
re PR c++/16240 (g++ generates incorrect mangled name)
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
Paul Brook [Fri, 2 Jul 2004 23:40:19 +0000 (23:40 +0000)]
configure.ac: Set ABI_TWEAKS_SRCDIR.
* configure.ac: Set ABI_TWEAKS_SRCDIR.
* configure.host: Set abi_tweaks_dir. Check for atomicity.h when
setting atomicity_dir. Override type_cpu for arm based targets.
* include/Makefile.am (host_headers): Add cxxabi_tweaks.h.
* libsupc++/cxxabi.h: Include bits/cxxabi.h. Don't declare __guard.
* libsupc++/guard.cc: Use definitions from cxxabi_tweaks.h.
* libsupc++/vec.cc: Ditto.
* config/cpu/arm/cxxabi_tweaks.h: New file.
* config/cpu/generic/cxxabi_tweaks.h: New file.
* */Makefile.in: Regenerate.
* configure: Regenerate.
From-SVN: r84032
Mark Mitchell [Fri, 2 Jul 2004 22:00:56 +0000 (22:00 +0000)]
Fix PR number
From-SVN: r84030
Mark Mitchell [Fri, 2 Jul 2004 21:59:42 +0000 (21:59 +0000)]
re PR c++/16270 (ICE on inner member template)
PR c++/16270
* decl.c (grokdeclarator): Robustify.
From-SVN: r84029
Paolo Carlini [Fri, 2 Jul 2004 20:44:08 +0000 (20:44 +0000)]
testsuite/20_util/allocator/, auto_ptr/, raw_storage_iterator.cc, temporary_buffer.cc: Move to...
2004-07-02 Paolo Carlini <pcarlini@suse.de>
* testsuite/20_util/allocator/, auto_ptr/, raw_storage_iterator.cc,
temporary_buffer.cc: Move to...
* testsuite/20_util/memory/: ... here, new dir.
* testsuite/20_util/pair/, testsuite/24_iterators/rel_ops.cc:
Move to...
* testsuite/20_util/utility/: ... here, new dir.
* testsuite/20_util/binders.cc, comparisons.cc: Move to...
* testsuite/20_util/functional/: ... here, new dir.
From-SVN: r84028
Bryce McKinlay [Fri, 2 Jul 2004 19:41:33 +0000 (19:41 +0000)]
Locale.java (hashcode): Made transient.
* java/util/Locale.java (hashcode): Made transient.
(hashCode): No longer synchronized.
(equals): Remove comment.
(writeObject): No longer synchronized. Implement using writeObject
calls instead of tweaking hashCode field. Update doc.
(readObject): Implement using readObject calls.
From-SVN: r84027
Daniel Berlin [Fri, 2 Jul 2004 18:47:29 +0000 (18:47 +0000)]
tree-ssa-pre.c (bitmap_set_t): New.
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
Roger Sayle [Fri, 2 Jul 2004 18:00:46 +0000 (18:00 +0000)]
rs6000.c (struct processor_costs): New structure used to hold instruction 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
Richard Henderson [Fri, 2 Jul 2004 17:32:23 +0000 (10:32 -0700)]
* expmed.c (make_tree): Don't use SET_DECL_RTL.
From-SVN: r84023
Paolo Carlini [Fri, 2 Jul 2004 14:49:09 +0000 (14:49 +0000)]
type_traits.h (_Is_normal_iterator): Move...
2004-07-02 Paolo Carlini <pcarlini@suse.de>
* include/bits/type_traits.h (_Is_normal_iterator): Move...
* include/bits/cpp_type_traits.h: ... here, renamed to
__is_normal_iterator and consistent with the other traits.
* include/bits/stl_algobase.h (__copy_ni1, __copy_ni2): Convert
to the struct __copy_normal and three specializations.
(__copy_backward_output_normal_iterator,
__copy_backward_input_normal_iterator): Likewise, convert to
the struct __copy_backward_normal and three specializations.
(copy, copy_backward): Use the latter.
(__copy_aux, __copy_backward_aux): Very minor tweaks.
From-SVN: r84019
David Billinghurst [Fri, 2 Jul 2004 12:39:56 +0000 (12:39 +0000)]
re PR fortran/16290 (Test intrinsic_set_exponent.f90 fails on irix6.5)
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
Paolo Bonzini [Fri, 2 Jul 2004 07:55:37 +0000 (07:55 +0000)]
Makefile.def (build_modules): Add bison, byacc, flex, m4, texinfo.
2004-07-01 Paolo Bonzini <bonzini@gnu.org>
* Makefile.def (build_modules): Add bison, byacc, flex,
m4, texinfo.
(flags_to_pass): Add FLEX.
* Makefile.tpl (BUILD_DIR_PREFIX, BASE_EXPORTS): New.
(BUILD_EXPORTS, HOST_EXPORTS, BASE_TARGET_EXPORTS): Include it.
(DEFAULT_YACC, USUAL_YACC, DEFAULT_LEX, USUAL_LEX, DEFAULT_M4,
DEFAULT_MAKEINFO): Remove.
(CONFIGURED_YACC, CONFIGURED_FLEX, CONFIGURED_BISON,
CONFIGURED_LEX, CONFIGURED_M4, CONFIGURED_MAKEINFO): Substitute.
(YACC, FLEX, BISON, LEX, M4, MAKEINFO): Define to look into
objdir or else use configured tool.
(all-build): New.
(all): Depend on it.
(Build module dependencies): Add.
* Makefile.in: Regenerate.
* configure.in: Better support for multiple build modules,
matching what is done for host/target modules. Do not look
for "plausible" locations of build tools if Canadian cross.
Use autoconf's AC_PROG_CC to find a C compiler. Define
BUILD_DIR_PREFIX. Look for flex, makeinfo and m4.
* configure: Regenerate.
From-SVN: r84017
Steven Bosscher [Fri, 2 Jul 2004 07:34:30 +0000 (07:34 +0000)]
* tree-flow.h (bb_ann_d): Remove ephi_nodes field.
From-SVN: r84016
Richard Henderson [Fri, 2 Jul 2004 06:31:49 +0000 (23:31 -0700)]
alpha.c (struct machine_function): Add gp_save_rtx.
* 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
Richard Henderson [Fri, 2 Jul 2004 06:11:30 +0000 (23:11 -0700)]
alpha.c (struct alpha_rtx_cost_data): Add int_div.
* 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
Richard Henderson [Fri, 2 Jul 2004 04:53:37 +0000 (21:53 -0700)]
gimple-low.c (lower_function_body): Don't reset_block_changes here.
* 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
Richard Henderson [Fri, 2 Jul 2004 01:15:43 +0000 (18:15 -0700)]
tree.def (RTL_EXPR): Remove.
* 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
Kazu Hirata [Fri, 2 Jul 2004 00:51:01 +0000 (00:51 +0000)]
ifcvt.c, [...]: Fix comment typos.
* 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
GCC Administrator [Fri, 2 Jul 2004 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r84006
Aaron W. LaFramboise [Thu, 1 Jul 2004 23:55:22 +0000 (23:55 +0000)]
gcc.c (STANDARD_STARTFILE_PREFIX_1): Define.
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
Richard Henderson [Thu, 1 Jul 2004 22:26:12 +0000 (15:26 -0700)]
tree-sra.c (sra_walk_expr): Don't maybe_lookup_element_for_expr in order to 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
Joseph Myers [Thu, 1 Jul 2004 22:02:41 +0000 (23:02 +0100)]
cppinternals.texi, [...]: Use terminology "testsuite" and "enumerated".
* 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
Richard Henderson [Thu, 1 Jul 2004 20:53:55 +0000 (13:53 -0700)]
dwarf2out.c (reg_save): Use INVALID_REGNUM.
* 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
Richard Kenner [Thu, 1 Jul 2004 19:45:28 +0000 (19:45 +0000)]
* gimplify.c (gimplify_one_sizepos): Don't do anything if any VAR_DECL.
From-SVN: r83998
Richard Kenner [Thu, 1 Jul 2004 19:32:27 +0000 (19:32 +0000)]
tree-pretty-print.c (dump_generic_node, [...]): Use access functions for lower bound and element size and only output if...
* tree-pretty-print.c (dump_generic_node, case ARRAY_REF): Use
access functions for lower bound and element size and only output
if lower bound nonzero or element size not same as that of type.
(dump_generic_node, case COMPONENT_REF): Use access func. for offset.
From-SVN: r83997
Paolo Carlini [Thu, 1 Jul 2004 17:53:21 +0000 (17:53 +0000)]
stl_algobase.h (__copy_trivial): Remove.
2004-07-01 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (__copy_trivial): Remove.
(__copy_aux2): Rewrite as __copy_aux to use __is_pointer,
__is_trivially_copyable, __are_same and __copy::copy.
(__copy): Rewrite as a class template and two specializations.
(__copy_ni2): Simplify, just call __copy_aux.
* include/bits/stl_algobase.h (__copy_backward_aux): Add __are_same
check.
* testsuite/25_algorithms/copy/1.cc, 2.cc, 3.cc, 4.cc: Test also
for destination value type != source value type.
From-SVN: r83991
Paolo Bonzini [Thu, 1 Jul 2004 17:51:54 +0000 (17:51 +0000)]
c-pretty-print.c (pp_c_postfix_expression): Fix pasto.
2004-07-01 Paolo Bonzini <bonzini@gnu.org>
* c-pretty-print.c (pp_c_postfix_expression): Fix pasto.
From-SVN: r83990
Per Bothner [Thu, 1 Jul 2004 17:09:32 +0000 (10:09 -0700)]
* final.c (final): Fix typo reported by Aaron W. LaFramboise.
From-SVN: r83989
Benjamin Kosnik [Thu, 1 Jul 2004 15:30:36 +0000 (15:30 +0000)]
re PR libstdc++/16248 (recent concurrence.h chanes breaks mingw bootstrap)
2004-07-01 Benjamin Kosnik <bkoz@redhat.com>
Per Bothner <per@bothner.com>
Mohan Embar <gnustuff@thisiscool.com>
PR libstdc++/16248
* include/bits/concurrence.h (__glibcxx_mutex_type): New.
(__glibcxx_mutex): Encapsulate mutex init function into type for
threaded configurations without __GTHREAD_MUTEX_INIT.
(lock::lock): Make device member a reference.
(lock::~lock): Same.
* include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change
to mutex_type.
* src/allocator.cc: Same.
From-SVN: r83988
Paul Brook [Thu, 1 Jul 2004 15:23:55 +0000 (15:23 +0000)]
Fix copy/paste error.
From-SVN: r83986
Benjamin Kosnik [Thu, 1 Jul 2004 14:49:29 +0000 (14:49 +0000)]
Per Bothner <per@bothner.com > Mohan Embar <gnustuff@thisiscool.com>
2004-07-01 Benjamin Kosnik <bkoz@redhat.com>
Per Bothner <per@bothner.com >
Mohan Embar <gnustuff@thisiscool.com>
PR libstdc++/16248
* include/bits/concurrence.h (__glibcxx_mutex_type): New.
(__glibcxx_mutex): Encapsulate mutex init function into type for
threaded configurations without __GTHREAD_MUTEX_INIT.
(lock::lock): Make device member a reference.
(lock::~lock): Same.
* include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change
to mutex_type.
* src/allocator.cc: Same.
Co-Authored-By: Mohan Embar <gnustuff@thisiscool.com>
Co-Authored-By: Per Bothner <per@bothner.com>
From-SVN: r83985
Jakub Jelinek [Thu, 1 Jul 2004 14:05:16 +0000 (16:05 +0200)]
expr.c (expand_assignment): Optimize bitfld += cst for 1 bit bitfields as well.
* expr.c (expand_assignment): Optimize bitfld += cst for 1 bit
bitfields as well. STRIP_NOPS from src operand and PLUS_EXPR's
first operand. Don't optimize if the bitfield is volatile.
From-SVN: r83983
Paolo Bonzini [Thu, 1 Jul 2004 14:01:15 +0000 (14:01 +0000)]
c-pretty-print.c (pp_c_postfix_expression): Handle floating-point comparison operators.
2004-07-01 Paolo Bonzini <bonzini@gnu.org>
* c-pretty-print.c (pp_c_postfix_expression): Handle
floating-point comparison operators.
(pp_c_expression): Pass floating-point comparison
operators to pp_c_postfix_expression.
From-SVN: r83982
Roger Sayle [Thu, 1 Jul 2004 13:09:39 +0000 (13:09 +0000)]
simplify-rtx.c (simplify_binary_operation): Use rtx_cost instead of "had_mult" to determine whether the transformed...
* simplify-rtx.c (simplify_binary_operation) <PLUS, MINUS>: Use
rtx_cost instead of "had_mult" to determine whether the transformed
expression is cheaper than the original.
From-SVN: r83981
Jerry Quinn [Thu, 1 Jul 2004 12:52:53 +0000 (12:52 +0000)]
alias.c (get_alias_set, [...]): Use MEM_P.
2004-07-01 Jerry Quinn <jlquinn@optonline.net>
* alias.c (get_alias_set, canon_rtx, get_addr,
nonoverlapping_memrefs_p, nonlocal_referenced_p_1, memory_modified_1):
Use MEM_P.
* builtins.c (expand_builtin_prefetch, expand_builtin_profile_func,
expand_builtin): Likewise.
* calls.c (expand_call, emit_library_call_value_1, store_one_arg):
Likewise.
* combine.c (can_combine_p, combinable_i3pat, try_combine,
find_split_point, combine_simplify_rtx, simplify_set, make_extraction,
rtx_equal_for_field_assignment_p, gen_lowpart_for_combine,
record_dead_and_set_regs_1, get_last_value_validate,
mark_used_regs_combine, move_deaths, unmentioned_reg_p_1): Likewise.
* cse.c (check_dependence, canon_hash, equiv_constant,
gen_lowpart_if_possible, cse_insn, invalidate_from_clobbers,
cse_around_loop, cse_check_loop_start, cse_set_around_loop,
count_reg_usage): Likewise.
* cselib.c (rtx_equal_for_cselib_p, add_mem_for_addr, cselib_lookup,
cselib_invalidate_mem, cselib_invalidate_rtx, cselib_record_set,
cselib_record_sets): Likewise.
* dbxout.c (PARM_PASSED_IN_MEMORY, dbxout_symbol,
dbxout_symbol_location, dbxout_parms, dbxout_reg_parms): Likewise.
* ddg.c (mark_mem_use, mark_mem_store, rtx_mem_access_p): Likewise.
* df.c (df_uses_record): Likewise.
* dojump (do_jump): Likewise.
* dwarf2out.c (stack_adjust_offset, mem_loc_descriptor,
loc_descriptor_from_tree, rtl_for_decl_location, add_bound_info,
decl_start_label): Likewise.
* emit-rtl.c (gen_complex_constant_part, gen_highpart,
operand_subword, change_address_1, make_safe_from): Likewise.
* explow.c (break_out_memory_refs, copy_all_regs, validize_mem,
stabilize, force_not_mem): Likewise.
* expmed.c (store_bit_field, store_split_bit_field, extract_bit_field,
expand_mult_const, expand_divmod, emit_store_flag): Likewise.
* expr.c (convert_move, convert_modes, emit_block_move,
emit_group_load, emit_group_store, clear_storage, emit_move_insn,
emit_move_insn_1, expand_assignment, store_expr,
store_constructor_field, store_constructor, store_field,
force_operand, safe_from_p, expand_expr_real_1, expand_increment):
Likewise.
* final.c (cleanup_subreg_operands, alter_subreg,
get_mem_expr_from_op): Likewise.
* flow.c (notice_stack_pointer_modification_1,
init_propagate_block_info, insn_dead_p, mark_set_1, mark_used_regs):
Likewise.
* function.c (mark_temp_addr_taken, preserve_temp_slots,
preserve_rtl_expr_result, put_var_into_stack, fixup_var_refs_1,
optimize_bit_field, flush_addressof, purge_addressof_1,
instantiate_decl, instantiate_virtual_regs_1, assign_parms,
setjmp_protect, setjmp_protect_args, fix_lexical_addr,
keep_stack_depressed): Likewise.
* ifcvt.c (noce_try_cmove_arith, noce_try_abs, noce_operand_ok,
noce_process_if_block, find_memory): Likewise.
* integrate.c (subst_constants, allocate_initial_values): Likewise.
* local-alloc.c (validate_equiv_mem_from_store, memref_referenced_p,
update_equiv_regs): Likewise.
* loop.c (scan_loop, prescan_loop, note_addr_stored, check_store,
maybe_eliminate_biv_1, find_mem_in_note_1): Likewise.
* optabs.c (expand_abs, emit_unop_insn): Likewise.
* passes.c (rest_of_handle_final): Likewise.
* postreload.c (reload_cse_simplify_set, reload_cse_simplify_operands,
move2add_note_store): Likewise.
* ra-build.c (detect_remat_webs): Likewise.
* ra-debug.c (dump_static_insn_cost): Likewise.
* ra-rewrite.c (slots_overlap_p, insert_stores): Likewise.
* recog.c (validate_change, apply_change_group, cancel_changes,
validate_replace_rtx_1, general_operand, register_operand,
nonmemory_operand, push_operand, pop_operand, memory_operand,
indirect_operand, asm_operand_ok, offsettable_memref_p,
offsettable_nonstrict_memref_p, constrain_operands,
store_data_bypass_p): Likewise.
* reg-stack.c (subst_stack_regs_pat): Likewise.
* regclass.c (record_operand_costs, scan_one_insn, record_reg_classes,
copy_cost, reg_scan_mark_refs): Likewise.
* regmove.c (optimize_reg_copy_3, stack_memref_p,
combine_stack_adjustments_for_block): Likewise.
* regrename.c (copyprop_hardreg_forward_1): Likewise.
* reload.c (can_reload_into, push_reload, decompose, immune_p,
find_reloads, find_reloads_address, find_reloads_address_1,
reg_overlap_mentioned_for_reload_p, refers_to_mem_for_reload_p,
find_equiv_reg): Likewise.
* reload1.c (reload, eliminate_regs, eliminate_regs_in_insn,
reload_as_needed, choose_reload_regs, emit_input_reload_insns,
do_input_reload, emit_reload_insns, gen_reload, delete_output_reload,
delete_address_reloads): Likewise.
* resource.c (mark_referenced_resources): Likewise.
* rtlanal.c (get_jump_table_offset, count_occurrences,
reg_referenced_p, reg_set_p, set_of_1, set_noop_p,
reg_overlap_mentioned_p, note_uses, replace_regs, nonzero_bits1,
num_sign_bit_copies1): Likewise.
* rtlhooks.c (gen_lowpart_general): Likewise.
* sched-deps.c (sched_analyze_1, sched_analyze_2): Likewise.
* sdbout.c (PARM_PASSED_IN_MEMORY, sdbout_symbol,
sdbout_toplevel_data, sdbout_parms, sdbout_reg_parms,
sdbout_global_decl): Likewise.
* simplify-rtx.c (simplify_subreg): Likewise.
* stmt.c (expand_asm_operands, expand_expr_stmt_value, expand_decl,
expand_anon_union_decl, expand_end_case_type): Likewise.
* unroll.c (calculate_giv_inc): Likewise.
* var-tracking.c (stack_adjust_offset_pre_post,
bb_stack_adjust_offset, track_expr_p, count_uses, add_uses,
add_stores, compute_bb_dataflow, vt_get_decl_and_offset,
vt_add_function_parameters): Likewise.
* varasm.c (make_var_volatile, notice_global_symbol,
assemble_external, decode_addr_const, mark_weak,
default_encode_section_info): Likewise.
From-SVN: r83980
Steven Bosscher [Thu, 1 Jul 2004 12:47:14 +0000 (12:47 +0000)]
Rotate ChangeLog
From-SVN: r83979
Jerry Quinn [Thu, 1 Jul 2004 12:42:07 +0000 (12:42 +0000)]
alias.c (get_alias_set, [...]): Use MEM_P.
2004-07-01 Jerry Quinn <jlquinn@optonline.net>
* alias.c (get_alias_set, canon_rtx, get_addr,
nonoverlapping_memrefs_p, nonlocal_referenced_p_1, memory_modified_1):
Use MEM_P.
* builtins.c (expand_builtin_prefetch, expand_builtin_profile_func,
expand_builtin): Likewise.
* calls.c (expand_call, emit_library_call_value_1, store_one_arg):
Likewise.
* combine.c (can_combine_p, combinable_i3pat, try_combine,
find_split_point, combine_simplify_rtx, simplify_set, make_extraction,
rtx_equal_for_field_assignment_p, gen_lowpart_for_combine,
record_dead_and_set_regs_1, get_last_value_validate,
mark_used_regs_combine, move_deaths, unmentioned_reg_p_1): Likewise.
* cse.c (check_dependence, canon_hash, equiv_constant,
gen_lowpart_if_possible, cse_insn, invalidate_from_clobbers,
cse_around_loop, cse_check_loop_start, cse_set_around_loop,
count_reg_usage): Likewise.
* cselib.c (rtx_equal_for_cselib_p, add_mem_for_addr, cselib_lookup,
cselib_invalidate_mem, cselib_invalidate_rtx, cselib_record_set,
cselib_record_sets): Likewise.
* dbxout.c (PARM_PASSED_IN_MEMORY, dbxout_symbol,
dbxout_symbol_location, dbxout_parms, dbxout_reg_parms): Likewise.
* ddg.c (mark_mem_use, mark_mem_store, rtx_mem_access_p): Likewise.
* df.c (df_uses_record): Likewise.
* dojump (do_jump): Likewise.
* dwarf2out.c (stack_adjust_offset, mem_loc_descriptor,
loc_descriptor_from_tree, rtl_for_decl_location, add_bound_info,
decl_start_label): Likewise.
* emit-rtl.c (gen_complex_constant_part, gen_highpart,
operand_subword, change_address_1, make_safe_from): Likewise.
* explow.c (break_out_memory_refs, copy_all_regs, validize_mem,
stabilize, force_not_mem): Likewise.
* expmed.c (store_bit_field, store_split_bit_field, extract_bit_field,
expand_mult_const, expand_divmod, emit_store_flag): Likewise.
* expr.c (convert_move, convert_modes, emit_block_move,
emit_group_load, emit_group_store, clear_storage, emit_move_insn,
emit_move_insn_1, expand_assignment, store_expr,
store_constructor_field, store_constructor, store_field,
force_operand, safe_from_p, expand_expr_real_1, expand_increment):
Likewise.
* final.c (cleanup_subreg_operands, alter_subreg,
get_mem_expr_from_op): Likewise.
* flow.c (notice_stack_pointer_modification_1,
init_propagate_block_info, insn_dead_p, mark_set_1, mark_used_regs):
Likewise.
* function.c (mark_temp_addr_taken, preserve_temp_slots,
preserve_rtl_expr_result, put_var_into_stack, fixup_var_refs_1,
optimize_bit_field, flush_addressof, purge_addressof_1,
instantiate_decl, instantiate_virtual_regs_1, assign_parms,
setjmp_protect, setjmp_protect_args, fix_lexical_addr,
keep_stack_depressed): Likewise.
* ifcvt.c (noce_try_cmove_arith, noce_try_abs, noce_operand_ok,
noce_process_if_block, find_memory): Likewise.
* integrate.c (subst_constants, allocate_initial_values): Likewise.
* local-alloc.c (validate_equiv_mem_from_store, memref_referenced_p,
update_equiv_regs): Likewise.
* loop.c (scan_loop, prescan_loop, note_addr_stored, check_store,
maybe_eliminate_biv_1, find_mem_in_note_1): Likewise.
* optabs.c (expand_abs, emit_unop_insn): Likewise.
* passes.c (rest_of_handle_final): Likewise.
* postreload.c (reload_cse_simplify_set, reload_cse_simplify_operands,
move2add_note_store): Likewise.
* ra-build.c (detect_remat_webs): Likewise.
* ra-debug.c (dump_static_insn_cost): Likewise.
* ra-rewrite.c (slots_overlap_p, insert_stores): Likewise.
* recog.c (validate_change, apply_change_group, cancel_changes,
validate_replace_rtx_1, general_operand, register_operand,
nonmemory_operand, push_operand, pop_operand, memory_operand,
indirect_operand, asm_operand_ok, offsettable_memref_p,
offsettable_nonstrict_memref_p, constrain_operands,
store_data_bypass_p): Likewise.
* reg-stack.c (subst_stack_regs_pat): Likewise.
* regclass.c (record_operand_costs, scan_one_insn, record_reg_classes,
copy_cost, reg_scan_mark_refs): Likewise.
* regmove.c (optimize_reg_copy_3, stack_memref_p,
combine_stack_adjustments_for_block): Likewise.
* regrename.c (copyprop_hardreg_forward_1): Likewise.
* reload.c (can_reload_into, push_reload, decompose, immune_p,
find_reloads, find_reloads_address, find_reloads_address_1,
reg_overlap_mentioned_for_reload_p, refers_to_mem_for_reload_p,
find_equiv_reg): Likewise.
* reload1.c (reload, eliminate_regs, eliminate_regs_in_insn,
reload_as_needed, choose_reload_regs, emit_input_reload_insns,
do_input_reload, emit_reload_insns, gen_reload, delete_output_reload,
delete_address_reloads): Likewise.
* resource.c (mark_referenced_resources): Likewise.
* rtlanal.c (get_jump_table_offset, count_occurrences,
reg_referenced_p, reg_set_p, set_of_1, set_noop_p,
reg_overlap_mentioned_p, note_uses, replace_regs, nonzero_bits1,
num_sign_bit_copies1): Likewise.
* rtlhooks.c (gen_lowpart_general): Likewise.
* sched-deps.c (sched_analyze_1, sched_analyze_2): Likewise.
* sdbout.c (PARM_PASSED_IN_MEMORY, sdbout_symbol,
sdbout_toplevel_data, sdbout_parms, sdbout_reg_parms,
sdbout_global_decl): Likewise.
* simplify-rtx.c (simplify_subreg): Likewise.
* stmt.c (expand_asm_operands, expand_expr_stmt_value, expand_decl,
expand_anon_union_decl, expand_end_case_type): Likewise.
* unroll.c (calculate_giv_inc): Likewise.
* var-tracking.c (stack_adjust_offset_pre_post,
bb_stack_adjust_offset, track_expr_p, count_uses, add_uses,
add_stores, compute_bb_dataflow, vt_get_decl_and_offset,
vt_add_function_parameters): Likewise.
* varasm.c (make_var_volatile, notice_global_symbol,
assemble_external, decode_addr_const, mark_weak,
default_encode_section_info): Likewise.
From-SVN: r83978
Steven Bosscher [Thu, 1 Jul 2004 12:38:20 +0000 (12:38 +0000)]
stmt.c (check_seenlabel): Remove.
* stmt.c (check_seenlabel): Remove.
(pushcase, pushcase_range, expand_end_case_type): Don't call it.
From-SVN: r83977
Richard Henderson [Thu, 1 Jul 2004 09:54:20 +0000 (02:54 -0700)]
function.h (struct function): Remove x_function_call_count.
* function.h (struct function): Remove x_function_call_count.
(function_call_count): Remove.
* calls.c (expand_call): Don't set it.
* integrate.c (copy_rtx_and_substitute): Likewise.
* function.h (struct function): Remove x_cleanup_label.
(cleanup_label): Remove.
* stmt.c (expand_value_return): Don't use it.
* function.c (free_after_compilation): Don't set it.
(expand_function_start): Likewise. Remove parms_have_cleanups arg.
* cfgexpand.c (tree_expand_cfg): Update call.
* tree.h (expand_function_start): Update decl.
From-SVN: r83966
Joseph Myers [Thu, 1 Jul 2004 08:52:33 +0000 (09:52 +0100)]
re PR c/1027 (slightly misleading printf format warning)
PR c/1027
* c-lang.c (c_initialize_diagnostics): Move from here ...
* c-objc-common.c: ... to here. Include "c-pretty-print.h".
(c_tree_printer): Use pretty-printer to format %T.
* c-pretty-print.c (pp_c_specifier_qualifier_list): Include space
before '*' if not C++.
(pp_c_direct_abstract_declarator): Don't try to print array upper
bound for flexible array members.
* c-tree.h: Include "diagnostic.h".
(c_initialize_diagnostics): Declare.
* objc/objc-lang.c (LANG_HOOKS_INITIALIZE_DIAGNOSTICS): Define.
* c-format.c (format_type_warning): New function. Improve
diagnostics for incorrect format argument types.
(check_format_types): Use it. Add two parameters. Use the
TYPE_MAIN_VARIANT of wanted_type.
(check_format_info_main): Pass new parameters to
check_format_types.
(struct format_wanted_type): Update comment.
testsuite:
* gcc.dg/Wswitch-enum.c, gcc.dg/Wswitch.c,
gcc.dg/format/branch-1.c, gcc.dg/format/diag-1.c,
gcc.dg/format/multattr-3.c, gcc.dg/format/xopen-1.c: Update
expected warning text.
* gcc.dg/format/diag-2.c: New test.
From-SVN: r83965
Nick Clifton [Thu, 1 Jul 2004 08:47:16 +0000 (08:47 +0000)]
target.h (struct gcc_target): Add new field to struct cxx: import_export_class.
* target.h (struct gcc_target): Add new field to struct cxx: import_export_class.
* target-def.h (TARGET_CXX): Initialise the new field.
(TARGET_CXX_IMPORT_EXPORT_CLASS): Provide a default value for the new field.
* doc/tm.texi: Document the new target hook.
* decl2.c (import_export_class): Invoke the import_export_class field in the
gcc_target structure if it is not empty.
From-SVN: r83964
Eric Botcazou [Thu, 1 Jul 2004 08:33:36 +0000 (10:33 +0200)]
* gcc.c-torture/compile/
20040323-1.c: XFAIL on Solaris 2.
From-SVN: r83963
Paolo Bonzini [Thu, 1 Jul 2004 08:32:58 +0000 (08:32 +0000)]
builtins.c (fold_builtin_classify): Fix typo.
2004-07-01 Paolo Bonzini <bonzini@gnu.org>
* builtins.c (fold_builtin_classify): Fix typo.
From-SVN: r83962
Richard Henderson [Thu, 1 Jul 2004 08:23:29 +0000 (01:23 -0700)]
function.c (identify_blocks, [...]): Remove.
* function.c (identify_blocks, identify_blocks_1): Remove.
* function.h (identify_blocks): Remove.
* rtl.h (NOTE_INSN_BLOCK_BEG): Update comment.
From-SVN: r83961
Paolo Bonzini [Thu, 1 Jul 2004 08:02:34 +0000 (08:02 +0000)]
builtins.c (fold_builtin_classify): New.
gcc/ChangeLog:
2004-07-01 Paolo Bonzini <bonzini@gnu.org>
* builtins.c (fold_builtin_classify): New.
(fold_builtin_unordered_cmp): Fix commentary.
(fold_builtin): Use it.
* builtins.def: Define builtins for isnan,
isnanf, isnanl, finite, finitef, finitel,
isinf, isinff, isinfl.
gcc/testsuite/ChangeLog:
2004-07-01 Paolo Bonzini <bonzini@gnu.org>
* gcc.dg/builtins-43.c: New.
* gcc.dg/builtins-44.c: New.
* gcc.dg/builtins-45.c: New.
From-SVN: r83960
Richard Henderson [Thu, 1 Jul 2004 08:00:47 +0000 (01:00 -0700)]
function.h (struct function): Remove dont_emit_block_notes.
* function.h (struct function): Remove dont_emit_block_notes.
* gimple-low.c (lower_function_body): Don't set it.
* cfgexpand.c (expand_block): Don't check it.
* cfglayout.c (insn_locators_initialize): Likewise.
* expr.c (expand_expr_real, expand_expr_real_1): Likewise.
* passes.c (rest_of_compilation): Likewise.
* stmt.c (expand_start_bindings_and_block): Likewise.
(expand_end_bindings): Likewise.
From-SVN: r83959
Richard Henderson [Thu, 1 Jul 2004 07:51:12 +0000 (00:51 -0700)]
cgraph.h (cgraph_build_static_cdtor): Declare.
* cgraph.h (cgraph_build_static_cdtor): Declare.
* cgraphunit.c (cgraph_build_static_cdtor): New.
* c-objc-common.c (build_cdtor): Use it.
* coverage.c (create_coverage): Likewise.
* libfuncs.h (LTI_gcov_init, gcov_init_libfunc): Remove.
* optabs.c (init_optabs): Don't set gcov_init_libfunc.
java/
* class.c (registerClass_libfunc): Remove.
(init_class_processing): Don't set it.
(emit_register_classes): Take list_p parameter. Fill it in
with _Jv_RegisterClass calls.
* decl.c (java_init_decl_processing): Don't call
init_resource_processing.
* jcf-parse.c (java_emit_static_constructor): New.
(java_parse_file): Call it.
* resource.c (registerResource_libfunc): Remove.
(init_resource_processing): Remove.
(write_resource_constructor): Take list_p parameter. Fill it in
with _Jv_RegisterResource calls.
* java-tree.h: Update prototypes.
From-SVN: r83958
Richard Henderson [Thu, 1 Jul 2004 07:50:18 +0000 (00:50 -0700)]
* match.c (var_element): Remove unused variable.
From-SVN: r83957
Roger Sayle [Thu, 1 Jul 2004 04:27:09 +0000 (04:27 +0000)]
expmed.c (expand_shift): Consider expanding LSHIFT_EXPR by a constant as a sequence of additions...
* expmed.c (expand_shift): Consider expanding LSHIFT_EXPR by a
constant as a sequence of additions depending upon the rtx_costs.
(synth_mult): Update the "observed" cost of a shift, based upon
the above optimization.
From-SVN: r83956