aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2004-08-29tree-ssa-ccp.c (ccp_visit_stmt): Remove #if 0 guards.Diego Novillo3-4/+7
* tree-ssa-ccp.c (ccp_visit_stmt): Remove #if 0 guards. * tree-ssa-propagate.c: Fix documentation. From-SVN: r86726
2004-08-29mips.md (*mov[sd]f_on_*): Redefine using :SCALARF.Richard Sandiford2-42/+20
* config/mips/mips.md (*mov[sd]f_on_*): Redefine using :SCALARF. (mov[sd]fcc): Likewise. From-SVN: r86723
2004-08-29* config/mips/mips.md (cmp[sd]f): Redefine using :SCALARF.Richard Sandiford2-15/+8
From-SVN: r86722
2004-08-29mips.md (divide_condition): New mode attribute.Richard Sandiford2-181/+74
* config/mips/mips.md (divide_condition): New mode attribute. (div[sd]f3, *div[sd]f3): Use it. Redefine using :SCALARF. (sqrt[sd]f3): Redefine using SCALARF. (*recip[sd]f3, *rsqrt<mode>[ab]): Likewise. Name formerly unnamed patterns. From-SVN: r86721
2004-08-29mips.md (ANYF, SCALARF): New mode macros.Richard Sandiford2-402/+160
* config/mips/mips.md (ANYF, SCALARF): New mode macros. (loadx, storex, fmt, UNITMODE): New mode attributes. (add{sf,df,v2sf}3, sub{sf,df,v2sf}3): Redefine using :ANYF. (mul[sd]f3): Redefine using :SCALARF. (*mul[sd]f3): Renamed from mul[sd]f3_internal. Use :SCALARF. (*mul[sd]3_r4300): Likewise mul[sd]f3_r4300. (*m{add,sub}{sf,df,v2sf}3): Name formerly unnamed patterns. Use :ANYF. Check TARGET_FUSED_MADD for V2SF too. (*nm{add,sub}{sf,df,v2sf}3{,_fastmath}): Likewise, except v2sf patterns were already named. (abs{sf,df,v2sf}3, neg{sf,df,v2sf}3): Redefine using :ANYF. (*[sl][wd]xc1_[sd]i): Redefine using :ANYF. From-SVN: r86720
2004-08-29mips.c (mips_init_builtins): Simplify.Richard Sandiford2-143/+49
* config/mips/mips.c (mips_init_builtins): Simplify. Only create V2SF_type_node if it will be needed. From-SVN: r86718
2004-08-29mips.h (MIPS_CMP_MOVT, [...]): Delete.Richard Sandiford3-440/+202
* config/mips/mips.h (MIPS_CMP_MOVT, MIPS_CMP_MOVF): Delete. * config/mips/mips.c (mips_prepare_builtin_arg): New function. (mips_prepare_builtin_target): New function. (mips_expand_builtin): Use them. Update calls to subroutines. (mips_expand_ps_cond_move_builtin): Use the new functions. Replace cmp_choice with a boolean argument to select between movt and movf. Take the comparison's icode as an argument, not the function's fcode. (mips_expand_compare_builtin): New function. Rename existing function to mips_expand_scalar_compare_builtin. (mips_expand_scalar_compare_builtin, mips_expand_4s_compare_builtin) (mips_expand_ps_compare_builtin): Use the new functions. Take the comparison's icode as an argument, not the builtin's fcode. From-SVN: r86716
2004-08-29mips.c (print_operand): Remove '%Y' and '%y'.Richard Sandiford3-101/+47
* 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
2004-08-29mips.md (UNSPEC_MOVE_TF_PS): New.Richard Sandiford4-18/+20
* 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
2004-08-29mips-modes.def (V2SF, CCV2, CCV4): New modes.Chao-ying Fu8-31/+4360
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
2004-08-29Makefile.in (OBJS-common): Add tree-ssa-propagate.oDiego Novillo6-1353/+1590
* 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
2004-08-28tree-ssa-loop.c: Remove extra include of basic-block.h.Andrew Pinski2-1/+4
2004-08-28 Andrew Pinski <apinski@apple.com> * tree-ssa-loop.c: Remove extra include of basic-block.h. From-SVN: r86708
2004-08-29Daily bump.GCC Administrator1-1/+1
From-SVN: r86706
2004-08-28gfortran.h (enum gfc_generic_isym_id): Add GFC_ISYM_GET?ID.Steven G. Kargl6-51/+103
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
2004-08-28c-common.h: Update comments about ObjC/ObjC++ entry points.Ziemowit Laski9-17/+68
[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
2004-08-28re PR libfortran/17195 (Infinite loop in output_float in libgfortran/io/write.c)Paul Brook2-0/+71
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
2004-08-28fix thinkoJason Merrill1-1/+1
From-SVN: r86694
2004-08-28system.h (gcc_assert): Remove __builtin_expect.Nathan Sidwell2-3/+8
* system.h (gcc_assert): Remove __builtin_expect. Evaluate EXPR even when not checking. From-SVN: r86692
2004-08-28error.c (gfc_error_init_1): Remove blank line in front of function body.Tobias Schlüter2-13/+16
* 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
2004-08-28* decl.c (expand_static_init): Avoid bogus warnings.Jason Merrill2-2/+6
From-SVN: r86689
2004-08-27re PR c++/16851 (ICE when throwing a comma expression)Jason Merrill3-0/+13
PR c++/16851 * tree.c (stabilize_init): See through a COMPOUND_EXPR. From-SVN: r86688
2004-08-27re PR c++/13684 (local static object variable constructed once but ctors and ↵Jason Merrill21-50/+514
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
2004-08-28Daily bump.GCC Administrator1-1/+1
From-SVN: r86682
2004-08-27cp-tree.def (OFFSETOF_EXPR): New.Richard Henderson4-12/+21
* 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
2004-08-27outer_code, not Outer code.David Edelsohn1-1/+1
From-SVN: r86671
2004-08-27rs6000.c (rs6000_override_options): Increase maximum skip to 15.David Edelsohn2-5/+25
* 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
2004-08-27call.c (validate_conversion_obstack): Replace my_friendly_assert with ↵Nathan Sidwell20-478/+484
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
2004-08-27stor-layout.c (sizetype_set): Remove.Nathan Sidwell2-5/+3
* stor-layout.c (sizetype_set): Remove. (set_sizetype): Don't test or set it. From-SVN: r86668
2004-08-27tree.h (size_int_type): Remove.Nathan Sidwell10-108/+35
* 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
2004-08-27configure.ac: Add ENABLE_ASSERT_CHECKING control.Nathan Sidwell6-21/+101
* 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
2004-08-27gfortran.h (gfc_default_*_kind): Remove prototypes, add extern variable ↵Tobias Schlüter19-199/+172
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
2004-08-27rewind.c (st_rewind): Reset unit to read mode.Paul Brook2-0/+22
* io/rewind.c (st_rewind): Reset unit to read mode. testsuite/ * gfortran.dg/rewind_1.f90: New test. From-SVN: r86659
2004-08-27rtl.h (read_rtx): Change prototype.Richard Sandiford4-37/+33
* 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
2004-08-27* utils.c (gnat_init_decl_processing): Ada has a signed sizetype.Nathan Sidwell2-1/+5
From-SVN: r86656
2004-08-27* Make-lang.in (EXTRA_GNATBIND_OBJS): Add errors.o.Andreas Schwab2-1/+5
From-SVN: r86655
2004-08-27re PR libfortran/16597 (gfortran: bug in unformatted I/O on scratch files)Bud Davis2-0/+32
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
2004-08-26Update comment for staticp.Richard Henderson1-3/+8
From-SVN: r86652
2004-08-26c-typeck.c (build_offsetof): Remove.Richard Henderson6-37/+94
* 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
2004-08-26tree.c (staticp): Return the static object.Richard Henderson8-27/+33
* 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
2004-08-27Daily bump.GCC Administrator1-1/+1
From-SVN: r86647
2004-08-26alpha.h (HARD_REGNO_MODE_OK): Allow complex float modes.Richard Henderson2-9/+15
* config/alpha/alpha.h (HARD_REGNO_MODE_OK): Allow complex float modes. From-SVN: r86644
2004-08-26arith.c: Include system.h, not real system headers.Richard Henderson7-257/+345
* 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
2004-08-26re PR c/13801 (Decls should regain old type at end of scope)Joseph Myers15-14/+1938
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
2004-08-26c-parse.in (OBJC_TYPE_QUAL): New %token for ObjC use.Ziemowit Laski2-0/+8
[gcc/ChangeLog] 2004-08-26 Ziemowit Laski <zlaski@apple.com> * c-parse.in (OBJC_TYPE_QUAL): New %token for ObjC use. From-SVN: r86632
2004-08-26tree-alias-common.c (gate_pta): New function.Daniel Berlin2-5/+19
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
2004-08-26cp-tree.h (DECL_FIELD_IS_BASE): New.Richard Henderson3-3/+20
* 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
2004-08-26Fixed several -mcpu=G5 and 'long double' issues for apple-ppc-darwin.Fariborz Jahanian4-12/+64
OK'ed by David Edehlson. From-SVN: r86629
2004-08-26check.c (gfc_check_atan2): New function.Tobias Schlüter4-1/+20
* 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
2004-08-26[multiple changes]Daniel Berlin8-100/+2320
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
2004-08-26xtensa.c (xtensa_ld_opcodes, [...]): Delete.Bob Wilson2-15/+11
* 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