Richard Sandiford [Sun, 29 Aug 2004 10:30:33 +0000 (10:30 +0000)]
mips.c (print_operand): Remove '%Y' and '%y'.
* config/mips/mips.c (print_operand): Remove '%Y' and '%y'.
(mips_expand_4s_compare_builtin): Redefine CCV4 to be 0 if all
registers are false and -1 if all registers are true.
(mips_expand_ps_compare_builtin): Likewise CCV2. Use subregs for
MIPS_CMP_UPPER and MIPS_CMP_LOWER.
* config/mips/mips.md (mips_cond_move_tf_ps): Use %Q rather than %y.
(bc1any4t, bc1any4f): Adjust for new CCV4 interpretation.
(bc1any2t, bc1any2f): Likewise CCV2.
(bc1upper2t, bc1lower2t, bc1upper2f, bc1lower2f): Delete.
From-SVN: r86715
Richard Sandiford [Sun, 29 Aug 2004 10:01:28 +0000 (10:01 +0000)]
mips.md (UNSPEC_MOVE_TF_PS): New.
* config/mips/mips.md (UNSPEC_MOVE_TF_PS): New.
* config/mips/mips-ps-3d.md (mips_cond_move_tf_ps): Express as an
UNSPEC rather than an IF_THEN_ELSE.
* config/mips/mips.c (mips_expand_ps_cond_move_builtin): Emit
mips_cond_move_tf_ps by name.
From-SVN: r86714
Chao-ying Fu [Sun, 29 Aug 2004 09:19:34 +0000 (09:19 +0000)]
mips-modes.def (V2SF, CCV2, CCV4): New modes.
2004-08-29 Chao-ying Fu <fu@mips.com>
James E Wilson <wilson@specifixinc.com>
* config/mips/mips-modes.def (V2SF, CCV2, CCV4): New modes. Give CCV2
8 byte size and alignment. Give CCV4 16 byte size and alignment.
* config/mips/mips-ps-3d.md: New file.
* config/mips/mips.c (TARGET_VECTOR_MODE_SUPPORTED_P,
TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Define.
(mips_const_insns): Handle CONST_VECTOR the same as CONST_DOUBLE.
(mips_output_move): Emit "mov.ps" for V2SFmode.
(mips_arg_info): Add checks for VECTOR_FLOAT_TYPE_P and
MODE_VECTOR_FLOAT.
(override_options): Check if TARGET_MIPS3D and there was an explicit
!TARGET_PAIRED_SINGLE_FLOAT. Set MASK_PAIRED_SINGLE, if TARGET_MIPS3D.
Check if TARGET_FLOAT64 and TARGET_HARD_FLOAT are both true, when
TARGET_PAIRED_SINGLE_FLOAT is true. Check if the ISA supports
TARGET_PAIRED_SINGLE_FLOAT. Allow MODE_VECTOR_FLOAT in fp registers,
and allow CCV2 and CCV4 to occupy two and four CC registers.
(print_fcc_operand): New function.
(print_operand): Add %Y, %y, %V, %v, %Q for CCV2, CCV4, CC. Modify
%Z to call print_fcc_operand.
(mips_function_value): Handle MODE_VECTOR_FLOAT.
(mips_class_max_nregs): Check for ST_REGS, and handle CCmodes.
(mips_vector_mode_supported_p): New function.
(mips_hard_regno_nregs): Check for ST_REG_P, and handle CCmodes.
(builtin_description): New struct.
(mips_bdesc): New array of struct builtin_description.
(mips_expand_builtin, mips_init_builtins,
mips_expand_ps_cond_move_builtin, mips_expand_4s_compare_builtin,
mips_expand_compare_builtin, mips_expand_ps_compare_builtin): New
functions.
* config/mips/mips.h (MASK_PAIRED_SINGLE, MASK_MIPS3D): New defines.
(TARGET_PAIRED_SINGLE_FLOAT, TARGET_MIPS3D): New defines.
(TARGET_CPU_CPP_BUILTINS): Add __mips_paired_single_float.
(TARGET_SWITCHES): Added "-mpaired-single", "-mno-paired-single",
"-mips3d", and "-mno-mips3d".
(ASM_SPEC): Map -mips3d to -mips3d in gas.
(EXTRA_CONSTRAINT_Y): New macro.
(EXTRA_CONSTRAINT_STR): Renamed from EXTRA_CONSTRAINT. Add new
multi-letter constraint 'Y'.
(CONSTRAINT_LEN): New macro.
(enum mips_builtins): New for MIPS builtin functions.
(enum mips_function_type): New for the types of MIPS builtin functions.
(enum mips_cmp_choice): New for the MIPS comparison builtin functions.
* config/mips/mips.md: New constants for paired single and MIPS-3D
instructions. Include the new mips-ps-3d.md file.
(addv2sf3, subv2sf3, mulv2sf3, absv2sf2, negv2sf2, movv2sf,
movv2sf_hardfloat_64bit): New named patterns.
(madd.ps, msub.ps, nmaddv2sf, nmaddv2sf_fastmath, nmsubv2sf,
nmsubv2sf_fastmath, ldxc1_v2sf_si, ldxc1_v2sf_di, sdxc1_v2sf_si,
sdxc1_v2sf_di): New unnamed patterns.
* config/mips/predicates.md (const_0_operand, const_1_operand): Add
const_vector support.
(const_0_or_1_operand): New predicate.
* doc/invoke.texi (MIPS Options): Add -mpaired-single and -mips3d.
Co-Authored-By: James E Wilson <wilson@specifixinc.com>
From-SVN: r86713
Paolo Carlini [Sun, 29 Aug 2004 09:04:33 +0000 (09:04 +0000)]
locale_facets.tcc (time_get<>::_M_extract_via_format, case 'S'): Allow for at least one leap-second (as per C99...
2004-08-29 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (time_get<>::_M_extract_via_format,
case 'S'): Allow for at least one leap-second (as per C99, 7.23.1
and 7.23.3.5), two if !_GLIBCXX_USE_C99.
* testsuite/22_locale/time_get/get_time/char/4.cc: New.
* testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
From-SVN: r86712
Diego Novillo [Sun, 29 Aug 2004 06:16:02 +0000 (06:16 +0000)]
Makefile.in (OBJS-common): Add tree-ssa-propagate.o
* Makefile.in (OBJS-common): Add tree-ssa-propagate.o
(tree-ssa-propagate.o): New rule.
(GTFILES): Add tree-ssa-propagate.c.
* tree-flow.h (struct stmt_ann_d): Remove field
in_ccp_worklist.
* tree-ssa-propagate.c: New file.
* tree-ssa-propagate.h: New file.
* tree-ssa-ccp.c: Re-write to use the routines from
tree-ssa-propagate.c.
From-SVN: r86711
Andrew Pinski [Sun, 29 Aug 2004 02:39:04 +0000 (02:39 +0000)]
tree-ssa-loop.c: Remove extra include of basic-block.h.
2004-08-28 Andrew Pinski <apinski@apple.com>
* tree-ssa-loop.c: Remove extra include of basic-block.h.
From-SVN: r86708
GCC Administrator [Sun, 29 Aug 2004 00:16:14 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r86706
Steven G. Kargl [Sat, 28 Aug 2004 23:43:41 +0000 (23:43 +0000)]
gfortran.h (enum gfc_generic_isym_id): Add GFC_ISYM_GET?ID.
2004-08-29 Steven G. Kargl <kargls@comcast.net>
Paul Brook <paul@codesourcery.com>
* gfortran.h (enum gfc_generic_isym_id): Add GFC_ISYM_GET?ID.
(gfc_check_f, gfc_simplify_f): Add f0.
* intrinsic.c (do_check): Call f0. Flatten.
(add_sym_0): Fix prototype. Set f0.
(add_functions): Add getgid, getgid and getuid.
(resolve_intrinsic): Remove obsolete comment.
(do_simplify): Call f0.
* intrinsic.h (gfc_resolve_getgid, gfc_resolve_getpid,
gfc_resolve_getuid): Add prototypes.
* iresolve.c (gfc_resolve_getgid, gfc_resolve_getpid,
gfc_resolve_getuid): New functions.
* trans-intrinsic.c (gfc_conv_intrinsic_function): Handle
GFC_ISYM_GET?ID.
libgfortran/
* Makefile.am: Add intrinsics/getXid.c.
* configure.ac: Add tests for get{g,p,u}id.
* config.h.in: Regenerate.
* Makefile.in: Regenerate.
* configure: Regenerate.
Co-Authored-By: Paul Brook <paul@codesourcery.com>
From-SVN: r86703
Ziemowit Laski [Sat, 28 Aug 2004 20:58:56 +0000 (20:58 +0000)]
c-common.h: Update comments about ObjC/ObjC++ entry points.
[gcc/ChangeLog]
2004-08-28 Ziemowit Laski <zlaski@apple.com>
* c-common.h: Update comments about ObjC/ObjC++ entry points.
(objc_is_reserved_word): New prototype.
(get_current_scope, objc_mark_locals_volatile): Move prototypes to
separate section; these are call-backs.
* c-lex.c (c_lex_with_flags): Call objc_is_reserved_word() to detect
ObjC/ObjC++ "@" keywords.
* c-tree.h (get_current_scope, objc_mark_locals_volatile): Remove
prototypes; they already live in c-common.h.
* stub-objc.c: Update copyright notice.
(objc_is_reserved_word): New stub.
[gcc/cp/ChangeLog]
2004-08-28 Ziemowit Laski <zlaski@apple.com>
* Make-lang.in (CXX_OBJS): Split up into CXX_OBJS and
CXX_AND_OBJCXX_OBJS.
(CXX_C_OBJS): Include in CXX_AND_OBJCXX_OBJS instead of listing
separately on the link line.
[gcc/objc/ChangeLog]
2004-08-28 Ziemowit Laski <zlaski@apple.com>
* objc-act.c (objc_is_reserved_word): New function.
From-SVN: r86702
Paul Brook [Sat, 28 Aug 2004 19:48:02 +0000 (19:48 +0000)]
re PR libfortran/17195 (Infinite loop in output_float in libgfortran/io/write.c)
PR libfortran/17195
* libgfortran.h (rtoa): Remove prototype.
* runtime/error.c (rtoa): Remove.
* io/write.c (calculate_G_format): Don't add blanks if E format is
used. Add correct number of blanks when exponent width is specified.
(output_float): Rewrite.
testsuite/
* gfortran.dg/edit_real_1.f90: New test.
From-SVN: r86701
Andreas Schwab [Sat, 28 Aug 2004 18:04:17 +0000 (18:04 +0000)]
configure.ac: Set PACKAGE correctly.
* configure.ac: Set PACKAGE correctly.
* configure: Regenerated.
Co-Authored-By: Andreas Jaeger <aj@suse.de>
From-SVN: r86698
Jason Merrill [Sat, 28 Aug 2004 16:51:34 +0000 (12:51 -0400)]
fix thinko
From-SVN: r86694
Nathan Sidwell [Sat, 28 Aug 2004 14:23:07 +0000 (14:23 +0000)]
system.h (gcc_assert): Remove __builtin_expect.
* system.h (gcc_assert): Remove __builtin_expect. Evaluate EXPR
even when not checking.
From-SVN: r86692
Tobias Schlüter [Sat, 28 Aug 2004 14:07:03 +0000 (16:07 +0200)]
error.c (gfc_error_init_1): Remove blank line in front of function body.
* error.c (gfc_error_init_1): Remove blank line in front of
function body. Add missing blank.
(gfc_buffer_error, error_char, error_string): Remove blank line in
front of function body.
(show_locus): Add comma in comment.
(gfc_clear_warning, gfc_warning_check, gfc_clear_error,
gfc_push_error, gfc_pop_error): Remove blank line in front of
function body.
(gfc_get_errors): Typo fix in comment in front of function. Remove
blank line in front of function body.
From-SVN: r86691
Nathanael Nerode [Sat, 28 Aug 2004 11:18:12 +0000 (11:18 +0000)]
configure.ac: Switch from _GCC_TOPLEV_NONCANONICAL_TARGET to ACX_NONCANONICAL_TARGET.
* configure.ac: Switch from _GCC_TOPLEV_NONCANONICAL_TARGET to
ACX_NONCANONICAL_TARGET.
* configure: Regenerate.
From-SVN: r86690
Jason Merrill [Sat, 28 Aug 2004 06:35:36 +0000 (02:35 -0400)]
* decl.c (expand_static_init): Avoid bogus warnings.
From-SVN: r86689
Jason Merrill [Sat, 28 Aug 2004 02:35:15 +0000 (22:35 -0400)]
re PR c++/16851 (ICE when throwing a comma expression)
PR c++/16851
* tree.c (stabilize_init): See through a COMPOUND_EXPR.
From-SVN: r86688
Jason Merrill [Sat, 28 Aug 2004 02:33:54 +0000 (22:33 -0400)]
re PR c++/13684 (local static object variable constructed once but ctors and dtors called multiple times on same memory when called in multiple threads)
PR c++/13684
* cp/decl.c (expand_static_init): Use thread-safety API.
(register_dtor_fn): Return the call, don't expand it.
* cp/tree.c (add_stmt_to_compound): New fn.
(stabilize_call): Use it.
* gimplify.c (gimplify_cleanup_point_expr): Handle CLEANUP_EH_ONLY.
(gimple_push_cleanup): Add eh_only parm.
(gimplify_target_expr): Pass it.
* c.opt (-fno-threadsafe-statics): New option.
* c-opts.c (c_common_handle_option): Handle it.
* c-common.h (flag_threadsafe_statics): Declare it.
* c-common.c (flag_threadsafe_statics): Record it.
* doc/invoke.texi: Document it.
* tsystem.h (_GNU_SOURCE): Define.
* gthr-posix.h (__gthread_recursive_mutex_t): New typedef.
(__GTHREAD_RECURSIVE_MUTEX_INIT): New macro.
(__GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION): New macro.
(__gthread_recursive_mutex_init_function): New fn.
(__gthread_recursive_mutex_lock): New fn.
(__gthread_recursive_mutex_trylock): New fn.
(__gthread_recursive_mutex_unlock): New fn.
* gthr-solaris.h, gthr-single.h, gthr-dce.h: Likewise.
* gthr-win32.h, gthr-vxworks.h: Likewise.
* gthr.h: Document.
* libsupc++/guard.cc (static_mutex): Internal class implementing a
recursive mutex which controls initialization of local statics.
(__gnu_cxx::recursive_init): New exception class.
(__cxa_guard_acquire): Deal with locking and recursion detection.
(acquire_1, __cxa_guard_abort, __cxa_guard_release): Likewise.
From-SVN: r86687
Hans Boehm [Sat, 28 Aug 2004 00:45:56 +0000 (00:45 +0000)]
configure.ac: Handle --enable-gc-debug.
* configure.ac: Handle --enable-gc-debug.
* configure: Regenerate.
* include/config.h.in (LIBGCJ_GC_DEBUG): Add.
* boehm.cc: Include gc_mark.h, javaxfc.h, but no GC private files.
Rearrange include file order.
(GC_DEBUG): Set if LIBGCJ_GC_DEBUG is set.
(GC_finalize_all, GC_debug_generic_malloc): Don't declare.
(disable_gc_mutex): Delete along with all references.
(_Jv_MarkObj, _Jv_MarkArray): Use public types,
adjust for debug header size.
(_Jv_AllocObj, _Jv_allocPtrFreeObj): Define out of line for
debug case.
(_Jv_AllocArray): Declare min_heap_addr only if needed.
(gcj_describe_type_fn): New.
(_Jv_InitGC): Use GC_new_free_list, GC_new_proc, and GC_new_kind.
Register gcj_describe_type_fn.
* include/boehm-gc.h:
(_Jv_AllocObj, _Jv_allocPtrFreeObj):
Don't define, but declare, for debug case.
* java/lang/natObject.cc:
(GC_DEBUG): Define if LIBGCJ_GC_DEBUG is set.
From-SVN: r86686
Hans Boehm [Sat, 28 Aug 2004 00:41:41 +0000 (00:41 +0000)]
backgraph.c, gc_priv.h (GC_traverse_back_graph, [...]): split GC_traverse_back_graph.
* backgraph.c, gc_priv.h (GC_traverse_back_graph,
GC_print_back_graph_stats): split GC_traverse_back_graph.
* backgraph.c: Dynamically grow in_progress_space.
* finalize.c (GC_notify_or_invoke_finalizers): also call
GC_print_back_graph_stats.
* alloc.c, finalize.c, gc_priv.h (GC_generate_random_backtrace_no_gc,
GC_print_back_height): Move delarations to header file.
* configure.ac: rename --enable-full-debug to --enable-gc-debug.
* configure: Regenerate.
From-SVN: r86685
GCC Administrator [Sat, 28 Aug 2004 00:16:17 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r86682
Richard Henderson [Fri, 27 Aug 2004 21:48:12 +0000 (14:48 -0700)]
cp-tree.def (OFFSETOF_EXPR): New.
* cp-tree.def (OFFSETOF_EXPR): New.
* parser.c (cp_parser_builtin_offsetof): Either built an
OFFSETOF_EXPR, or call fold_offsetof immediately.
* pt.c (tsubst_expr): Handle OFFSETOF_EXPR.
From-SVN: r86679
Matthias Klose [Fri, 27 Aug 2004 20:01:34 +0000 (20:01 +0000)]
configure.host: For mips*-*-linux* update cpu_include_dir after atomicity_dir is set.
2004-08-27 Matthias Klose <doko@debian.org>
* configure.host: For mips*-*-linux* update cpu_include_dir
after atomicity_dir is set.
From-SVN: r86678
Matthias Klose [Fri, 27 Aug 2004 19:58:15 +0000 (19:58 +0000)]
baseline_symbols.txt: New.
2004-08-27 Matthias Klose <doko@debian.org>
* config/abi/arm-linux-gnu/baseline_symbols.txt: New.
* config/abi/mips-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
* configure.host: Set abi_baseline_pair for arm*-*-linux* and
mips*-*-linux*.
From-SVN: r86677
David Edelsohn [Fri, 27 Aug 2004 18:30:32 +0000 (14:30 -0400)]
outer_code, not Outer code.
From-SVN: r86671
David Edelsohn [Fri, 27 Aug 2004 18:29:52 +0000 (18:29 +0000)]
rs6000.c (rs6000_override_options): Increase maximum skip to 15.
* config/rs6000/rs6000.c (rs6000_override_options): Increase
maximum skip to 15. Set function alignment, jump alignment, and
loop alignment to 16 for processors that form dispatch groups.
(rs6000_rtx_costs): Outer code is used.
From-SVN: r86670
Nathan Sidwell [Fri, 27 Aug 2004 17:59:33 +0000 (17:59 +0000)]
call.c (validate_conversion_obstack): Replace my_friendly_assert with gcc_assert or gcc_unreachable.
* call.c (validate_conversion_obstack): Replace
my_friendly_assert with gcc_assert or gcc_unreachable.
(direct_reference_binding, merge_conversion_sequences,
build_user_type_conversion_1, perform_overload_resolution,
build_op_delete_call, enforce_access, call_builtin_trap,
build_over_call, build_special_member_call, build_new_method_call,
initialize_reference): Likewise.
* class.c (build_base_path, build_primary_vtable, alter_access,
check_bases, update_vtable_entry_for_fn, layout_empty_base,
clone_function_decl, adjust_clone_args,
type_requires_array_cookie, include_empty_classes,
finish_struct_1, resolve_address_of_overloaded_function,
instantiate_type, get_vtbl_decl_for_binfo, build_vtt_inits,
dfs_build_secondary_vptr_vtt_inits, build_ctor_vtbl_group,
accumulate_vtbl_inits, build_vtbl_initializer,
build_vbase_offset_vtbl_entries, build_rtti_vtbl_entries): Likewise.
* cvt.c (build_up_reference, convert_to_reference): Likewise.
* decl.c (poplevel, duplicate_decls, make_typename_type,
cxx_init_decl_processing, reshape_init, check_initializer,
make_rtl_for_nonlocal_decl, initialize_local_var, cp_finish_decl,
expand_static_init, grokfndecl, grokvardecl, build_ptrmem_type,
grokdeclarator, copy_fn_p, grok_op_properties, xref_tag,
xref_basetypes, start_preparsed_function, save_function_data,
finish_function, finish_method, maybe_register_incomplete_var,
complete_vars): Likewise.
* decl2.c (grok_array_decl, check_member_template,
check_classfn, finish_static_data_member_decl, coerce_new_type,
coerce_delete_type, import_export_class, decl_needed_p,
determine_visibility, import_export_decl, build_cleanup,
start_static_initialization_or_destructi, do_static_destruction,
prune_vars_needing_no_initialization,
build_offset_ref_call_from_tree): Likewise.
* error.c (dump_decl, dump_expr): Likewise.
* init.c (finish_init_stmts, build_zero_init,
expand_virtual_init, expand_default_init, expand_aggr_init_1,
build_offset_ref, build_new_1, build_delete, build_vbase_delete):
Likewise.
* mangle.c (write_method_parms, write_template_args,
write_expression, write_template_arg): Likewise.
* method.c (make_thunk, finish_thunk, use_thunk): Likewise.
* name-lookup.c (pop_binding, begin_scope, leave_scope,
resume_scope, push_using_decl, validate_nonmember_using_decl,
is_ancestor, poplevel_class, set_inherited_value_binding_p,
push_class_level_binding, do_class_using_decl, push_namespace,
pop_namespace, add_using_namespace, ambiguous_decl,
lookup_namespace_name, lookup_type_current_level,
maybe_process_template_type_declaration): Likewise.
* parser.c (cp_lexer_peek_nth_token,
cp_parser_parse_and_diagnose_invalid_typ,
cp_parser_translation_unit, cp_parser_template_id,
cp_parser_lookup_name, cp_parser_late_parsing_for_member): Likewise.
* pt.c (push_access_scope, finish_member_template_decl,
push_inline_template_parms_recursive, add_outermost_template_args,
get_innermost_template_args, begin_explicit_instantiation,
end_explicit_instantiation, retrieve_specialization,
is_specialization_of, is_specialization_of_friend,
register_specialization, check_explicit_specialization,
comp_template_parms, process_template_parm,
process_partial_specialization, convert_nontype_argument,
coerce_template_template_parms, coerce_template_parms,
mangle_class_name_for_template, lookup_template_function,
lookup_template_class, instantiate_class_template, tsubst_decl,
tsubst_function_type, tsubst, tsubst_qualified_id, tsubst_copy,
instantiate_template, fn_type_unification, type_unification_real,
get_template_base, regenerate_decl_from_template,
template_for_substitution, instantiate_decl,
get_mostly_instantiated_function_type, dependent_scope_ref_p,
value_dependent_expression_p, resolve_typename_type): Likewise.
* repo.c (repo_emit_p): Likewise.
* rtti.c (build_headof, get_tinfo_decl, get_pseudo_ti_init,
create_tinfo_types, emit_tinfo_decl): Likewise.
* search.c (lookup_base_r, lookup_base, lookup_field_1,
dfs_access_in_type, build_baselink, lookup_member,
adjust_result_of_qualified_name_lookup, copied_binfo): Likewise.
* semantics.c (perform_or_defer_access_check,
finish_non_static_data_member, finish_stmt_expr_expr,
finish_stmt_expr, finish_call_expr, finish_pseudo_destructor_expr,
finish_template_template_parm, finish_member_declaration,
emit_associated_thunks): Likewise.
* tree.c (build_target_expr_with_type, force_target_expr,
copy_binfo, get_first_fn, cp_tree_equal): Likewise.
* typeck.c (type_after_usual_arithmetic_conversions, comptypes,
cxx_sizeof_or_alignof_type, perform_integral_promotions,
build_class_member_access_expr, finish_class_member_access_expr,
build_ptrmemfunc_access_expr, build_unary_op,
unary_complex_lvalue, cxx_mark_addressable, build_modify_expr,
build_ptrmemfunc, expand_ptrmemfunc_cst, check_return_expr
* typeck2.c (complete_type_check_abstract,
abstract_virtuals_error, process_init_constructor,
add_exception_specifier): Likewise.
From-SVN: r86669
Nathan Sidwell [Fri, 27 Aug 2004 16:48:31 +0000 (16:48 +0000)]
stor-layout.c (sizetype_set): Remove.
* stor-layout.c (sizetype_set): Remove.
(set_sizetype): Don't test or set it.
From-SVN: r86668
Nathan Sidwell [Fri, 27 Aug 2004 16:45:20 +0000 (16:45 +0000)]
tree.h (size_int_type): Remove.
* tree.h (size_int_type): Remove.
* fold-const.c: Do not #include gt-fold-const.h.
(size_htab_hash, size_htab_eq): Remove.
(size_int_kind): Use build_int_cst.
(new_const, size_htab): Remove.
(size_int_type): Remove.
(round_up): Use build_int_cst.
(round_down): Likewise. Remove spurious constant build.
* ada/utils2.c (build_allocator): Use ssize_int.
* cp/class.c (build_vtbl_initializer): Use ssize_int.
* cp/decl.c (complete_array_type): Likewise.
* cp/method.c (finish_thunk): Likewise.
* cp/search.c (get_dynamic_base_type): Likewise.
From-SVN: r86667
Nathan Sidwell [Fri, 27 Aug 2004 16:20:45 +0000 (16:20 +0000)]
configure.ac: Add ENABLE_ASSERT_CHECKING control.
* configure.ac: Add ENABLE_ASSERT_CHECKING control.
Add is_release variable, use it for --enable-werror and
--enable-checking defaults.
* system.h (gcc_assert, gcc_unreachable): New.
* doc/install.texi (--enable-checking): Update.
* configure, config.in: Rebuilt.
From-SVN: r86666
Tobias Schlüter [Fri, 27 Aug 2004 14:49:35 +0000 (16:49 +0200)]
gfortran.h (gfc_default_*_kind): Remove prototypes, add extern variable declaration of same name.
* gfortran.h (gfc_default_*_kind): Remove prototypes, add extern
variable declaration of same name.
* arith.c, check.c, decl.c, dump_parse_tree.c, expr.c,
intrinsic.c, io.c, iresolve.c, match.c, options.c, primary.c,
resolve.c, simplify.c, symbol.c, trans-const.c, trans-io.c:
Replace all calls to gfc_default_*_kind with variable accesses.
* trans-types.c: Same as above.
(gfc_default_*_kind_1): Rename to gfc_default_*_kind, remove
static qualifier. Replace all occurences.
(gfc_default_*_kind): Remove functions.
From-SVN: r86662
Paolo Carlini [Fri, 27 Aug 2004 14:45:47 +0000 (14:45 +0000)]
1.cc: New.
2004-08-27 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: New.
* testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise.
* testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise.
* testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
* testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
* testsuite/27_io/manipulators/adjustfield/char/1.cc: Minor
formatting fixes.
* testsuite/27_io/manipulators/adjustfield/char/2.cc: Likewise.
* testsuite/27_io/manipulators/basefield/char/1.cc: Likewise.
* testsuite/27_io/manipulators/standard/char/1.cc: Likewise.
* testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
From-SVN: r86661
Paul Brook [Fri, 27 Aug 2004 14:37:13 +0000 (14:37 +0000)]
Comment typo.
From-SVN: r86660
Paul Brook [Fri, 27 Aug 2004 13:44:52 +0000 (13:44 +0000)]
rewind.c (st_rewind): Reset unit to read mode.
* io/rewind.c (st_rewind): Reset unit to read mode.
testsuite/
* gfortran.dg/rewind_1.f90: New test.
From-SVN: r86659
Richard Sandiford [Fri, 27 Aug 2004 10:12:51 +0000 (10:12 +0000)]
rtl.h (read_rtx): Change prototype.
* rtl.h (read_rtx): Change prototype.
* read-rtl.c (read_rtx): Provide the caller with both an rtx and a
line number. Return true on success.
* gensupport.c (process_include, init_md_reader_args_cb): Adjust
callers accordingly.
From-SVN: r86657
Nathan Sidwell [Fri, 27 Aug 2004 10:02:30 +0000 (10:02 +0000)]
* utils.c (gnat_init_decl_processing): Ada has a signed sizetype.
From-SVN: r86656
Andreas Schwab [Fri, 27 Aug 2004 09:27:49 +0000 (09:27 +0000)]
* Make-lang.in (EXTRA_GNATBIND_OBJS): Add errors.o.
From-SVN: r86655
Bud Davis [Fri, 27 Aug 2004 07:59:30 +0000 (07:59 +0000)]
re PR libfortran/16597 (gfortran: bug in unformatted I/O on scratch files)
2004-08-27 Bud Davis <bdavis9659@comcast.net>
PR fortran/16597
* io/io.h: created typedef for unit_mode.
* io/io.h (gfc_unit): added mode to unit structure.
* io/transfer.c (data_transfer_init): flush if a write then
read is done on a unit (direct access files).
* io/rewind.c (st_rewind): Used unit mode instead of global.
* gfortran.dg/pr16597.f90: New test.
From-SVN: r86654
Richard Henderson [Fri, 27 Aug 2004 00:55:38 +0000 (17:55 -0700)]
Update comment for staticp.
From-SVN: r86652
Richard Henderson [Fri, 27 Aug 2004 00:37:48 +0000 (17:37 -0700)]
c-typeck.c (build_offsetof): Remove.
* c-typeck.c (build_offsetof): Remove.
* c-tree.h (build_offsetof): Remove.
* c-common.c (fold_offsetof_1, fold_offsetof): New.
* c-common.h (fold_offsetof): Declare.
* c-parse.in (offsetof_base): New.
(offsetof_member_designator): Use it. Build references, not just
a tree list.
(primary): Use fold_offsetof, not build_offsetof.
From-SVN: r86651
Richard Henderson [Fri, 27 Aug 2004 00:27:24 +0000 (17:27 -0700)]
tree.c (staticp): Return the static object.
* tree.c (staticp): Return the static object.
* tree.h (staticp): Update decl.
* langhooks.h (struct lang_hooks): Change staticp return type to tree.
* langhooks.c (lhd_staticp): Return NULL_TREE.
* langhooks-def.h (lhd_staticp): Update decl.
* c-common.c (c_staticp): Return the static object.
* c-common.h (c_staticp): Update decl.
From-SVN: r86650
GCC Administrator [Fri, 27 Aug 2004 00:16:14 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r86647
Richard Henderson [Fri, 27 Aug 2004 00:08:35 +0000 (17:08 -0700)]
alpha.h (HARD_REGNO_MODE_OK): Allow complex float modes.
* config/alpha/alpha.h (HARD_REGNO_MODE_OK): Allow complex float
modes.
From-SVN: r86644
Phil Edwards [Thu, 26 Aug 2004 23:57:46 +0000 (23:57 +0000)]
configure.in: Give a better error message if GMP/MPFR are missing and a language needing them...
2004-08-26 Phil Edwards <phil@codesourcery.com>
* configure.in: Give a better error message if GMP/MPFR are missing
and a language needing them has been requested.
* configure: Regenerated.
From-SVN: r86641
Phil Edwards [Thu, 26 Aug 2004 23:45:16 +0000 (23:45 +0000)]
configure.in: Print a list of available language front-ends if a requested one is missing.
2004-08-25 Phil Edwards <phil@codesourcery.com>
* configure.in: Print a list of available language front-ends if
a requested one is missing. Tidy stray tab characters.
* configure: Regenerated.
From-SVN: r86640
Richard Henderson [Thu, 26 Aug 2004 22:19:23 +0000 (15:19 -0700)]
arith.c: Include system.h, not real system headers.
* arith.c: Include system.h, not real system headers.
(MPZ_NULL, MPF_NULL, DEF_GFC_INTEGER_KIND, DEF_GFC_LOGICAL_KIND,
DEF_GFC_REAL_KIND, GFC_SP_KIND, GFC_SP_PREC, GFC_SP_EMIN, GFC_SP_EMAX,
GFC_DP_KIND, GFC_DP_PREC, GFC_DP_EMIN, GFC_DP_EMAX, GFC_QP_KIND,
GFC_QP_PREC, GFC_QP_EMIN, GFC_QP_EMAX): Remove.
(gfc_integer_kinds, gfc_logical_kinds, gfc_real_kinds,
gfc_index_integer_kind, gfc_default_integer_kind,
gfc_default_real_kind,gfc_default_double_kind,
gfc_default_character_kind, gfc_default_logical_kind,
gfc_default_complex_kind, validate_integer, validate_real,
validate_logical, validate_character,
gfc_validate_kind): Move to trans-types.c.
(gfc_set_model_kind): Use gfc_validate_kind.
(gfc_set_model): Just copy the current precision to default.
(gfc_arith_init_1): Use mpfr precision 128 for integer setup.
* f95-lang.c (gfc_init_decl_processing): Invoke gfc_init_kinds.
* gfortran.h: Update file commentary.
* trans-types.c (MAX_INT_KINDS, MAX_REAL_KINDS): New.
(gfc_default_integer_kind_1, gfc_default_real_kind_1,
gfc_default_double_kind_1, gfc_default_character_kind_1,
gfc_default_logical_kind_1, gfc_default_complex_kind_1): New.
(gfc_init_kinds): New.
(gfc_init_types): Don't set gfc_index_integer_kind here.
* trans-types.h (gfc_init_kinds): Declare.
* doc/invoke.texi: Clarify DOUBLE PRECISION behaviour wrt -r8.
From-SVN: r86637
Joseph Myers [Thu, 26 Aug 2004 21:30:26 +0000 (22:30 +0100)]
re PR c/13801 (Decls should regain old type at end of scope)
PR c/13801
* c-decl.c (struct c_binding): Add type and inner_comp fields.
(bind): Set type and inner_comp fields.
(pop_scope): Restore type of decl to the correct type from an
outer scope. Give error when popping file scope for incomplete
arrays completed incompatibly with default initialization in an
inner scope.
(diagnose_mismatched_decls): Handle externs with initializers at
block scope.
(pushdecl): Set type of external declaration at block scope based
only on the visible declarations. Save type when changing the
type of a declaration. Merge an external declaration at block
scope with a visible static declaration at file scope.
(implicitly_declare): Give recycled old declaration the new type
except for incompatible declarations of built-in functions, saving
the old type.
testsuite:
* gcc.dg/redecl-3.c, gcc.dg/redecl-4.c, gcc.dg/redecl-6.c,
gcc.dg/redecl-7.c, gcc.dg/redecl-8.c, gcc.dg/redecl-9.c,
gcc.dg/redecl-10.c, gcc.dg/debug/redecl-1.c,
gcc.dg/debug/redecl-2.c, gcc.dg/debug/redecl-3.c,
gcc.dg/debug/redecl-4.c, gcc.dg/debug/redecl-5.c: New tests.
From-SVN: r86636
Matthias Klose [Thu, 26 Aug 2004 21:26:22 +0000 (21:26 +0000)]
texi2pod.pl: keep references of the form @ref{...}, print them bold.
2004-08-26 Matthias Klose <doko@debian.org>
* texi2pod.pl: keep references of the form @ref{...}, print them bold.
From-SVN: r86635
Ziemowit Laski [Thu, 26 Aug 2004 20:55:24 +0000 (20:55 +0000)]
c-parse.in (OBJC_TYPE_QUAL): New %token for ObjC use.
[gcc/ChangeLog]
2004-08-26 Ziemowit Laski <zlaski@apple.com>
* c-parse.in (OBJC_TYPE_QUAL): New %token for ObjC use.
From-SVN: r86632
Daniel Berlin [Thu, 26 Aug 2004 19:37:39 +0000 (19:37 +0000)]
tree-alias-common.c (gate_pta): New function.
2004-08-26 Daniel Berlin <dberlin@dberlin.org>
* tree-alias-common.c (gate_pta): New function.
(pass_build_pta): Use it.
(pass_del_pta): Use it.
(delete_alias_vars): Don't check flag_tree_points_to.
From-SVN: r86631
Richard Henderson [Thu, 26 Aug 2004 18:07:57 +0000 (11:07 -0700)]
cp-tree.h (DECL_FIELD_IS_BASE): New.
* cp-tree.h (DECL_FIELD_IS_BASE): New.
* class.c (build_base_field): Set it.
(build_simple_base_path): Use it.
(fixed_type_or_null): Don't consider base fields definitive.
From-SVN: r86630
Fariborz Jahanian [Thu, 26 Aug 2004 17:20:20 +0000 (17:20 +0000)]
Fixed several -mcpu=G5 and 'long double' issues for apple-ppc-darwin.
OK'ed by David Edehlson.
From-SVN: r86629
Tobias Schlüter [Thu, 26 Aug 2004 17:11:27 +0000 (19:11 +0200)]
check.c (gfc_check_atan2): New function.
* check.c (gfc_check_atan2): New function.
* intrinsic.c (add_functions): Use gfc_check_atan2 for ATAN2
* intrinsic.h (gfc_check_atan2): Add prototype.
From-SVN: r86628
Daniel Berlin [Thu, 26 Aug 2004 17:10:50 +0000 (17:10 +0000)]
[multiple changes]
2004-08-26 Daniel Berlin <dberlin@dberlin.org>
* Makefile.in (lambda-code.o): New.
(lambda-trans.o): Ditto.
(TREE_DATA_REF_H): Ditto.
(LAMBDA_H): Ditto.
(lambda-mat.o): Use LAMBDA_H.
(tree-data-ref.o): Ditto.
* lambda-code.c: New file. Lambda code generation algorithm.
* lambda-trans.c: Ditto. Lambda transformation matrix support.
* lambda.h: Add lambda loop structures.
Add lambda loopnest structures.
Add lambda body vector structure.
Add lambda linear expression structures.
Add prototypes for functions in new files.
* lambda-mat.c: Include tree.h
2004-08-26 Daniel Berlin <dberlin@dberlin.org>
Sebastian Pop <pop@cri.ensmp.fr>
* tree-data-ref.h: Include lambda.h
(free_dependence_relation): Declared here.
(free_dependence_relations): Ditto.
(free_data_refs): Ditto.
* tree-data-ref.c (free_dependence_relation): New function.
(free_dependence_relations): Ditto.
(free_data_refs): Ditot.
(analyze_all_data_dependences): Free datarefs and dependence_relations.
(build_classic_dist_vector): Store in the dependence_relations the
information. Each arc in the dependence_relations graph is labelled
with the distance and direction vectors.
(build_classic_dir_vector): Ditto.
(compute_rw_wr_ww_dependences): Renamed again compute_all_dependences.
Now computes again the whole dependence graph including read-read
relations.
(compute_data_dependences_for_loop): Now dependence_relations contains
all the data, and thus it doesn't need to initialize the classic_dir
and classic_dist vectors.
(analyze_all_data_dependences): Adjusted for using the new interface of
compute_data_dependences_for_loop. Remove the statistics dump.
Co-Authored-By: Sebastian Pop <pop@cri.ensmp.fr>
From-SVN: r86627
Bob Wilson [Thu, 26 Aug 2004 17:08:10 +0000 (17:08 +0000)]
xtensa.c (xtensa_ld_opcodes, [...]): Delete.
* config/xtensa/xtensa.c (xtensa_ld_opcodes, xtensa_st_opcodes): Delete.
(xtensa_expand_block_move): Update comment.
(override_options): Remove initialization of xtensa_{ld,st}_opcodes.
From-SVN: r86626
Richard Earnshaw [Thu, 26 Aug 2004 16:42:39 +0000 (16:42 +0000)]
re PR target/13506 (tcpsm.c:263: internal compiler error: Segmentation fault)
PR target/13506
* toplev.c (crash_signal): If we crashed while emitting
a user asm, then die more gracefully.
From-SVN: r86624
Mark Wielaard [Thu, 26 Aug 2004 16:10:54 +0000 (16:10 +0000)]
re PR libgcj/17002 (java.util.TimeZone.getDefault() is broken)
2004-08-26 Mark Wielaard <mark@klomp.org>
Fixes PR libgcj/17002:
* java/util/TimeZone.java (defaultZone): Try a couple of ways to get
a TimeZoneId string and then try to convert that to a TimeZone with
getDefaultSystemTimeZone(String).
(timezones0): Changed type from Hashtable to HashMap.
(timezones): Create HashMap, not Hashtable.
(getDefaultTimeZone): New method, rewritten from CNI version.
(readTimeZoneFile): New method.
(readtzFile): Likewise.
(skipFully): Likewise.
* java/util/natTimeZone.cc (getSystemTimeZone): Renamed to
getDefaultTimeZoneId and rewritten.
(getDefaultTimeZoneId): Rewritten in java.
From-SVN: r86623
Tobias Schlüter [Thu, 26 Aug 2004 13:25:16 +0000 (15:25 +0200)]
io.h, [...]: Fix formatting issues, update copyright years.
* io/io.h, io/list_read.c, io/open.c, io/transfer.c, io/write.c:
Fix formatting issues, update copyright years.
(Add Previously missing ChangeLog entry)
From-SVN: r86621
Nick Clifton [Thu, 26 Aug 2004 13:03:02 +0000 (13:03 +0000)]
re PR target/17119 ([m32r] ICE at switch case 0x8000)
PR target/17119.
config/m32r.c (gen_compare): Use reg_or_int16_operand when checking for a
valid constant, regardless of sign.
testsuite/gcc.c-torture/compile/pr17119.c: New test (for this failure)
From-SVN: r86619
Joseph Myers [Thu, 26 Aug 2004 12:41:09 +0000 (13:41 +0100)]
Revert corruption introduced in revision 1.3846.
From-SVN: r86617
Joseph Myers [Thu, 26 Aug 2004 12:35:11 +0000 (13:35 +0100)]
* gcc.dg/c90-typespec-1.c, gcc.dg/c99-typespec-1.c: New tests.
From-SVN: r86616
Richard Henderson [Thu, 26 Aug 2004 10:03:38 +0000 (03:03 -0700)]
re PR target/16974 (could not split insn (ice in final_scan_insn, final.c))
PR target/16974
* config/alpha/alpha.md (adddi_fp_hack): Don't rely on splitting
if the constant satisfies add_operand.
From-SVN: r86613
Nathan Sidwell [Thu, 26 Aug 2004 09:14:44 +0000 (09:14 +0000)]
* treetree.c (tree_code_get_integer_value): Fix build_int_cst call.
From-SVN: r86611
Richard Henderson [Thu, 26 Aug 2004 09:08:03 +0000 (02:08 -0700)]
re PR debug/10695 (ICE in dwarf2out_frame_debug_expr,)
PR debug/10695
* config/alpha/alpha.c (emit_frame_store_1, emit_frame_store): New.
(alpha_expand_prologue): Handle >32-bit frames. Generate proper
unwind info for >16-bit frames.
From-SVN: r86610
Richard Henderson [Thu, 26 Aug 2004 06:07:52 +0000 (23:07 -0700)]
arith.c (gfc_validate_kind): Add may_fail argument; abort if false and we don't validate the kind.
* arith.c (gfc_validate_kind): Add may_fail argument; abort if
false and we don't validate the kind.
(gfc_check_integer_range, gfc_check_real_range): Update to match.
* check.c (kind_check): Likewise.
* decl.c (gfc_match_old_kind_spec, gfc_match_kind_spec): Likewise.
(match_char_spec, match_logical_spec): Likewise.
* gfortran.h (gfc_validate_kind): Likewise.
* options.c (gfc_handle_option): Likewise.
* primary.c (match_integer_constant, match_real_constant,
match_string_constant, match_logical_constant,
match_const_complex_part): Likewise.
* simplify.c (get_kind, gfc_simplify_bit_size, gfc_simplify_digits,
gfc_simplify_epsilon, gfc_simplify_huge, gfc_simplify_ibclr,
gfc_simplify_ibset, gfc_simplify_ishft, gfc_simplify_ishftc,
gfc_simplify_maxexponent, gfc_simplify_minexponent,
gfc_simplify_nearest, gfc_simplify_not, gfc_simplify_precision,
gfc_simplify_radix, gfc_simplify_range, gfc_simplify_rrspacing,
gfc_simplify_scale, gfc_simplify_spacing, gfc_simplify_tan,
gfc_simplify_tiny): Likewise.
* trans-intrinsic.c (gfc_conv_intrinsic_aint, gfc_conv_intrinsic_mod,
gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_minmaxval,
prepare_arg_info): Likewise.
From-SVN: r86608
Matthias Klose [Thu, 26 Aug 2004 05:51:22 +0000 (05:51 +0000)]
test_summary: Include baseline used for libstdc++-v3 abi check in test summary.
2003-08-26 Matthias Klose <doko@debian.org>
* test_summary: Include baseline used for libstdc++-v3
abi check in test summary.
From-SVN: r86607
Richard Henderson [Thu, 26 Aug 2004 05:30:51 +0000 (22:30 -0700)]
intrinsic_sr_kind.f90: Disable the bits that expect kind=8 to be the largest real kind.
* gfortran.fortran-torture/execute/intrinsic_sr_kind.f90: Disable
the bits that expect kind=8 to be the largest real kind.
From-SVN: r86604
Richard B. Kreckel [Thu, 26 Aug 2004 04:42:05 +0000 (04:42 +0000)]
re PR target/17171 (Unrecognized comments in generated asm)
Patch from Richard B Kreckel.
PR target/17171
* config/i386/gas.h (ASM_COMMENT_START): Define to "#".
From-SVN: r86603
Richard Henderson [Thu, 26 Aug 2004 02:37:41 +0000 (19:37 -0700)]
alpha.c (alpha_cannot_force_const_mem): New.
* config/alpha/alpha.c (alpha_cannot_force_const_mem): New.
(TARGET_CANNOT_FORCE_CONST_MEM): New.
From-SVN: r86602
Ziemowit Laski [Thu, 26 Aug 2004 02:00:37 +0000 (02:00 +0000)]
const-str-3.m: Include <stdlib.h> and <memory.h>.
[gcc/testsuite/ChangeLog]
2004-08-25 Ziemowit Laski <zlaski@apple.com>
* objc.dg/const-str-3.m: Include <stdlib.h> and <memory.h>.
From-SVN: r86600
Andrew MacLeod [Thu, 26 Aug 2004 01:28:10 +0000 (01:28 +0000)]
Document new ssa operand iterator.
From-SVN: r86599
Alan Modra [Thu, 26 Aug 2004 01:20:25 +0000 (01:20 +0000)]
re PR target/16480 (using -msdata causes internal compiler error)
PR target/16480
* config/rs6000/rs6000.c (rs6000_split_multireg_move): Don't abort
on "(mem (symbol_ref ..))" rtl. Look at LO_SUM base regs as well
as PLUS base regs.
From-SVN: r86598
Paul Brook [Thu, 26 Aug 2004 01:01:25 +0000 (01:01 +0000)]
Fix typo.
From-SVN: r86596
Paul Brook [Thu, 26 Aug 2004 00:58:56 +0000 (00:58 +0000)]
symbian.h (SUBTARGET_ASM_FLOAT_SPEC): Default to -mfpu=vfp -march=armv5t
* config/arm/symbian.h (SUBTARGET_ASM_FLOAT_SPEC): Default to
-mfpu=vfp -march=armv5t
* config/arm/t-symbian: Change multilib to mfloat-aby=softfp.
From-SVN: r86594
Richard Henderson [Thu, 26 Aug 2004 00:24:37 +0000 (17:24 -0700)]
target-def.h (TARGET_SCALAR_MODE_SUPPORTED_P): New.
* target-def.h (TARGET_SCALAR_MODE_SUPPORTED_P): New.
* target.h (struct gcc_target): Add scalar_mode_supported_p.
* targhooks.c (default_scalar_mode_supported_p): New.
* targhooks.h (default_scalar_mode_supported_p): Declare.
* doc/tm.texi (TARGET_SCALAR_MODE_SUPPORTED_P): Document.
* c-common.c (handle_mode_attribute): Query scalar_mode_supported_p
before attempting to create types. Tidy.
* expr.c (vector_mode_valid_p): Use scalar_mode_supported_p.
* config/alpha/alpha.c (alpha_scalar_mode_supported_p): New.
(TARGET_SCALAR_MODE_SUPPORTED_P): New.
From-SVN: r86593
GCC Administrator [Thu, 26 Aug 2004 00:16:14 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r86591
Richard Henderson [Thu, 26 Aug 2004 00:13:39 +0000 (17:13 -0700)]
freebsd.h (SUBTARGET_OVERRIDE_OPTIONS): Don't set REAL_MODE_FORMAT for TFmode.
* config/i386/freebsd.h (SUBTARGET_OVERRIDE_OPTIONS): Don't
set REAL_MODE_FORMAT for TFmode.
From-SVN: r86588
Ziemowit Laski [Wed, 25 Aug 2004 23:39:11 +0000 (23:39 +0000)]
c-decl.c (grokparm): New function.
[gcc/ChangeLog]
2004-08-25 Ziemowit Laski <zlaski@apple.com>
* c-decl.c (grokparm): New function.
* c-tree.h (grokparm): New prototype.
From-SVN: r86587
Paolo Carlini [Wed, 25 Aug 2004 23:38:29 +0000 (23:38 +0000)]
PR libstdc++/17038 (partial)
2004-08-25 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/17038 (partial)
* include/bits/locale_facets.tcc (time_put<>::do_put): Increase
__maxlen to 128.
* include/bits/locale_facets.h (class __timepunct): Add FIXME
comment about _M_put.
* config/locale/generic/time_members.cc (_M_put): Always null
terminate __s.
* config/locale/gnu/time_members.cc (_M_put): Likewise.
* testsuite/22_locale/time_put/put/char/17038.cc: New.
* testsuite/22_locale/time_put/put/wchar_t/17038.cc: New.
From-SVN: r86586
Tobias Schlüter [Wed, 25 Aug 2004 22:07:32 +0000 (00:07 +0200)]
expr.c (gfc_check_assign): Add comment.
fortran/
* expr.c (gfc_check_assign): Add comment. Add new warning.
* trans-expr.c (gfc_conv_function_call): Correctly dereference
result of pointer valued function when not in pointer assignment.
testsuite/
* gfortran.dg/assignment_1.f90: New test.
From-SVN: r86585
Andrew MacLeod [Wed, 25 Aug 2004 21:21:19 +0000 (21:21 +0000)]
tree-ssa-operands.h (struct ssa_operand_iterator_d): New.
2004-08-25 Andrew MacLeod <amacleod@redhat.com>
* tree-ssa-operands.h (struct ssa_operand_iterator_d): New. SSA operand
iterator controlling structure.
(SSA_OP_USE, SSA_OP_DEF, SSA_OP_VUSE, SSA_OP_VMAYUSE, SSA_OP_VMAYDEF,
SSA_OP_VMUSTDEF, SSA_OP_VIRTUAL_USES, SSA_OP_VIRTUAL_DEFS,
SSA_OP_ALL_USES, SSA_OP_ALL_DEFS, SSA_OP_ALL_OPERANDS): New. Operand
iterator flags.
(FOR_EACH_SSA_TREE_OPERAND): New. Iterate over operands as trees.
(FOR_EACH_SSA_USE_OPERAND): New. Iterate over operands as uses.
(FOR_EACH_SSA_DEF_OPERAND): New. Iterate over operands as defs.
(FOR_EACH_SSA_MAYDEF_OPERAND): New. Iterate over V_MAY_DEFs.
* tree-ssa-operands.c (NULL_DEF_OPERAND_P, NULL_USE_OPERAND_P): New.
Empty operand pointers.
* tree-flow-inline.h (op_iter_done): New. Return true if finished.
(op_iter_next_use): New. Return next use_operand_p.
(op_iter_next_def): New. Return next def_operand_p.
(op_iter_next_tree): New. Return next operands as a tree.
(op_iter_init): New. Initialize an iterator structure.
(op_iter_init_use): New. Initialize structure and get the first use.
(op_iter_init_def): New. Initialize structure and get the first def.
(op_iter_init_tree): New. Initialize structure and get the first tree.
(op_iter_next_maydef): New. Return next V_MAY_DEF operands.
(op_iter_init_maydef): New. Initialize structure and get the first
V_MAY_DEF operands.
* tree-cfg.c (tree_duplicate_bb): Use new operand iterator.
* tree-dfa.c (compute_immediate_uses_for_stmt,
redirect_immediate_uses): Use new operand iterator.
(v_may_defs_disappeared_p, v_must_defs_disappeared_p): Delete.
(mark_new_vars_to_rename): Use new operand iterator. Count virtual
operands instead of using *_disappeared_p routines.
* tree-into-ssa.c (mark_def_sites, ssa_mark_def_sites, rewrite_stmt,
ssa_rewrite_stmt): Use new operand iterator.
* tree-outof-ssa.c (check_replaceable, find_replaceable_in_bb,
rewrite_trees): Use new operand iterator.
* tree-pretty-print.c (dump_vops): Use new operand iterator.
* tree-sra.c (mark_all_v_defs): Use new operand iterator.
* tree-ssa-alias.c (compute_points_to_and_addr_escape,
dump_points_to_info): Use new operand iterator.
* tree-ssa-ccp.c (cp_lattice_meet, visit_stmt, initialize,
replace_uses_in, replace_vuse_in, likely_value, set_rhs): Use new
operand iterator.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary,
propagate_necessity): Use new operand iterator.
* tree-ssa-dom.c (cprop_into_stmt, optimize_stmt): Use operand iterator.
(register_definitions_for_stmt): Use new operand iterator. Take stmt as
a parameter instead of a stmt_ann_t.
* tree-ssa-live.c (create_ssa_var_map, calculate_live_on_entry,
build_tree_conflict_graph): Use new operand iterator.
* tree-ssa-loop-im.c (determine_max_movement, single_reachable_address,
rewrite_mem_refs): Use new operand iterator.
* tree-ssa-loop-manip.c (find_uses_to_rename_stmt,
check_loop_closed_ssa_use): Use new operand iterator.
* tree-ssa.c (verify_ssa, replace_immediate_uses): Use operand iterator.
* tree-ssanames.c (release_defs): Use new operand iterator.
* tree-vectorizer.c (vect_create_data_ref): Use new operand iterator.
From-SVN: r86583
Paul Brook [Wed, 25 Aug 2004 21:18:35 +0000 (21:18 +0000)]
config-lang.in: Remove dead commented line.
* config-lang.in: Remove dead commented line.
* module.c: Replace g95 with gfortran in comment.
From-SVN: r86582
Paul Brook [Wed, 25 Aug 2004 21:04:49 +0000 (21:04 +0000)]
re PR fortran/17190 (MPFR semantics for mpfr_get_z_exp changed)
PR fortran/17190
* arith.c (gfc_mpfr_to_mpz): Workaround mpfr bug.
From-SVN: r86581
Adam Nemet [Wed, 25 Aug 2004 20:52:41 +0000 (20:52 +0000)]
* g++.dg/template/repo3.C: New test.
From-SVN: r86578
Adam Nemet [Wed, 25 Aug 2004 20:51:19 +0000 (20:51 +0000)]
tlink.c (initial_cwd): New variable.
* tlink.c (initial_cwd): New variable.
(tlink_init): Initialize it.
(recompile_files): Use tlink_execute() instead of system(). Don't
duplicate verbose output of collect_execute. Restore initial_cwd.
Update comment before the function.
From-SVN: r86577
Roger Sayle [Wed, 25 Aug 2004 20:51:02 +0000 (20:51 +0000)]
re PR middle-end/16693 (Bitwise AND is lost when used within a cast to an enum of the same precision)
PR middle-end/16693
PR tree-optimization/16372
* decl.c (finish_enum): Make the precision of the enumerated type
the same width as the underlying integer type.
* g++.dg/opt/pr16372-1.C: New test case.
* g++.dg/opt/pr16693-1.C: New test case.
* g++.dg/opt/pr16693-2.C: New test case.
From-SVN: r86576
Ziemowit Laski [Wed, 25 Aug 2004 20:38:53 +0000 (20:38 +0000)]
c-typeck.c (build_c_cast): In ObjC...
[gcc/ChangeLog]
2004-08-25 Ziemowit Laski <zlaski@apple.com>
* c-typeck.c (build_c_cast): In ObjC, always preserve (and silently
accept) a cast from one Objective-C pointer type to another.
[gcc/testsuite/ChangeLog]
2004-08-25 Ziemowit Laski <zlaski@apple.com>
* objc.dg/proto-lossage-4.m: New test.
From-SVN: r86574
Paolo Carlini [Wed, 25 Aug 2004 20:24:46 +0000 (20:24 +0000)]
install.texi: Document that libstdc++-v3 requires now automake 1.9.1.
2004-08-25 Paolo Carlini <pcarlini@suse.de>
* doc/install.texi: Document that libstdc++-v3 requires
now automake 1.9.1.
From-SVN: r86572
Mark Mitchell [Wed, 25 Aug 2004 20:06:30 +0000 (20:06 +0000)]
re PR c++/17155 (Another link problem with function-local classes)
PR c++/17155
* lex.c (build_lang_decl): Set DECL_NO_STATIC_CHAIN for all C++
functions.
PR c++/17155
* g++.dg/inherit/local2.C: New test.
From-SVN: r86571
Caroline Tice [Wed, 25 Aug 2004 19:52:54 +0000 (19:52 +0000)]
Add more details to hot/cold partitioning comments and documentation.
2004-08-25 Caroline Tice <ctice@apple.com>
* bb-reorder.c (partition_hot_cold_basic_blocks): Add more details
to comments at start of function.
* cfgbuild.c (make_edges): Add more details to hot/cold partitioning
comment.
* cfgcleanup.c (try_simplify_condjump, try_forward_edges,
merge_blocks_move_predecessor_nojumps,
merge_blocks_move_successor_nojumps, merge_blocks_move,
try_crossjump_to_edge, try_crossjump_bb): Likewise.
* cfglayout.c (fixup_reorder_chain): Likewise.
* cfgrtl.c (rtl_can_merge_blocks, try_redirect_by_replacing_jump,
cfg_layout_can_merge_blocks_p): Likewise.
* ifcvt.c (find_if_case_1, find_if_case_2): Likewise.
* passes.c (rest_of_compilation): Update comments for calling
optimization that partitions hot/cold basic blocks.
* doc/invoke.texi: Update documentation of
freorder-blocks-and-partition flag.
From-SVN: r86570
Richard Sandiford [Wed, 25 Aug 2004 19:35:05 +0000 (19:35 +0000)]
mips.md (reg): Renamed mode attribute from ccreg.
* config/mips/mips.md (reg): Renamed mode attribute from ccreg.
(*mov*_on_*): Adjust accordingly. Add an explicit MOVECC: prefix.
From-SVN: r86568
Mark Mitchell [Wed, 25 Aug 2004 19:23:11 +0000 (19:23 +0000)]
* mangle.c (get_identifier_nocopy): Add cast.
From-SVN: r86567
Richard Sandiford [Wed, 25 Aug 2004 19:18:22 +0000 (19:18 +0000)]
mips.md (any_shift): New code macro.
* config/mips/mips.md (any_shift): New code macro.
(optab, insn): New code attributes.
({ashl,ashr,lshr}[sd]i3): Redefine using :GPR and any_shift.
Use the standard rather than internal patterns for the MIPS16
double-shift optimization.
(*{ashl,ashr,lshr}[sd]i3): New names for the non-mips16 shift patterns.
Redefine using :GPR and any_shift.
(*{ashl,ashr,lshr}si3_extend): Generalize ashlsi3_internal1_extend
to cover all three shifts.
(*{ashl,ashr,lshr}si3_mips16): New names for the mips16 SImode shifts.
Redefine using any_shift. Use :GPR and any_shift to combine splitters.
(*{ashl,ashr,lshr}di3_mips16): New names for the mips16 DImode shifts.
From-SVN: r86566
Mark Mitchell [Wed, 25 Aug 2004 19:02:56 +0000 (19:02 +0000)]
config.gcc (arm*-*-symbianelf*): Add t-symbian Makefile fragment.
* config.gcc (arm*-*-symbianelf*): Add t-symbian Makefile
fragment.
* config/arm/bpabi.h (RENAME_LIBRARY_SET): Fix typo.
(SUBTARGET_EXTRA_ASM_SPEC): Pass -meabi=3 to the assembler.
* config/arm/symbian.h (SUBTARGET_CPU_DEFAULT): Assume ARMV5
architecture.
(SUBTARGET_ASM_FLOAT_SPEC): Default to -mfpu=vfp for hard-float
configurations.
* config/arm/t-symbian: New file.
From-SVN: r86565
Geoffrey Keating [Wed, 25 Aug 2004 18:11:12 +0000 (18:11 +0000)]
gimplify.c (lookup_tmp_var): Separate temporaries when not optimizing.
* gimplify.c (lookup_tmp_var): Separate temporaries when not
optimizing.
From-SVN: r86563
John David Anglin [Wed, 25 Aug 2004 17:49:58 +0000 (17:49 +0000)]
PR libstdc++/17005 (fix for HP-UX 11.11)
PR libstdc++/17005 (fix for HP-UX 11.11)
* config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2.
(hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of
tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate.
* config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files.
* config/pa/pa-hpux.h (TARGET_HPUX): Define.
(LINK_SPEC): Handle march=1.0 option.
* config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX
and _XOPEN_SOURCE_EXTENDED for UNIX 95.
(SUBTARGET_OPTIONS): New define.
(LINK_SPEC): Handle march=1.0 option.
(STARTFILE_SPEC): New define.
* config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX
and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine
_INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98.
(SUBTARGET_OPTIONS): New define.
(LINK_SPEC): Handle march=1.0 option.
(STARTFILE_SPEC): New define.
* config/pa/pa.c (override_options): Add code to process -munix= option.
* config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare.
(TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default
defines.
(TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list.
(SUBTARGET_OPTIONS): Provide default define.
* config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1,
STANDARD_STARTFILE_PREFIX_2): New defines.
(STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary.
(ENDFILE_SPEC): Use %O.
* doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas.
Mention issue caused by changing namespace and runtime to UNIX 95/98.
* doc/invoke.texi (HPPA options): Move misplaced text to FRV options.
Document -munix=std option.
From-SVN: r86561
Mark Mitchell [Wed, 25 Aug 2004 16:58:23 +0000 (16:58 +0000)]
cp-tree.h (mangle_type): Remove.
* cp-tree.h (mangle_type): Remove.
* mangle.c (globals): GTY it.
(mangle_obstack): New variable.
(name_obstack): Likewise.
(name_base): Likewise.
(write_char): Adjust accordingly.
(write_chars): Likewise.
(write_string): Likewise.
(start_mangling): Initialize G.substitutions only one. Add
ident_p parameter.
(finish_mangling): Use VARRAY_CLEAR to reclaim
storage in G.substitutions. Use obstack_finish.
(init_mangle): Adjust for changes to variable names above.
Initialize G.substitutions.
(mangle_decl_string): Adjust call to start_mangling.
(get_identifier_nocopy): New function.
(mangle_decl): Use it.
(mangle_type_string): Adjust call to start_mangling.
(mangle_special_for_type): Likewise.
(mangle_vtt_for_type): Likewise.
(mangle_ctor_vtbl_for_type): Likewise.
(mangle_thunk): Likewise.
(mangle_guard_variable): Likewise.
(mangle_ref_init_variable): Likewise.
From-SVN: r86559
Paul Brook [Wed, 25 Aug 2004 16:50:13 +0000 (16:50 +0000)]
re PR fortran/17144 (Not Implemented: Character string array constructors / Assignment to char array)
PR fortran/17144
* trans-array.c (gfc_trans_allocate_temp_array): Remove
string_length argument.
(gfc_trans_array_ctor_element): New function.
(gfc_trans_array_constructor_subarray): Use it.
(gfc_trans_array_constructor_value): Ditto. Handle constant
character arrays.
(get_array_ctor_var_strlen, get_array_ctor_strlen): New functions.
(gfc_trans_array_constructor): Use them.
(gfc_add_loop_ss_code): Update to new gfc_ss layout.
(gfc_conv_ss_descriptor): Remember section string length.
(gfc_conv_scalarized_array_ref): Ditto. Remove dead code.
(gfc_conv_resolve_dependencies): Update to new gfc_ss layout.
(gfc_conv_expr_descriptor): Ditto.
(gfc_conv_loop_setup): Ditto. Spelling fixes.
* trans-array.h (gfc_trans_allocate_temp_array): Update prototype.
* trans-const.c (gfc_conv_constant): Update to new gfc_ss layout.
* trans-expr.c (gfc_conv_component_ref): Turn error into ICE.
(gfc_conv_variable): Set string_length from section.
(gfc_conv_function_call): Remove extra argument.
(gfc_conv_expr, gfc_conv_expr_reference): Update to new gfc_ss layout.
* trans-types.c (gfc_get_character_type_len): New function.
(gfc_get_character_type): Use it.
(gfc_get_dtype): Return zero for internal types.
* trans-types.h (gfc_get_character_type_len): Add prototype.
* trans.h (struct gfc_ss): Move string_length out of union.
testsuite/
* gfortran.dg/string_ctor_1.f90: New test.
From-SVN: r86558
Tobias Schlüter [Wed, 25 Aug 2004 15:50:36 +0000 (17:50 +0200)]
trans.h (build2_v, build3_v): New macros.
* trans.h (build2_v, build3_v): New macros.
(build_v): Remove.
* f95-lang.c (gfc_truthvalue_conversion): Use build2 instead of
build.
* trans-array.c (gfc_conv_descriptor_data,
gfc_conv_descriptor_offset, gfc_conv_descriptor_dimension,
gfc_conv_descriptor_stride, gfc_conv_descriptor_lbound,
gfc_conv_descriptor_ubound, gfc_trans_allocate_array_storage,
gfc_trans_allocate_temp_array,
gfc_trans_array_constructor_subarray,
gfc_trans_array_constructor_value, gfc_conv_array_index_ref,
gfc_trans_array_bound_check, gfc_conv_array_index_offset,
gfc_conv_scalarized_array_ref, gfc_conv_array_ref,
gfc_conv_array_ref, gfc_trans_preloop_setup,
gfc_trans_scalarized_loop_end, gfc_conv_ss_startstride,
gfc_conv_loop_setup, gfc_array_init_size,
gfc_conv_array_initializer, gfc_trans_array_bounds,
gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
gfc_conv_expr_descriptor, gfc_conv_array_parameter,
gfc_trans_deferred_array): Use buildN and buildN_v macros instead
of build and build_v as appropriate.
* trans-common.c (create_common): Same.
* trans-decl.c (gfc_trans_auto_character_variable,
gfc_trans_entry_master_switch, gfc_generate_function_code): Same.
* trans-expr.c (gfc_conv_expr_present, gfc_conv_substring,
gfc_conv_component_ref, gfc_conv_unary_op, gfc_conv_powi,
gfc_conv_cst_int_power, gfc_conv_string_tmp, gfc_conv_concat_op,
gfc_conv_expr_op, gfc_conv_function_call,
gfc_trans_structure_assign): Same.
* trans-intrinsic.c (build_fixbound_expr, build_round_expr,
gfc_conv_intrinsic_aint, gfc_conv_intrinsic_bound,
gfc_conv_intrinsic_cmplx, gfc_conv_intrinsic_mod,
gfc_conv_intrinsic_dim, gfc_conv_intrinsic_sign,
gfc_conv_intrinsic_dprod, gfc_conv_intrinsic_minmax,
gfc_conv_intrinsic_anyall, gfc_conv_intrinsic_count,
gfc_conv_intrinsic_arith, gfc_conv_intrinsic_minmaxloc,
gfc_conv_intrinsic_minmaxval, gfc_conv_intrinsic_btest,
gfc_conv_intrinsic_bitop, gfc_conv_intrinsic_singlebitop,
gfc_conv_intrinsic_ibits, gfc_conv_intrinsic_ishft,
gfc_conv_intrinsic_merge, gfc_conv_intrinsic_strcmp,
gfc_conv_allocated, gfc_conv_associated, prepare_arg_info,
gfc_conv_intrinsic_spacing, gfc_conv_intrinsic_rrspacing,
gfc_conv_intrinsic_trim, gfc_conv_intrinsic_repeat,
gfc_conv_intrinsic_iargc): Same.
* trans-io.c (set_parameter_value, set_parameter_ref, set_string,
set_flag, add_case, io_result, transfer_namelist_element,
transfer_expr): Same.
* trans-stmt.c (gfc_trans_goto, gfc_trans_return, gfc_trans_if_1,
gfc_trans_arithmetic_if, gfc_trans_do, gfc_trans_do_while,
gfc_trans_integer_select, gfc_trans_logical_select,
gfc_trans_character_select, gfc_trans_forall_loop,
gfc_trans_nested_forall_loop, gfc_do_allocate,
generate_loop_for_temp_to_lhs, generate_loop_for_rhs_to_temp,
compute_inner_temp_size, compute_overall_iter_number,
allocate_temp_for_forall_nest, gfc_trans_pointer_assign_need_temp,
gfc_trans_forall_1, gfc_evaluate_where_mask,
gfc_trans_where_assign, gfc_trans_allocate): Same.
* trans-types.c (gfc_get_dtype, gfc_get_array_type_bounds): Same.
* trans.c (gfc_add_modify_expr, gfc_finish_block,
gfc_build_array_ref, gfc_build_function_call,
gfc_trans_runtime_check): Same.
From-SVN: r86554
Jason Merrill [Wed, 25 Aug 2004 15:16:36 +0000 (11:16 -0400)]
re PR c++/15461 (ICE due to NRV and inlining)
PR c++/15461
* semantics.c (nullify_returns_r): Replace a DECL_STMT
for the NRV with an INIT_EXPR.
From-SVN: r86552