Bernd Schmidt [Wed, 20 Jul 2005 10:42:51 +0000 (10:42 +0000)]
bfin.c: Include "langhooks.h".
* config/bfin/bfin.c: Include "langhooks.h".
(def_builtin): Go through lang_hooks to call builtin_function.
From-SVN: r102193
Bernd Schmidt [Wed, 20 Jul 2005 09:48:03 +0000 (09:48 +0000)]
bfin-protos.h (bfin_longcall_p): Declare.
* config/bfin/bfin-protos.h (bfin_longcall_p): Declare.
* config/bfin/predicates.md (symbol_ref_operand): New.
(call_insn_operand): Delete. All callers changed to use
register_no_elim_operand.
* config/bfin/bfin.c (init_cumulative_args): Initialize the new
call_cookie field.
(function_arg): Use it to generate the call's operand 2.
(bfin_longcall_p): New function.
(bfin_expand_call): Extra arg "cookie". All callers and declaration
changed. Emit extra USE in the pattern. Use bfin_longcall_p to
determine if the address needs to be in a REG.
(bfin_handle_longcall_attribute): New function.
(bfin_attribute_table): Add "longcall" and "shortcall".
* config/bfin/bfin.h (CALL_NORMAL, CALL_LONG, CALL_SHORT): New macros.
(CUMULATIVE_ARGS): New member call_cookie.
(PREDICATE_CODES): Add symbol_ref_operand.
* config/bfin/bfin.md (call, call_value, sibcall, sibcall_value): Add
extra USE to the pattern.
(call_symbol, sibcall_symbol, call_value_symbol, sibcall_value_symbol):
New patterns, split off call_insn, sibcall_insn, call_value_insn and
sibcall_value_insn; now the new patterns handle direct calls and the
old ones indirect calls.
* doc/extend.texi: Mention Blackfin in longcall/shortcall docs.
From-SVN: r102191
Zdenek Dvorak [Wed, 20 Jul 2005 08:29:44 +0000 (10:29 +0200)]
* doc/trouble.texi: Update section on handling of empty loops.
From-SVN: r102190
Kazu Hirata [Wed, 20 Jul 2005 06:39:38 +0000 (06:39 +0000)]
config.gcc: Remove support for sparc-*-openbsd*...
gcc/
* config.gcc: Remove support for sparc-*-openbsd*,
i860-*-sysv4*, ip2k-*-elf, ns32k-*-netbsdelf*,
ns32k-*-netbsd*.
* config.host: Remove support for i860-*-sysv4* as a host.
* config/i860/*, config/ip2k/*, config/ns32k/*,
config/sparc/openbsd.h, config/sparc/t-openbsd: Remove.
* doc/install.texi, doc/invoke.texi, doc/md.texi: Don't
mention obsolete ports.
testsuite/
* gcc.dg/
20020312-2.c, gcc.dg/sibcall-3.c, gcc.dg/sibcall-4.c,
gcc.dg/cpp/assert4.c: Don't mention obsolete ports.
From-SVN: r102189
Kaz Kojima [Wed, 20 Jul 2005 05:03:25 +0000 (05:03 +0000)]
sh.c (regno_reg_class): Add GENERAL_REGS for soft frame pointer.
* config/sh/sh.c (regno_reg_class): Add GENERAL_REGS for
soft frame pointer.
(sh_expand_prologue): Use hard_frame_pointer_rtx instead
of frame_pointer_rtx.
(sh_expand_epilogue): Likewise.
(sh_set_return_address): Likewise.
(initial_elimination_offset): Use HARD_FRAME_POINTER_REGNUM
instead of FRAME_POINTER_REGNUM if needed. Add elimination
offsets from FRAME_POINTER_REGNUM.
* config/sh/sh.h (SH_REGISTER_NAMES_INITIALIZER): Add sfp.
(sh_register_names): Add initializer for sfp.
(GENERAL_OR_AP_REGISTER_P): Permit FRAME_POINTER_REGNUM.
(VALID_REGISTER_P): Likewise.
(FIRST_PSEUDO_REGISTER): Update.
(DWARF_FRAME_REGISTERS): Define.
(FIXED_REGISTERS, CALL_USED_REGISTERS): Add sfp.
(HARD_FRAME_POINTER_REGNUM): Define.
(FRAME_POINTER_REGNUM): Redefine.
(ELIMINABLE_REGS): Never eliminate to FRAME_POINTER_REGNUM,
but HARD_FRAME_POINTER_REGNUM instead. Add eliminations
from FRAME_POINTER_REGNUM.
(CAN_ELIMINATE): Use HARD_FRAME_POINTER_REGNUM instead of
FRAME_POINTER_REGNUM.
(REG_CLASS_CONTENTS): Add sfp.
(REG_ALLOC_ORDER): Likewise.
(FRAME_GROWS_DOWNWARD): Set to 1. Update comment.
(GO_IF_LEGITIMATE_ADDRESS): Use hard_frame_pointer_rtx instead
of frame_pointer_rtx.
(LEGITIMIZE_RELOAD_ADDRESS): Likewise.
From-SVN: r102187
James A. Morrison [Wed, 20 Jul 2005 03:30:58 +0000 (03:30 +0000)]
fold-const.c (tree_expr_nonnegative_p): Only return true for ABS_EXPR when flag_wrapv is false because of INT_MIN.
2005-07-19 James A. Morrison <phython@gcc.gnu.org>
* fold-const.c (tree_expr_nonnegative_p): Only return true for
ABS_EXPR when flag_wrapv is false because of INT_MIN.
(tree_expr_nonzero_p): Always call tree_expr_nonzero_p on the argument
of an ABS_EXPR.
(fold_unary): Always fold ABS_EXPR<ABS_EXPR<x>> into
ABS_EXPR<x>.
From-SVN: r102184
Giovanni Bajo [Wed, 20 Jul 2005 01:19:59 +0000 (03:19 +0200)]
Make CONSTRUCTOR use VEC to store initializers.
* c-common.c (complete_array_type): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* c-pretty-print.c (pp_c_initializer_list): Use pp_c_constructor_elts.
(pp_c_constructor_elts): New function.
* c-pretty-print.h (pp_c_constructor_elts): Declare.
* c-typeck.c (build_function_call, build_c_cast, digest_init,
struct constructor_stack, struct initializer_stack,
constructor_elements, push_init_level, pop_init_level,
add_pending_init, find_init_member, output_init_element): Update to
cope with VEC in CONSTRUCTOR_ELTS.
* coverage.c (build_fn_info_value, build_ctr_info_value,
build_gcov_info): Likewise.
* expr.c (categorize_ctor_elements_1, store_constructor,
expand_expr_real_1): Likewise.
* fold-const.c (fold_ternary): Likewise.
* gimplify.c (gimplify_init_ctor_preeval, zero_sized_field_decl,
gimplify_init_constructor, gimplify_expr): Likewise.
* tree-dump.c (dequeue_and_dump): Likewise.
* tree-inline.c (copy_tree_r): Add code to duplicate a CONSTRUCTOR
node.
* tree-pretty-print.c (dump_generic_node): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* tree-sra.c (generate_element_init_1): Likewise.
* tree-ssa-ccp.c (fold_const_aggregate_ref): Likewise.
* tree-ssa-operands.c (get_expr_operands): Likewise.
* tree-vect-generic.c (expand_vector_piecewise): Likewise.
* tree-vect-transform.c (vect_get_vec_def_for_operand):
(get_initial_def_for_reduction): Likewise.
* tree-vn.c (set_value_handle, get_value_handle): CONSTURCTOR uses
value handle in annotations.
* tree.c (tree_node_kind, tree_code_size, make_node_stat,
tree_node_structure): Add support for constr_kind.
(build_vector_from_ctor, build_constructor_single,
build_constructor_from_list): New functions.
(build_constructor): Update to take a VEC instead of a TREE_LIST.
(simple_cst_equal, iterative_hash_expr, initializer_zerop, walk_tree):
Update to cope with VEC in CONSTRUCTOR_ELTS.
* tree.def (CONSTRUCTOR): Make it a tcc_exceptional node.
* tree.h (FOR_EACH_CONSTRUCTOR_VALUE, FOR_EACH_CONSTRUCTOR_ELT,
CONSTRUCTOR_APPEND_ELT): New macros.
(struct constructor_elt, struct tree_constructor): New data types.
(union tree_node): Add tree_constructor field.
* treestruct.def: Define TS_CONSTRUCTOR.
* varasm.c (const_hash_1, compare_constant, copy_constant,
compute_reloc_for_constant, output_addressed_constants,
initializer_constant_valid_p, output_constant,
array_size_for_constructor, output_constructor): Update to cope with
VEC in CONSTRUCTOR_ELTS.
* vec.h (VEC_empty, VEC_copy): New macros.
ada/
Make CONSTRUCTOR use VEC to store initializers.
* decl.c (gnat_to_gnu_entity): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* trans.c (extract_values): Likewise.
* utils.c (convert, remove_conversions): Likewise.
* utils2.c (contains_save_expr_p, build_binary_op, build_unary_op,
gnat_build_constructor): Likewise.
cp/
Make CONSTRUCTOR use VEC to store initializers.
* call.c (convert_default_arg): Update call to digest_init.
* class.c (dump_class_hierarchy, dump_array): Update to cope with
VEC in CONSTRUCTOR_ELTS.
* cp-tree.h (EMPTY_CONSTRUCTOR_P): Likewise.
(finish_compound_literal, digest_init): Update declaration.
* decl.c (struct reshape_iter): New data type.
(reshape_init_array): Rename to...
(reshape_init_array_1): Update to cope with VEC in CONSTRUCTOR_ELTS.
(reshape_init): Rewrite from scratch. Split parts into...
(reshape_init_array, reshape_init_vector, reshape_init_class,
reshape_init_r): New functions.
(check_initializer): Update call to reshape_init. Remove obsolete
code.
(initialize_artificial_var, cp_complete_array_type): Update to cope
with VEC in CONSTRUCTOR_ELTS.
* decl2.c (grokfield): Update calls to digest_init.
(mark_vtable_entries): Update to cope with VEC in CONSTRUCTOR_ELTS.
* error.c (dump_expr_init_vec): New function.
(dump_expr): Use dump_expr_init_vec.
* init.c (build_zero_init, build_vec_init): Update to cope with VEC
in CONSTRUCTOR_ELTS.
(expand_default_init): Update call to digest_init.
* parser.c (cp_parser_postfix_expression): Use a VEC for the
initializers.
(cp_parser_initializer_list): Build a VEC of initializers.
* pt.c (tsubst_copy, tsubst_copy_and_build): Update to cope with VEC
in CONSTRUCTOR_ELTS.
* rtti.c (tinfo_base_init, generic_initializer, ptr_initializer,
ptm_initializer, class_initializer, get_pseudo_ti_init): Use
build_constructor_from_list instead of build_constructor.
* semantics.c (finish_compound_literal): Update call to digest_init.
* tree.c (stabilize_init): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* typeck.c (build_ptrmemfunc1): Likewise.
* typeck2.c: (cxx_incomplete_type_error, split_nonconstant_init_1):
Likewise.
(store_init_value): Use build_constructor_from_list and update call
to digest_init.
(digest_init): Rewrite.
(process_init_constructor): Rewrite from scratch. Split into...
(process_init_constructor_array, picflag_from_initializer,
process_init_constructor_record, process_init_constructor_union):
New functions.
(PICFLAG_ERRONEOUS, PICFLAG_NOT_ALL_CONSTANT, PICFLAG_NOT_ALL_SIMPLE):
New macros.
(build_functional_cast): Use build_constructor_from_list instead of
build_constructor.
fortran/
Make CONSTRUCTOR use VEC to store initializers.
* trans-array.c (gfc_build_null_descriptor,
gfc_trans_array_constructor_value, gfc_conv_array_initializer):
Update to cope with VEC in CONSTRUCTOR_ELTS.
* trans-common.c (create_common): Likewise.
* trans-expr.c (gfc_conv_structure): Likewise.
* trans-stmt.c (gfc_trans_character_select): Use
build_constructor_from_list instead of build_constructor.
java/
Make CONSTRUCTOR use VEC to store initializers.
* check-init.c (check_init): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* class.c (make_field_value, make_method_value, get_dispatch_table,
make_class_data, emit_symbol_table, emit_catch_table,
emit_assertion_table): Use build_constructor_from_list instead of
build_constructor.
* constants.c (build_constants_constructor): Likewise.
* java-gimplify.c (java_gimplify_new_array_init): Update to cope with
VEC in CONSTRUCTOR_ELTS.
* java-tree.h (START_RECORD_CONSTRUCTOR, PUSH_SUPER_VALUE,
PUSH_FIELD_VALUE, FINISH_RECORD_CONSTRUCTOR): Create a VEC instead
of a TREE_LIST.
* jcf-write.c (generate_bytecode_insns): Update to cope with VEC in
CONSTRUCTOR_ELTS.
* parse.y (build_new_array_init): Use build_constructor_from_list
instead of build_constructor.
(patch_new_array_init): Update to cope with VEC in
CONSTRUCTOR_ELTS.
(array_constructor_check_entry): Likewise.
objc/
Make CONSTRUCTOR use VEC to store initializers.
* objc-act.c (objc_build_constructor): Use build_constructor_from_list
instead of build_constructor.
testsuite/
Make CONSTRUCTOR use VEC to store initializers.
* g++.dg/ext/complit3.C: Check for specific error messages.
* g++.dg/init/brace2.C: Update error message.
* g++.dg/warn/Wbraces2.C: Likewise.
From-SVN: r102182
Devang Patel [Wed, 20 Jul 2005 00:24:49 +0000 (17:24 -0700)]
* dbxout.c (dbxout_type): Check Objective-C++ lang.
From-SVN: r102181
GCC Administrator [Wed, 20 Jul 2005 00:16:32 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r102179.2
Andreas Tobler [Tue, 19 Jul 2005 21:17:06 +0000 (23:17 +0200)]
2005-07-19 Andreas Tobler <a.tobler@schweiz.ch>
push the missing CL.
From-SVN: r102175
Andreas Tobler [Tue, 19 Jul 2005 21:15:36 +0000 (23:15 +0200)]
Makefile.am (nodist_libffi_la_SOURCES): Add POWERPC_FREEBSD.
2005-07-19 Andreas Tobler <a.tobler@schweiz.ch>
* Makefile.am (nodist_libffi_la_SOURCES): Add POWERPC_FREEBSD.
* Makefile.in: Regenerate.
* include/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* configure.ac: Add POWERPC_FREEBSD rules.
* configure: Regenerate.
* src/powerpc/ffitarget.h: Add POWERPC_FREEBSD rules.
(FFI_SYSV_TYPE_SMALL_STRUCT): Define.
* src/powerpc/ffi.c: Add flags to handle small structure returns
in ffi_call_SYSV.
(ffi_prep_cif_machdep): Handle small structures for SYSV 4 ABI.
Aka FFI_SYSV.
(ffi_closure_helper_SYSV): Likewise.
* src/powerpc/ppc_closure.S: Add return types for small structures.
* src/powerpc/sysv.S: Add bits to handle small structures for
final SYSV 4 ABI
From-SVN: r102174
Richard Henderson [Tue, 19 Jul 2005 20:20:40 +0000 (13:20 -0700)]
re PR tree-optimization/22278 (gcc -O2 discards cast to volatile)
PR tree-opt/22278
* gimplify.c (gimplify_expr): Use main variant type for the temp
destination for a discarded volatile read.
* tree-ssa.c (tree_ssa_useless_type_conversion_1): Don't elide
casts between non-void types that change volatility.
From-SVN: r102169
DJ Delorie [Tue, 19 Jul 2005 20:19:16 +0000 (16:19 -0400)]
toplev.h: Add comment about the first parameter for warning().
* toplev.h: Add comment about the first parameter for warning().
* errors.h: Likewise.
* c.opt (Wpragmas): New.
* doc/invoke.texi: Document it.
* function.c (do_warn_unused_parameter): Add warning control to
warning call.
* c-decl.c (warn_if_shadowing): Likewise.
* c-lex.c (cb_def_pragma): Likewise.
* c-pragma.c (GCC_BAD, GCC_BAD2): Likewise.
(pop_alignment): Likewise.
(handle_pragma_pack): Likewise.
(apply_pragma_weak): Likewise.
(handle_pragma_weak): Likewise.
(handle_pragma_redefine_extname): Likewise.
(add_to_renaming_pragma_list): Likewise.
(handle_pragma_extern_prefix): Likewise.
(maybe_apply_renaming_pragma): Likewise.
(handle_pragma_visibility): Likewise.
* config/c4x/c4x-c.c (BAD): Likewise.
(c4x_parse_pragma): Likewise.
* config/ia64/ia64-c.c (ia64_hpux_handle_builtin_pragma): Likewise.
* config/rs6000/rs6000-c.c (SYNTAX_ERROR): Likewise.
(rs6000_pragma_longcall): Likewise.
* config/v850/v850-c.c (pop_data_area): Likewise.
(ghs_pragma_section): Likewise.
(ghs_pragma_section): Likewise.
(ghs_pragma_interrupt): Likewise.
(ghs_pragma_starttda): Likewise.
(ghs_pragma_startsda): Likewise.
(ghs_pragma_startzda): Likewise.
(ghs_pragma_endtda): Likewise.
(ghs_pragma_endsda): Likewise.
(ghs_pragma_endzda): Likewise.
From-SVN: r102168
Paul Thomas [Tue, 19 Jul 2005 20:13:53 +0000 (20:13 +0000)]
re PR fortran/16940 (Failure to perform host association correctly)
2005-07-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/16940
* resolve.c (resolve_symbol): A symbol with FL_UNKNOWN
is matched against interfaces in parent namespaces. If there
the symtree is set to point to the interface.
2005-07-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/16940
* gfortran.dg/module_interface_1.f90: New test.
From-SVN: r102167
Daniel Berlin [Tue, 19 Jul 2005 18:46:15 +0000 (18:46 +0000)]
Makefile.in: Removed tree-promote-statics.c
2005-07-19 Danny Berlin <dberlin@dberlin.org>
Kenneth Zadeck <zadeck@naturalbridge.com>
* Makefile.in: Removed tree-promote-statics.c
* tree-promote-statics.c: Removed.
* common.opt: Removed flag-promote-statics.
* opts.c: Ditto.
* passes.c: Removed tree-promote-statics pass.
* tree-pass.h: Ditto.
* timevar.def: Removed TV_PROMOTE_STATICS.
2005-07-19 Danny Berlin <dberlin@dberlin.org>
Kenneth Zadeck <zadeck@naturalbridge.com>
* gcc.dg/tree-ssa/sra-2.c: Changed back to -O1 and added xfail.
Co-Authored-By: Kenneth Zadeck <zadeck@naturalbridge.com>
From-SVN: r102165
Nick Clifton [Tue, 19 Jul 2005 16:33:17 +0000 (16:33 +0000)]
config/avr/avr.c (legitimate_address_p): Fix debugging print statement to avoid
displaying ASCII control characters.
From-SVN: r102161
James A. Morrison [Tue, 19 Jul 2005 14:39:20 +0000 (14:39 +0000)]
var_defs.tree: Remove duplicate variable.
2005-07-19 James A. Morrrison <phython@gcc.gnu.org>
* compile/var_defs.tree: Remove duplicate variable.
* compile/var_defs-2.tree: Add duplicate variable test.
From-SVN: r102159
Gerald Pfeifer [Tue, 19 Jul 2005 13:42:12 +0000 (13:42 +0000)]
config.gcc: Add support for *-*-freebsd7, *-*-freebsd8, and *-*-freebsd9.
* config.gcc: Add support for *-*-freebsd7, *-*-freebsd8,
and *-*-freebsd9.
* config/freebsd-spec.h (FBSD_TARGET_OS_CPP_BUILTINS): Ditto.
From-SVN: r102157
Matthias Klose [Tue, 19 Jul 2005 12:55:52 +0000 (12:55 +0000)]
InputContext.java (clinit): Initialize line, im.
2005-07-19 Matthias Klose <doko@debian.org>
* classpath/java/awt/im/InputContext.java (clinit): Initialize
line, im.
From-SVN: r102156
Kaveh R. Ghazi [Tue, 19 Jul 2005 12:09:49 +0000 (12:09 +0000)]
re PR c++/22476 (-Wmissing-format-attribute should pick out function pointer candidates also)
PR c/22476
* c-common.c (check_function_arguments): Call
'check_function_format' if either -Wformat or
-Wmissing-format-attribute are specified.
* c-format.c (check_function_format): Check -Wformat before
calling 'check_format_info'.
* c-opts.c (c_common_post_options): Don't warn for
-Wmissing-format-attribute without -Wformat.
* c-typeck.c (convert_for_assignment): Detect additional cases for
-Wmissing-format-attribute.
* doc/invoke.texi (-Wmissing-format-attribute): Document new
behavior.
testsuite:
* gcc.dg/format/miss-1.c, gcc.dg/format/miss-2.c: Don't
specify -Wformat for these tests.
* gcc.dg/format/miss-3.c, gcc.dg/format/miss-4.c,
gcc.dg/format/miss-5.c, gcc.dg/format/miss-6.c: New.
* gcc.dg/format/opt-6.c: Delete.
From-SVN: r102155
Richard Guenther [Tue, 19 Jul 2005 08:01:55 +0000 (08:01 +0000)]
i386.md (lrint<mode>2): Use temporary instead of clobbering non-existent memory.
2005-07-19 Richard Guenther <rguenther@suse.de>
* config/i386/i386.md (lrint<mode>2): Use temporary
instead of clobbering non-existent memory.
From-SVN: r102154
Ben Elliston [Tue, 19 Jul 2005 04:08:32 +0000 (04:08 +0000)]
bt-load.c (link_btr_uses): Fix uninitialised warnings.
* bt-load.c (link_btr_uses): Fix uninitialised warnings.
* cfganal.c (find_edge_index): Ditto.
* combine.c (combine_instructions): Ditto.
* ddg.c (create_scc): Ditto.
(find_successors): Ditto.
(find_predecessors): Ditto.
(find_nodes_on_paths): Ditto.
(longest_simple_path): Ditto.
* flow.c (update_life_info): Ditto.
(count_or_remove_death_notes): Ditto.
(clear_log_links): Ditto.
* modulo-sched.c (generate_reg_moves): Ditto.
(find_max_asap): Ditto.
(find_max_hv_min_mob): Ditto.
(find_max_dv_min_mob): Ditto.
* sbitmap.c (sbitmap_first_set_bit): Ditto.
* sched-rgn.c (extract_edgelst): Ditto.
* tree-into-ssa.c (prepare_names_to_update): Ditto.
(dump_update_ssa): Ditto.
(ssa_names_to_replace) Ditto.
(switch_virtuals_to_full_rewrite): Ditto.
(update_ssa): Ditto.
* tree-vect-transform.c (vect_create_epilog_for_reduction): Ditto.
From-SVN: r102151
Daniel Berlin [Tue, 19 Jul 2005 03:36:15 +0000 (03:36 +0000)]
re PR tree-optimization/22483 (ICE : tree check: expected ssa_name, have var_decl in is_old_name, at tree-into-ssa.c:466)
2005-07-18 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/22483
* tree-complex.c (create_components): Use
safe_referenced_var_iterator and FOR_EACH_REFERENCED_VAR_SAFE.
* tree-flow-inline.h (fill_referenced_var_vec): New function.
* tree-flow.h (safe_referenced_var_iterator): New structure.
(FOR_EACH_REFERENCED_VAR_SAFE): New macro.
* tree-ssa-alias.c (setup_pointers_and_addressables): Use
safe_referenced_var iterator.
(add_type_alias): Ditto.
From-SVN: r102150
Steven Bosscher [Tue, 19 Jul 2005 00:44:45 +0000 (00:44 +0000)]
loop-init.c (rest_of_handle_loop2): Remove.
* loop-init.c (rest_of_handle_loop2): Remove.
(rtl_loop_init, rtl_loop_done, rtl_move_loop_invariants,
rtl_unswitch, rtl_unroll_and_peel_loops, rtl_doloop): New functions.
(pass_rtl_loop_init, pass_rtl_loop_done,
pass_rtl_move_loop_invariants, pass_rtl_unswitch,
pass_rtl_unroll_and_peel_loops, pass_rtl_doloop): New passes.
* tree-ssa-loop.c (pass_loop, pass_loop_init, pass_loop_done,
pass_unswitch): Rename to pass_tree_loop, pass_tree_loop_init,
pass_tree_loop_done, and pass_tree_unswitch.
(gate_loop): Rename to gate_tree_loop.
* passes.c (init_optimization_passes): Update for renamed tree
loop passes. Add the new loop2 passes as subpasses of loop2.
* tree-pass.h: Add extern declarations for the new loop2 subpasses.
Update for the renamed tree loop passes.
From-SVN: r102149
GCC Administrator [Tue, 19 Jul 2005 00:16:15 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r102146.2
Andrew Pinski [Tue, 19 Jul 2005 00:10:16 +0000 (00:10 +0000)]
sra-2.c: Pass --param sra-max-structure-size.
2005-07-18 Andrew Pinski <pinskia@physics.uc.edu>
* gcc.dg/tree-ssa/sra-2.c: Pass --param sra-max-structure-size.
* gcc.dg/tree-ssa/sra-3.c: Likewise.
From-SVN: r102144
Andrew Pinski [Mon, 18 Jul 2005 23:35:15 +0000 (16:35 -0700)]
alias-2.c: New test.
2005-07-18 Andrew Pinski <pinskia@physics.uc.edu>
* gcc.dg/tree-ssa/alias-2.c: New test.
From-SVN: r102143
Ian Lance Taylor [Mon, 18 Jul 2005 23:20:09 +0000 (23:20 +0000)]
re PR middle-end/22057 (Poor -O0 debug information for for loops with no initializer)
PR middle-end/22057
* tree-cfgcleanup.c (cleanup_tree_cfg): Only remove forwarder
blocks when optimizing.
From-SVN: r102142
Steve Ellcey [Mon, 18 Jul 2005 21:14:19 +0000 (21:14 +0000)]
common.opt (frename-registers): Initialize to 2.
* common.opt (frename-registers): Initialize to 2.
(fweb): Ditto.
(fgcse-after-reload): Ditto.
* toplev.c (AUTODETECT_FLAG_VAR_TRACKING): Rename to AUTODETECT_VALUE.
(process_options): Only change flag_web, flag_rename_registers,
and flag_rerun_cse_after_loop if not explicitly set by user.
From-SVN: r102141
Tom Tromey [Mon, 18 Jul 2005 20:54:01 +0000 (20:54 +0000)]
re PR libgcj/21058 (fragile libgcj link process omits some inner classes)
PR libgj/21058:
* sources.am, Makefile.in: Rebuilt.
* scripts/makemake.tcl (emit_bc_rule): Create a temporary list
file.
(emit_source_var): Don't emit patsubst with './'.
From-SVN: r102140
Tom Tromey [Mon, 18 Jul 2005 20:47:00 +0000 (20:47 +0000)]
Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
* Makefile.am ($(libgij_la_OBJECTS)): Depend on headers.stamp.
From-SVN: r102139
Paolo Carlini [Mon, 18 Jul 2005 17:42:32 +0000 (17:42 +0000)]
ctype_members.cc (do_is(mask, wchar_t)): Speed-up for the common case of mask == ctype_base::space...
2005-07-18 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/ctype_members.cc (do_is(mask, wchar_t)):
Speed-up for the common case of mask == ctype_base::space;
otherwise, exit the loop earlier if the mask is one of the
elementary ones.
From-SVN: r102137
Mark Mitchell [Mon, 18 Jul 2005 15:44:36 +0000 (15:44 +0000)]
re PR c++/22263 (explicit instantiation fails to emit symbols defined later)
PR c++/22263
* cp-tree.h (instantiate_decl): Change prototype.
* decl2.c (mark_used): Adjust accordingly.
* pt.c (do_decl_instantiation): Likewise.
(instantiate_class_member): Likewise.
(instantiate_decl): Rename undefined_ok as expl_inst_class_mem_p.
Clear DECL_INTERFACE_KNOWN for an explicitly instantiated template
that has no definition available.
(instantiate_pending_templates): Adjust call to instantiate_decl.
PR c++/22263
* g++.dg/template/explicit7.C: New test.
From-SVN: r102133
Jan Beulich [Mon, 18 Jul 2005 06:39:20 +0000 (06:39 +0000)]
i386.c (ix86_expand_branch, [...]): Handle TImode in 64-bit mode the same as DImode in 32-bit mode.
gcc/
2005-07-18 Jan Beulich <jbeulich@novell.com>
* config/i386/i386.c (ix86_expand_branch, ix86_expand_setcc,
ix86_expand_carry_flag_compare, ix86_expand_int_movcc): Handle TImode
in 64-bit mode the same as DImode in 32-bit mode.
(ix86_expand_ashl_const, ix86_split_ashl, ix86_split_ashr,
ix86_split_lshr): Likewise. Rename to no longer refer to a specific
mode. Add new mode parameter.
* config/i386/i386.h (CONST_OK_FOR_LETTER_P): Describe and handle 'O'.
* config/i386/i386.md (cmpti, addti3, subti3, negti2, ashlti3, ashrti3,
x86_64_shift_adj): New expanders.
(*addti3_1, *subti3_1, *negti2_1, ashlti3_1, *ashlti3_2, ashrti3_1,
*ashrti3_2, lshrti3_1, *lshrti3_2, x86_64_shld, x86_64_shrd): New
insns.
Respective new splitters. Use renamed shift splitter helpers in 32-bit
DImode shift splitters.
* config/i386/i386-protos.h (ix86_split_ashl, ix86_split_ashr,
ix86_split_lshr): Renamed from ix86_split_[al]sh[rl]di. Added new
mode parameter.
From-SVN: r102129
Jan Beulich [Mon, 18 Jul 2005 06:35:48 +0000 (06:35 +0000)]
i386.md (movdi_extzv_1): New.
gcc/
2005-07-18 Jan Beulich <jbeulich@novell.com>
* i386.md (movdi_extzv_1): New.
(zero_extendhidi2): Combine alternatives and never force use of
REX64 prefix.
(zero_extendqidi2): Likewise. Don't restrict input selection.
From-SVN: r102128
GCC Administrator [Mon, 18 Jul 2005 00:16:15 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r102126.2
Jerry DeLisle [Mon, 18 Jul 2005 00:07:53 +0000 (00:07 +0000)]
nan_inf_fmt.f90: Change case of field width of 8 to +Inf and -Inf.
2005-07-17 Jerry DeLisle <jvdelisle@verizon.net>
* gfortran.fortran-torture/execute/nan_inf_fmt.f90: Change case of field
width of 8 to +Inf and -Inf.
From-SVN: r102124
Daniel Berlin [Sun, 17 Jul 2005 22:28:19 +0000 (22:28 +0000)]
re PR tree-optimization/22531 (ICE in mark_sym_for_renaming while compiling dwarf2out.c)
2005-07-17 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/22531
* tree-ssa-pre.c (do_eustores): Make sure LHS is a decl for the
moment.
From-SVN: r102119
Mark Mitchell [Sun, 17 Jul 2005 22:02:09 +0000 (22:02 +0000)]
re PR c++/22139 (Segfault with templates and friend functions)
PR c++/22139
* cp-tree.h (DECL_TEMPLATE_INFO): Improve documentation.
* decl.c (duplicate_decls): Re-register template specializations
for functions that have DECL_TEMLPLATE_INFO, even if they do not
have DECL_TEMPLATE_INSTANTIATION set.
PR c++/22139
* g++.dg/template/friend36.C: New test.
From-SVN: r102118
Daniel Berlin [Sun, 17 Jul 2005 21:50:03 +0000 (21:50 +0000)]
forgot to write changelog entry before commit.
From-SVN: r102117
Jerry DeLisle [Sun, 17 Jul 2005 20:53:18 +0000 (20:53 +0000)]
ChangeLog: Fix date on last commit.
2005-07-17 Jerry DeLisle <jvdelisle@verizon.net>
* libfortran/ChangeLog: Fix date on last commit.
From-SVN: r102116
Jerry DeLisle [Sun, 17 Jul 2005 20:28:14 +0000 (20:28 +0000)]
write.c (write_float): Fix field width checks for printing 'Infinity' or 'Inf'.
2005-07-14 Jerry DeLisle <jvdelisle@verizon.net>
* io/write.c (write_float): Fix field width checks for
printing 'Infinity' or 'Inf'.
(output_float): Fix typo in comment.
From-SVN: r102115
Daniel Berlin [Sun, 17 Jul 2005 18:17:02 +0000 (18:17 +0000)]
tree-promote-statics.c (pass_promote_statics): Change dump file name.
2005-07-17 Daniel Berlin <dberlin@dberlin.org>
* tree-promote-statics.c (pass_promote_statics): Change dump file
name.
From-SVN: r102113
Daniel Berlin [Sun, 17 Jul 2005 17:13:53 +0000 (17:13 +0000)]
tree-optimize.c (init_tree_optimization_passes): Add pass_eliminate_useless_stores pass.
2005-07-12 Daniel Berlin <dberlin@dberlin.org>
* tree-optimize.c (init_tree_optimization_passes): Add
pass_eliminate_useless_stores pass.
* tree-pass.h (pass_eliminate_useless_stores): New pass structure.
* tree-ssa-pre.c (is_copy_stmt): New function.
(follow_copies_till_vuse): Ditto.
(do_eustores): Ditto.
(gate_eustores): Ditto.
From-SVN: r102112
SUGIOKA Toshinobu [Sun, 17 Jul 2005 07:33:58 +0000 (16:33 +0900)]
* include/private/gcconfig.h (sh-linux): Use LINUX_STACKBOTTOM.
From-SVN: r102110
Andreas Jaeger [Sun, 17 Jul 2005 05:41:33 +0000 (07:41 +0200)]
* defineclass.cc (handleClassBegin): Remove unused variable.
From-SVN: r102109
Richard Henderson [Sun, 17 Jul 2005 02:29:00 +0000 (19:29 -0700)]
gcc.c (MFWRAP_SPEC): Don't wrap pthread_join or pthread_exit.
* gcc.c (MFWRAP_SPEC): Don't wrap pthread_join or pthread_exit.
* acinclude.m4: New file.
* configure.ac: Invoke LIBMUDFLAP_CHECK_TLS.
* configure, config.h.in, Makefile.in, testsuite/Makefile.in: Rebuild.
* mf-hooks1.c (__mf_0fn_malloc): Move body from ...
(__mf_0fn_calloc): ... here.
* mf-hooks3.c (struct pthread_info): Remove.
(__mf_pthread_info, __mf_pthread_info_idx): Remove.
(LIBMUDFLAPTH_THREADS_MAX): Set to 1021.
(struct mf_thread_data): New.
(mf_thread_data, mf_thread_data_lock): New.
(__mf_allocate_blank_threadinfo): Remove.
(__mf_find_threadinfo): Rewrite and simplify. Only use if TLS is
not available.
(__mf_state_perthread): Remove.
(__mf_get_state, __mf_set_state): New.
(__mf_pthread_cleanup): Use &errno, rather than saved pointer.
Update mf_thread_data killing procedure.
(__mf_pthread_spawner): Similarly.
(__mf_0fn_pthread_create): Only use wrapper if necessary. Remove
code to allocate thread stack space.
(__mf_0fn_pthread_join, pthread_join): Remove.
(__mf_0fn_pthread_exit, pthread_exit): Remove.
* mf-impl.h (dyn_pthread_join, dyn_pthread_exit): Remove.
(__mf_state_1): Rename from __mf_state; use TLS when available.
(__mf_get_state, __mf_set_state): New. Update all users.
* mf-runtime.c (begin_recursion_protect1): New.
(BEGIN_RECURSION_PROTECT): Use it.
(__mf_state_1): Rename from __mf_state; use TLS when available.
(threads_active_p): Remove.
(__mf_usage): Compute it directly.
From-SVN: r102108
Kenneth Zadeck [Sun, 17 Jul 2005 01:30:45 +0000 (01:30 +0000)]
removed pointer_no_capture entries.
From-SVN: r102107
Kenneth Zadeck [Sun, 17 Jul 2005 01:28:29 +0000 (01:28 +0000)]
Move the changelog entry from the top level to the gcc directory.
From-SVN: r102106
David Edelsohn [Sun, 17 Jul 2005 00:55:59 +0000 (00:55 +0000)]
re PR fortran/21730 ([4.0 only] Character length incorrect.)
PR fortran/21730
* gfortran.dg/pr21730.f: New test.
From-SVN: r102105
David Edelsohn [Sun, 17 Jul 2005 00:48:46 +0000 (00:48 +0000)]
re PR fortran/21730 ([4.0 only] Character length incorrect.)
PR fortran/21730
* decl.c (do_parm): Adjust character initializer to character length
of symbol before assigning.
From-SVN: r102104
GCC Administrator [Sun, 17 Jul 2005 00:16:15 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r102102.2
Daniel Berlin [Sat, 16 Jul 2005 22:27:21 +0000 (22:27 +0000)]
tree-ssa-structalias.c (need_to_solve): Need to check for preds, too.
2005-07-16 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-structalias.c (need_to_solve): Need to check for preds,
too.
From-SVN: r102100
Daniel Berlin [Sat, 16 Jul 2005 18:56:53 +0000 (18:56 +0000)]
Makefile.in: Added rules for ipa-pure-const.c...
2005-07-16 Danny Berlin <dberlin@dberlin.org>
Kenneth Zadeck <zadeck@naturalbridge.com>
* Makefile.in: Added rules for ipa-pure-const.c, ipa-reference.c,
ipa-reference.h, ipa-utils.c, ipa-utils.h, ipa-type-escape.c,
ipa-type-escape.h, tree-promote-statics.c
* ipa-pure-const.c, ipa-reference.c, ipa-reference.h, ipa-utils.c,
ipa-utils.h, ipa-type-escape.c, ipa-type-escape.h,
tree-promote-statics.c: new files.
* alias.c: (nonlocal_mentioned_p_1, nonlocal_mentioned_p,
nonlocal_referenced_p_1, nonlocal_referenced_p, nonlocal_set_p_1,
int nonlocal_set_p, mark_constant_function): Deleted.
(rest_of_handle_cfg): Removed call to mark_constant_function.
(nonoverlapping_component_refs_p): Added calls to support
type based aliasing.
* tree-ssa-alias.c (may_alias_p,
compute_flow_insensitive_aliasing): Ditto.
* calls.c (flags_from_decl_or_type): Removed reference to
cgraph_rtl_info.
(flags_from_decl_or_type): Support ECF_POINTER_NO_CAPTURE attribute.
* c-common.c (handle_pointer_no_capture_attribute): New function
and added pointer_no_capture attribute.
* c-typeck.c (convert_arguments): Make builtins tolerant of having
too many arguments. This is necessary for Spec 2000.
* cgraph.h (const_function, pure_function): Removed.
* common.opt: Added "fipa-pure-const", "fipa-reference",
"fipa-type-escape", and "ftree-promote-static".
* opts.c: Ditto.
* passes.c: Added ipa and tree-promote-statics passes.
* timevar.def: Added TV_IPA_PURE_CONST, TV_IPA_REFERENCE,
TV_IPA_TYPE_ESCAPE, and TV_PROMOTE_STATICS.
* tree.h: Support ECF_POINTER_NO_CAPTURE attribute.
* tree-dfa.c (referenced_var_lookup_if_exists): New function.
* tree-flow.h: Added exposed sra calls and addition of
reference_vars_info field for FUNCTION_DECLS.
* tree-pass.h: Added passes.
* tree-sra.c: (sra_init_cache): New function.
(sra_insert_before, sra_insert_after) Made public.
(type_can_be_decomposed_p): Renamed from type_can_be_decomposed_p
and made public.
* tree-ssa-alias.c (dump_alias_stats): Added stats for type based
aliasing. (may_alias_p): Added code to use type escape analysis to
improve alias sets.
* tree-ssa-operands.c (add_call_clobber_ops): Added parameter and
code to prune clobbers of static variables based on information
produced in ipa-reference pass. Changed call clobbering so that
statics are not marked as clobbered if the call does not clobber
them.
2005-07-16 Danny Berlin <dberlin@dberlin.org>
Kenneth Zadeck <zadeck@naturalbridge.com>
* gcc.dg/tree-ssa/ssa-dce-2.c: Changed dg-options to run at -O2
since pure const detection cannot run at -O1 in c compiler.
* gcc.dg/tree-ssa/
20030714-1.c Changed scanning patterns because we
can now optimize this case properly.
* gcc.dg/tree-ssa/sra-2.c: Changed to -O3 and removed xfail
because we now pass.
* gcc.dg/vect/vect-92.c: Removed out of bounds array access.
Co-Authored-By: Kenneth Zadeck <zadeck@naturalbridge.com>
From-SVN: r102098
Andreas Schwab [Sat, 16 Jul 2005 17:40:00 +0000 (17:40 +0000)]
makemake.tcl (emit_package_rule): Emit command to create target directory.
* scripts/makemake.tcl (emit_package_rule): Emit command to create
target directory.
* Makefile.am (%.lo): Don't create it here.
* sources.am, Makefile.in: Regenerated.
From-SVN: r102096
Eric Botcazou [Sat, 16 Jul 2005 16:12:21 +0000 (18:12 +0200)]
install.texi (*-*-solaris2*): Document recommended version of GNU binutils and mention GNU linker problem on...
* doc/install.texi (*-*-solaris2*): Document recommended version
of GNU binutils and mention GNU linker problem on Solaris 10.
From-SVN: r102094
Joseph Myers [Sat, 16 Jul 2005 16:01:57 +0000 (17:01 +0100)]
re PR c/22421 (problems with -Wformat and bit-fields)
PR c/22421
* c-decl.c (c_build_bitfield_integer_type): New function.
(finish_struct): Call it.
* c-pretty-print.c (pp_c_type_specifier): Handle bit-field types.
testsuite:
* gcc.dg/format/bitfld-1.c: New test.
From-SVN: r102091
Kaveh R. Ghazi [Sat, 16 Jul 2005 14:34:37 +0000 (14:34 +0000)]
c-typeck.c (digest_init): Call 'convert_for_assignment' before returning.
* c-typeck.c (digest_init): Call 'convert_for_assignment'
before returning.
From-SVN: r102090
Kaveh R. Ghazi [Sat, 16 Jul 2005 14:20:45 +0000 (14:20 +0000)]
call.c (diagnostic_fn_t): New.
* call.c (diagnostic_fn_t): New.
(build_temp, convert_like_real): Use diagnostic_fn_t.
From-SVN: r102089
Kaveh R. Ghazi [Sat, 16 Jul 2005 14:17:51 +0000 (14:17 +0000)]
Makefile.in (WARN_CFLAGS): New.
* Makefile.in (WARN_CFLAGS): New.
(.c.o): Add $(WARN_CFLAGS).
* aclocal.m4: Include ../config/warnings.m4.
* configure.ac: Invoke ACX_PROG_CC_WARNING_OPTS,
ACX_PROG_CC_WARNING_ALMOST_PEDANTIC and
ACX_PROG_CC_WARNINGS_ARE_ERRORS.
* fixopts.c (initialize_opts): Fix old-style definintion.
* configure: Regenerate.
From-SVN: r102088
Jan Hubicka [Sat, 16 Jul 2005 12:15:27 +0000 (14:15 +0200)]
cfg.c (update_bb_profile_for_threading): Fix profile updating.
* cfg.c (update_bb_profile_for_threading): Fix profile updating.
(scale_bbs_frequencies_int): Watch roundoff errors.
* predict.c (return_prediction): Initialize return_stmt.
From-SVN: r102087
Kelley Cook [Sat, 16 Jul 2005 02:40:16 +0000 (02:40 +0000)]
all files: Update FSF address.
2005-07-16 Kelley Cook <kcook@gcc.gnu.org>
* all files: Update FSF address.
From-SVN: r102084
Kelley Cook [Sat, 16 Jul 2005 02:30:53 +0000 (02:30 +0000)]
all files: Update FSF address.
2005-07-16 Kelley Cook <kcook@gcc.gnu.org>
* all files: Update FSF address.
From-SVN: r102083
Tom Tromey [Sat, 16 Jul 2005 01:27:14 +0000 (01:27 +0000)]
Major merge with Classpath.
Removed many duplicate files.
* HACKING: Updated.x
* classpath: Imported new directory.
* standard.omit: New file.
* Makefile.in, aclocal.m4, configure: Rebuilt.
* sources.am: New file.
* configure.ac: Run Classpath configure script. Moved code around
to support. Disable xlib AWT peers (temporarily).
* Makefile.am (SUBDIRS): Added 'classpath'
(JAVAC): Removed.
(AM_CPPFLAGS): Added more -I options.
(BOOTCLASSPATH): Simplified.
Completely redid how sources are built.
Include sources.am.
* include/Makefile.am (tool_include__HEADERS): Removed jni.h.
* include/jni.h: Removed (in Classpath).
* scripts/classes.pl: Updated to look at built classes.
* scripts/makemake.tcl: New file.
* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Added
-I options.
(gcj_jni_invocation_compile_c_to_binary): Likewise.
From-SVN: r102082
Tom Tromey [Sat, 16 Jul 2005 01:11:24 +0000 (01:11 +0000)]
ChangeLog.gcj, [...]: Added.
* ChangeLog.gcj, Makefile.in, aclocal.m4, config.guess,
config.sub, configure, ltmain.sh, doc/Makefile.in,
doc/api/Makefile.in, examples/Makefile.in, external/Makefile.in,
external/sax/Makefile.in, external/w3c_dom/Makefile.in,
include/Makefile.in, include/config.h.in, include/jni.h,
lib/Makefile.in, native/Makefile.in, native/fdlibm/Makefile.in,
native/jni/Makefile.in, native/jni/classpath/Makefile.in,
native/jni/gtk-peer/Makefile.in, native/jni/java-io/Makefile.in,
native/jni/java-lang/Makefile.in, native/jni/java-net/Makefile.in,
native/jni/java-nio/Makefile.in, native/jni/java-util/Makefile.in,
native/jni/xmlj/Makefile.in, native/target/Makefile.in,
native/target/Linux/Makefile.in,
native/target/generic/Makefile.in, resource/Makefile.in,
scripts/Makefile.in: Added.
* native/fdlibm/.cvsignore, native/jni/xmlj/.cvsignore,
native/jni/java-util/.cvsignore, native/jni/classpath/.cvsignore,
native/jni/java-net/.cvsignore, native/jni/java-io/.cvsignore,
native/jni/.cvsignore, native/jni/java-lang/.cvsignore,
native/jni/gtk-peer/.cvsignore, native/jni/java-nio/.cvsignore,
native/testsuite/.cvsignore, native/.cvsignore,
native/vmi/.cvsignore, native/target/.cvsignore,
native/target/generic/.cvsignore, native/target/Linux/.cvsignore,
include/.cvsignore, doc/api/.cvsignore,
doc/www.gnu.org/faq/.cvsignore,
doc/www.gnu.org/downloads/.cvsignore,
doc/www.gnu.org/docs/.cvsignore, doc/www.gnu.org/.cvsignore,
doc/www.gnu.org/events/.cvsignore,
doc/www.gnu.org/announce/.cvsignore, doc/.cvsignore,
resource/.cvsignore, external/w3c_dom/.cvsignore,
external/sax/.cvsignore, external/.cvsignore,
java/util/.cvsignore, .cvsignore, test/java.net/.cvsignore,
test/java.io/.cvsignore, test/.cvsignore,
test/java.util/.cvsignore, test/gnu.java.lang.reflect/.cvsignore,
test/java.lang.reflect/.cvsignore, examples/.cvsignore,
lib/.cvsignore, gnu/classpath/.cvsignore, gnu/test/.cvsignore,
compat/java.net/.cvsignore, compat/.cvsignore, vm/.cvsignore,
vm/reference/.cvsignore, scripts/.cvsignore: Updated.
From-SVN: r102079
Tom Tromey [Sat, 16 Jul 2005 00:31:27 +0000 (00:31 +0000)]
Initial revision
From-SVN: r102075
Tom Tromey [Sat, 16 Jul 2005 00:30:23 +0000 (00:30 +0000)]
Initial revision
From-SVN: r102074
Mark Mitchell [Sat, 16 Jul 2005 00:25:01 +0000 (00:25 +0000)]
re PR c++/22204 ([repo] internal compiler error: Segmentation fault)
PR c++/22204
* repo.c (repo_emit_p): Robustify.
PR c++/22204
* g++.dg/rtti/repo1.C: New test.
From-SVN: r102073
GCC Administrator [Sat, 16 Jul 2005 00:16:23 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r102071.2
Jan Hubicka [Fri, 15 Jul 2005 23:26:50 +0000 (01:26 +0200)]
profile.c (rest_of_handle_branch_prob): Fix handling of estimation after RTL profiling.
* profile.c (rest_of_handle_branch_prob): Fix handling of estimation
after RTL profiling.
From-SVN: r102069
Andrew Pinski [Fri, 15 Jul 2005 23:14:07 +0000 (23:14 +0000)]
[multiple changes]
2005-07-15 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/22398
* gcc.c-torture/compile/pr22398.c: New test.
2005-07-11 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/22398
* fold-const.c (build_range_check): Convert high/low to etype
if we are only comparing against exp.
From-SVN: r102067
Daniel Berlin [Fri, 15 Jul 2005 20:22:39 +0000 (20:22 +0000)]
re PR c++/22452 (ICE expected tree that contains 'decl with visibility' structure, have 'const_decl' in decl_linkage, at cp/tree.c:2132)
2005-07-14 Daniel Berlin <dberlin@dberlin.org>
Fix PR c++/22452
* tree.c (decl_linkage): Don't check DECL_COMDAT on CONST_DECL.
From-SVN: r102063
Eric Christopher [Fri, 15 Jul 2005 19:21:54 +0000 (19:21 +0000)]
MAINTAINERS: Change affiliation.
2005-07-15 Eric Christopher <echristo@redhat.com>
* MAINTAINERS: Change affiliation.
From-SVN: r102062
Mark Mitchell [Fri, 15 Jul 2005 16:10:05 +0000 (16:10 +0000)]
re PR c++/22132 (Wrong code: upcasting a const class pointer to struct the class derives from (C/old-style cast))
PR c++/22132
* call.c (implicit_conversion): Add c_cast_p parameter.
(standard_conversion): Likewise. Allow conversions between
differently-qualified pointer types when performing a C-style
cast.
(add_function_candidate): Adjust callee.
(build_builtin_candidate): Likewise.
(build_user_type_conversion_1): Likewise.
(conditional_conversion): Likewise.
(can_convert_arg): Likewise.
(can_convert_arg_bad): Likewise.
(perform_implicit_conversion): Likewise.
* cp-tree.h (comp_ptr_ttypes_const): Declare.
* typeck.c (comp_ptr_ttypes_const): Give it external linkage.
Return bool.
PR c++/22132
* g++.dg/expr/cast4.C: New test.
From-SVN: r102059
Scott Gilbertson [Fri, 15 Jul 2005 16:07:18 +0000 (16:07 +0000)]
XCanvasPeer.java (attributes): New field.
2005-07-15 Scott Gilbertson <scottg@mantatest.com>
* gnu/awt/xlib/XCanvasPeer.java (attributes): New field.
(eventMask): New field.
(XCanvasPeer(Component)): Use attributes field.
(setBackground): Implemented.
(setEventMask): Process mask only if changed.
* gnu/awt/xlib/XEventLoop.java (class): Iplement Runnable.
(eventLoopThread): New field.
(XEventLoop(Display,EventQueue)): Start eventLoopThread.
(interrupt): Removed.
(run): New method.
* gnu/awt/xlib/XEventQueue.java (getNextEvent): Process Container
and Component events.
* gnu/awt/xlib/XFramePeer.java (processingConfigureNotify): New
field.
(configureNotify): Set and clear processingConfigureNotify.
(setBounds): Process only if processingConfigureNotify is false.
(toBack): Implemented.
(toFront): Implemented.
* gnu/awt/xlib/XGraphics.java (setColor): Ignore null color.
* gnu/awt/xlib/XGraphicsConfiguration.java (getPixel): Ignore null
color.
* gnu/awt/xlib/XToolkit.java (nativeQueueEmpty): Always return true.
(wakeNativeQueue): Do nothing.
(iterateNativeQueue): Do queue.wait if blocking.
* gnu/gcj/xlib/Font.java (loadFont): New method.
(loadFontImpl): Renamed native method, was loadFont.
* gnu/gcj/xlib/Window.java (toFront): New method.
(toBack): New method.
* gnu/gcj/xlib/natFont.cc (loadFontImpl): Renamed method, was
loadFont.
* gnu/gcj/xlib/natWindow.cc (toBack): New method.
(toFront): New method.
* gnu/gcj/xlib/natXAnyEvent.cc (loadNext): Removed timeout.
From-SVN: r102057
Daniel Berlin [Fri, 15 Jul 2005 15:53:55 +0000 (15:53 +0000)]
re PR tree-optimization/22376 (PTA is slow on a silly unrealistic test case)
2005-07-13 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/22376
* tree-ssa-structalias.c (build_constraint_graph): We really meant
special var here.
(need_to_solve): New function.
(compute_points_to_sets): Use it.
From-SVN: r102056
Jan Hubicka [Fri, 15 Jul 2005 09:46:17 +0000 (11:46 +0200)]
cfg.c (update_bb_profile_for_threading): More diagnostic.
* cfg.c (update_bb_profile_for_threading): More diagnostic.
* tree-ssa-threadupdate.c (redirect_edges): Update profile of dup_block.
From-SVN: r102053
Richard Guenther [Fri, 15 Jul 2005 09:31:39 +0000 (09:31 +0000)]
c-common.c (handle_flatten_attribute): New function.
2005-07-15 Richard Guenther <rguenther@suse.de>
* c-common.c (handle_flatten_attribute): New function.
Add flatten function attribute.
* doc/extend.texi: Document flatten function attribute.
* Makefile.in (ipa-inline.o): Depend on hashtab.h.
* ipa-inline.c (cgraph_find_cycles, cgraph_flatten_node):
New functions.
(cgraph_decide_inlining): Handle functions with flatten
attribute.
* gcc.dg/tree-ssa/flatten-1.c: New testcase.
* gcc.dg/tree-ssa/flatten-2.c: Likewise.
From-SVN: r102051
Ben Elliston [Fri, 15 Jul 2005 01:45:25 +0000 (01:45 +0000)]
* regex.c (TRANSLATE): Cast rhs of ternary expression to char.
From-SVN: r102050
David Edelsohn [Fri, 15 Jul 2005 01:44:38 +0000 (01:44 +0000)]
rs6000.md (UNSPEC_SYNC, [...]): New.
* config/rs6000/rs6000.md (UNSPEC_SYNC, UNSPEC_LWSYNC,
UNSPEC_ISYNC, UNSPEC_SYNC_OP, UNSPEC_ATOMIC, UNSPEC_CMPXCHG,
UNSPEC_XCHG, UNSPEC_AND): New.
(UNSPECV_ATOMIC, UNSPECV_SYNC, UNSPECV_SYNC_OP, UNSPECV_CMPXCHG,
UNSPECV_LWSYNC, UNSPECV_ISYNC): Delete.
* config/rs6000/sync.md (FETCHOP): New code macro.
(fetchop_name, fetchop_pred, fetchopsi_constr, fetchopdi_constr):
New code attrs.
(memory_barrier, sync_internal): Use unspec instead of unspec_volatile.
(sync_compare_and_swap<mode>): Same.
(sync_lock_test_and_set<mode>): Same.
(sync_<fetchop><mode>, sync_nand<mode>): Only use rs6000_emit_sync
for QImode and HImode, and not PPC405.
(sync_old_<fetchop><mode>, sync_old_nand<mode>): Same.
(sync_new_<fetchop><mode>, sync_new_nand<mode>): Same.
(sync_<fetchop>{si,di}_internal): New.
(sync_nand{si,di}_internal): New.
(sync_old_<fetchop>{si,di}_internal): New.
(sync_old_nand{si,di}_internal): New
(sync_new_<fetchop>{si,di}_internal): New.
(sync_new_nand{si,di}_internal): New.
(atomic_and{si,di}): New.
(sync_new_nand{si,di}_internal): New.
(atomic_and{si,di}): New.
(sync_add<mode>_internal): Delete.
(sync_addshort_internal): Use unspec instead of unspec_volatile.
(sync_sub<mode>_internal): Delte.
(sync_subshort_internal): New.
(sync_andsi_internal): Use unspec instead of unspec_volatile.
(sync_anddi_internal): Delete.
(sync_boolsi_internal): Use unspec instead of unspec_volatile.
(sync_booldi_internal): Delete.
(sync_boolc<mode>_internal): Delete.
(sync_boolcshort_internal): Use unspec instead of unspec_volatile.
(sync_boolc<mode>_internal2): Delete.
(sync_boolcc<mode>_internal): Delete.
(isync, lwsync): Use unspec instead of unspec_volatile.
* config/rs6000/rs6000.c (rs6000_emit_sync): Implement MINUS.
Revert UNSPEC_VOLATILE.
(rs6000_split_atomic_op): New.
* config/rs6000/rs6000-protos.h (rs6000_split_atomic_op): Declare.
From-SVN: r102049
GCC Administrator [Fri, 15 Jul 2005 00:16:16 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r102045.2
Paolo Carlini [Fri, 15 Jul 2005 00:05:44 +0000 (00:05 +0000)]
PR libstdc++/21193 (float, double, long double)
2005-07-14 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/21193 (float, double, long double)
* include/tr1/functional (hash<float>, hash<double>):
Reimplement exploiting the Fnv_hash<>::hash helper.
(hash<long double>): Reimplement using frexp (in this
case, due to random padding bits, the former approach
is not generally viable).
From-SVN: r102043
Eric Christopher [Thu, 14 Jul 2005 23:36:31 +0000 (23:36 +0000)]
mips.c (mips_canonicalize_comparison): Cast argument of trunc_int_for_mode to unsigned HOST_WIDE_INT.
2005-07-14 Eric Christopher <echristo@redhat.com>
* config/mips/mips.c (mips_canonicalize_comparison): Cast
argument of trunc_int_for_mode to unsigned HOST_WIDE_INT.
From-SVN: r102041
Eric Christopher [Thu, 14 Jul 2005 23:18:47 +0000 (23:18 +0000)]
t-tpf (SHLIB_MAPFILES): Remove.
2005-07-14 Eric Christopher <echristo@redhat.com>
* config/s390/t-tpf (SHLIB_MAPFILES): Remove.
From-SVN: r102040
Jim Blandy [Thu, 14 Jul 2005 23:17:40 +0000 (23:17 +0000)]
backport: configure.in: Add cases for Renesas m32c.
Merge from src:
* configure.in: Add cases for Renesas m32c.
* configure: Regenerated.
From-SVN: r102039
Steven Bosscher [Thu, 14 Jul 2005 22:54:42 +0000 (22:54 +0000)]
re PR tree-optimization/22230 (value range propagation error)
PR tree-optimization/22230
gcc/
* tree-vrp.c (extract_range_from_binary_expr): Fix logics thinko in
the computation of the four cross productions for "range op range".
testsuite/
* gcc.dg/tree-ssa/pr22230.c: New test.
From-SVN: r102038
Steve Ellcey [Thu, 14 Jul 2005 21:13:18 +0000 (21:13 +0000)]
* trans-types.c (MAX_REAL_KINDS): Increase from 4 to 5.
From-SVN: r102034
Alexandre Oliva [Thu, 14 Jul 2005 21:11:39 +0000 (21:11 +0000)]
re PR target/20126 (Inlined memcmp makes one argument null on entry)
2005-07-14 Alexandre Oliva <aoliva@redhat.com>
Ulrich Weigand <uweigand@de.ibm.com>
PR target/20126
* loop.c (loop_givs_rescan): Do not ICE if unable to reduce an IV
in some insn.
Co-Authored-By: Ulrich Weigand <uweigand@de.ibm.com>
From-SVN: r102033
Ulrich Weigand [Thu, 14 Jul 2005 21:01:58 +0000 (21:01 +0000)]
* config/s390/s390.h (TARGET_TPF_PROFILING): Add default definition.
From-SVN: r102032
Steve Ellcey [Thu, 14 Jul 2005 20:38:42 +0000 (20:38 +0000)]
* config/ia64/ia64.c (ia64_output_dwarf_dtprel): Support ILP32 mode.
From-SVN: r102031
Andrew Haley [Thu, 14 Jul 2005 18:20:10 +0000 (18:20 +0000)]
Connection.java (unquote): New method.
2005-07-13 Andrew Haley <aph@redhat.com>
* gnu/java/net/protocol/file/Connection.java (unquote): New
method.
(connect): Unquote filename.
gnu/java/net/protocol/jar/Connection.java (getInputStream):
Likewise.
(getJarFile): Likewise.
* java/net/URLConnection.java (getContentHandler): Guard cast with
instaceof.
* java/net/URL.java (URL): If the file part of a spec is absolute,
ignore the file part of its context.
From-SVN: r102029
Aaron Luchko [Thu, 14 Jul 2005 17:25:32 +0000 (17:25 +0000)]
VirtualMachineCommandSet.java: Implemented VirtualMachine Command Set.
* gnu/classpath/jdwp/processor/VirtualMachineCommandSet.java:
Implemented VirtualMachine Command Set.
From-SVN: r102026
Tom Tromey [Thu, 14 Jul 2005 17:22:18 +0000 (17:22 +0000)]
Class.java (getProtectionDomain): Merged javadoc from Classpath.
* java/lang/Class.java (getProtectionDomain): Merged javadoc from
Classpath.
From-SVN: r102025
Jakub Jelinek [Thu, 14 Jul 2005 10:12:17 +0000 (12:12 +0200)]
gfortran.h (MAX_ERROR_MESSAGE): Remove.
* gfortran.h (MAX_ERROR_MESSAGE): Remove.
(gfc_error_buf): Add allocated and index fields. Change message
field from array to a pointer.
* error.c (use_warning_buffer, error_ptr, warning_ptr): Remove.
(cur_error_buffer): New variable.
(error_char): Use cur_error_buffer->{message,index} instead of
{warning,error}_{buffer.message,ptr}. Reallocate message buffer
if too small.
(gfc_warning, gfc_notify_std, gfc_error, gfc_error_now): Setup
cur_error_buffer and its index rather than {warning,error}_ptr
and use_warning_buffer.
(gfc_warning_check, gfc_error_check): Don't print anything if
message is NULL.
(gfc_push_error): Allocate saved message with xstrdup.
(gfc_pop_error): Free saved message with gfc_free.
(gfc_free_error): New function.
* primary.c (match_complex_constant): Call gfc_free_error if
gfc_pop_error will not be called.
* match.c (gfc_match_st_function): Likewise.
* gfortran.dg/g77/cpp6.f: New test.
From-SVN: r102015
Richard Guenther [Thu, 14 Jul 2005 07:46:23 +0000 (07:46 +0000)]
re PR middle-end/22347 (Return value register not correctly computed for indirect function call)
2005-07-14 Richard Guenther <rguenther@suse.de>
PR middle-end/22347
* config/i386/i386-protos.h (ix86_function_value): Change
prototype to match new target hook.
* config/i386/i386.c (ix86_value_regno): Change prototype
to take extra type argument.
(TARGET_FUNCTION_VALUE): Define.
(ix86_function_ok_for_sibcall): Pass extra argument to
ix86_value_regno, check return slot rtx for exact match.
(ix86_function_value): Take extra parameter. Dispatch to
ix86_value_regno with fndecl/fntype as provided.
(ix86_value_regno): Handle extra type argument.
* config/i386/i386.h (FUNCTION_VALUE): No longer define.
* testsuite/gcc.target/i386/sseregparm-3.c: New testcase.
* testsuite/gcc.target/i386/sseregparm-4.c: New testcase.
* testsuite/gcc.target/i386/sseregparm-5.c: New testcase.
* testsuite/gcc.target/i386/sseregparm-6.c: New testcase.
* testsuite/gcc.target/i386/sseregparm-7.c: New testcase.
From-SVN: r102014
Richard Guenther [Thu, 14 Jul 2005 07:39:56 +0000 (07:39 +0000)]
Makefile.in (explow.o, [...]): Depend on target.h.
2005-07-14 Richard Guenther <rguenther@suse.de>
* Makefile.in (explow.o, reg-stack.o): Depend on target.h.
* calls.c (expand_call): Pass fntype to hard_function_value.
(emit_library_call_value_1): Likewise.
* explow.c: Include target.h.
(hard_function_value): Take extra argument, the fntype.
Use new target hook for function_value.
* expr.h (hard_function_value): Change prototype.
* function.c (aggregate_value_p): Pass 0 as fntype to
hard_function_value.
(assign_parms): Use new target hook for function_value.
Pass 0 as fntype to hard_function_value.
(expand_function_end): Likewise.
* reg-stack.c: Include target.h.
(stack_result): Use new target hook for function_value.
* target-def.h: New target hook function_value.
* target.h: Likewise.
* targhooks.c (default_function_value): New function.
* targhooks.h (default_function_value): Declare.
From-SVN: r102013
Jakub Jelinek [Thu, 14 Jul 2005 07:15:00 +0000 (09:15 +0200)]
re PR fortran/22417 (gfortran preprocessing regression: nonsense warning about file left but not entered)
PR fortran/22417
* scanner.c (preprocessor_line): Don't treat flag 3 as the start of a new
file. Fix file left but not entered warning.
* gfortran.dg/g77/cpp5.F: New test.
* gfortran.dg/g77/cpp5.h: New file.
* gfortran.dg/g77/cpp5inc.h: New file.
From-SVN: r102010
Paul Thomas [Thu, 14 Jul 2005 06:43:25 +0000 (06:43 +0000)]
tl_editting.f90: gcc-cvs signalled missing LF at EOF.
2005-07-14 Paul Thomas <pault@gcc.gnu.org>
* gfortran.dg/tl_editting.f90: gcc-cvs signalled missing LF at EOF.
From-SVN: r102009
Paul Thomas [Thu, 14 Jul 2005 06:21:59 +0000 (06:21 +0000)]
[multiple changes]
2005-07-12 Paul Thomas <pault@gcc.gnu.org>
PR libfortran/16435
* transfer.c (formatted_transfer): Correct the problems
with X- and T-editting that caused TLs followed by TRs
to overwrite data, which caused NIST FM908.FOR to fail
on many tests.
(data_transfer_init): Zero X- and T-editting counters at
the start of formatted IO.
* write.c (write_x): Write specified number of skips with
specified number of spaces at the end.
2005-07-12 Paul Thomas <pault@gcc.gnu.org>
PR libfortran/16435
* gfortran.dg/tl_editting.f90: New.
* gfortran.dg/g77/f77-edit-x-out.f: Remove XFAIL.
From-SVN: r102008
Ben Elliston [Thu, 14 Jul 2005 03:39:08 +0000 (03:39 +0000)]
* reg_test_template: Typo fix.
From-SVN: r102007