OSDN Git Service

pf3gnuchains/gcc-fork.git
19 years ago2004-08-11 Andrew MacLeod <amacleod@redhat.com>
amacleod [Wed, 11 Aug 2004 17:50:47 +0000 (17:50 +0000)]
2004-08-11  Andrew MacLeod  <amacleod@redhat.com>

* tree-flow-inline.h (get_def_ops, get_use_ops, get_v_may_def_ops,
get_vuse_ops,get_v_must_def_ops): Add operand structure reference.
(get_v_may_def_result_ptr, get_v_may_def_op_ptr): New access struct.
(start_ssa_stmt_operands): Delete.
* tree-flow.h (struct stmt_ann_d): Replace operand vectors with new
struct stmt_operands_d.
(build_ssa_operands): New extern entry point.
* tree-ssa-dom.c (record_equivalences_from_stmt): Remove operand
building code, replace with create_ssa_artficial_load_stmt().
* tree-ssa-operands.c (struct voperands_d): Delete.
(allocate_v_may_def_optype): Allocate v_may_def_operand_type_t vector.
(allocate_v_must_def_optype): Use sizeof (tree), not sizeof (tree *).
(free_uses, free_defs, free_vuses, free_v_may_defs,
free_v_must_defs): Remove dealloc parameter.
(remove_vuses, remove_v_may_def, remove_v_must_defs): Delete.
(finalize_ssa_defs, finalize_ssa_uses, finalize_ssa_v_may_defs,
finalize_ssa_vuses, finalize_ssa_v_must_defs): Perform all operand
vector comparisons, ssa_name reuse, and allocations here.
(verify_start_operands): Delete.
(finalize_ssa_stmt_operands): Set new operands by calling finalize
routines.
(start_ssa_stmt_operands): Move from tree-flow-inline.h.
(append_def, append_usei): Simplify to simple accumulation.
(append_v_may_def, append_vuse, append_v_must_def): Simplify to avoiding
duplicates and simple accumulation.
(free_ssa_operands): Free vectors in a stmt_operand structure.
(build_ssa_operands): New. Create a new stmt_operand structure from
a stmt and an old set of stmt_operands.
(get_stmt_operands): Simplify and call build_ssa_operands.
(get_expr_operands, get_asm_expr_operands, get_indirect_ref_operands,
get_call_expr_operands, add_stmt_operand, add_call_clobber_ops,
add_call_read_ops): Don't pass prev_vops around anymore.
(note_addressable): Return if no stmt annotation.
(copy_virtual_operands): Access v_may_def operands through a struct.
(create_ssa_artficial_load_stmt): New.  Create a load stmt for DOM's
hash tables without treating the stmt as a real stmt.
* tree-ssa-operands.h (struct v_may_def_operand_type): New.  Access
v_may_def def and use through a struct instead of 2 array elements.
(struct v_may_def_optype_d): Use v_may_def_operand_type.
(struct stmt_operands_d): New.  Struct for storing all operand vectors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85807 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-11 Paul Brook <paul@codeourcery.com>
pbrook [Wed, 11 Aug 2004 16:05:14 +0000 (16:05 +0000)]
2004-08-11  Paul Brook  <paul@codeourcery.com>

PR fortran/16917
* intrinsic.c (add_functions): Add dfloat as an alias for dble.

2004-08-11  Steven G. Kargl  <kargls@comcast.net>

* gfortran.dg/dfloat_1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85805 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-11 Paolo Carlini <pcarlini@suse.de>
paolo [Wed, 11 Aug 2004 14:05:47 +0000 (14:05 +0000)]
2004-08-11  Paolo Carlini  <pcarlini@suse.de>

* testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85804 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-11 Paolo Carlini <pcarlini@suse.de>
paolo [Wed, 11 Aug 2004 13:47:24 +0000 (13:47 +0000)]
2004-08-11  Paolo Carlini  <pcarlini@suse.de>

* testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Declare test
variable.
* testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Remove junk.
* testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Ditto.
* testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85802 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-11 Paolo Carlini <pcarlini@suse.de>
paolo [Wed, 11 Aug 2004 09:31:13 +0000 (09:31 +0000)]
2004-08-11  Paolo Carlini  <pcarlini@suse.de>
    Petur Runolfsson  <peturr02@ru.is>

PR libstdc++/16959
* src/ios_init.cc (ios_base::sync_with_stdio): Make sure the
standard streams are constructed.
* testsuite/27_io/ios_base/sync_with_stdio/16959.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85797 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago(arm_is_longcall_p): Update comment describing this funciton's behaviour.
nickc [Wed, 11 Aug 2004 07:48:13 +0000 (07:48 +0000)]
(arm_is_longcall_p): Update comment describing this funciton's behaviour.
  Return true when the current function has a section attribute and
  -mlong-calls is in effect.
(ARM_DECLARE_FUNCTION_SIZE): Do not set the short-call marker when
  -mlong-calls is in effect and the function has a section attribute.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85796 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * stmt.c (expand_return): If asked to return the RESULT_DECL,
zack [Wed, 11 Aug 2004 06:28:00 +0000 (06:28 +0000)]
* stmt.c (expand_return): If asked to return the RESULT_DECL,
just call expand_value_return on result_rtl.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85795 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * builtins.def (BUILT_IN_STACK_ALLOC): Remove.
rth [Wed, 11 Aug 2004 04:16:07 +0000 (04:16 +0000)]
    * builtins.def (BUILT_IN_STACK_ALLOC): Remove.
        * builtins.c (expand_builtin) <BUILT_IN_STACK_ALLOC>: Remove.
        * dwarf2out.c (loc_descriptor): Handle PARALLEL here ...
        (add_location_or_const_value_attribute): ... not here.  Use
        loc_descriptor_from_tree if possible.
        (loc_descriptor_from_tree_1): Rename from loc_descriptor_from_tree.
        Simplify address handling.  Handle DECL_VALUE_EXPR.  Handle register
        values specially.
        (loc_descriptor_from_tree): New.  Update callers.
        * expr.c (expand_var): Ignore DECL_VALUE_EXPR variables.
        * gimplify.c (gimplify_decl_expr): Lower variable sized types to
        pointer plus dereference.  Set DECL_VALUE_EXPR.  Set save_stack.
        (gimplify_call_expr): Do not recognize BUILT_IN_STACK_ALLOC
        and BUILT_IN_STACK_RESTORE.
        (gimplify_expr): Lower DECL_VALUE_EXPR decls.
        * stmt.c (expand_stack_alloc): Remove.
        * tree-mudflap.c (mx_register_decls): Don't look for
        BUILT_IN_STACK_ALLOC.
        * tree-nested.c (convert_local_reference): Likewise.
        * tree.h (DECL_VALUE_EXPR): New.
ada/
        * utils.c (gnat_install_builtins): Remove __builtin_stack_alloc,
        add __builtin_alloca.
fortran/
        * f95-lang.c (gfc_init_builtin_functions): Remove
         __builtin_stack_alloc, add __builtin_alloca.
        * trans-array.c (gfc_trans_auto_array_allocation): Use DECL_EXPR.
        * trans-decl.c (gfc_trans_auto_character_variable): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85794 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config-lang.in (boot_language): Yes.
rth [Wed, 11 Aug 2004 04:10:11 +0000 (04:10 +0000)]
    * config-lang.in (boot_language): Yes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85793 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * stor-layout.c (round_up): Check for 0/1 before dividing.
rth [Wed, 11 Aug 2004 04:00:04 +0000 (04:00 +0000)]
    * stor-layout.c (round_up): Check for 0/1 before dividing.
        (round_down): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85792 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * tree-tailcall.c (suitable_for_tail_opt_p): Also check DECL_EXTERNAL.
rth [Wed, 11 Aug 2004 03:56:58 +0000 (03:56 +0000)]
    * tree-tailcall.c (suitable_for_tail_opt_p): Also check DECL_EXTERNAL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85791 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * configure.in (arm*-*-eabi*): New target.
mmitchel [Wed, 11 Aug 2004 02:50:14 +0000 (02:50 +0000)]
* configure.in (arm*-*-eabi*): New target.
* configure: Regenerate.

* configure.ac (arm*-*-eabi*): New target.
(arm*-*-symbianelf*): Likewise.
* configure: Regenerated.

* config.gcc (arm*-*-eabi*): New target.
* defaults.h (TARGET_LIBGCC_FUNCS): New macro.
(TARGET_LIB_INT_CMP_BIASED): Likewise.
* expmed.c (expand_divmod): Try a two-valued divmod function as a
last resort.
* gthr.h: Remove bogus tokens at end of #pragma.
* optabs.c (expand_twoval_binop_libfunc): New function.
(prepare_cmp_insn): Handle the !TARGET_LIB_INT_CMP_BIASED case.
(prepare_float_lib_cmp): Try reversing the condition.
(debug_optab_libfuncs): New function.
* optabs.h (expand_twoval_binop_libfunc): Declare.
* config/arm/arm.c (arm_init_libfuncs): New function.
(arm_compute_initial_eliminatino_offset): Return HOST_WIDE_INT.
(TARGET_INIT_LIBFUNCS): Define it.
* config/arm/arm.h (TARGET_BPABI): New macro.
* config/arm/arm-protos.h
(arm_compute_initial_elimination_offset): Return HOST_WIDE_INT.
* config/arm/bpabi.S: New file.
* config/arm/bpabi.c: Likewise.
* config/arm/bpabi.h: Likewise.
* config/arm/ieee754-df.S (__aeabi_dneg): New function or alias.
(__aeabi_drsub): Likewise.
(__aeabi_dsub): Likewise.
(__aeabi_dadd): Likewise.
(__aeabi_ui2d): Likewise.
(__aeabi_i2d): Likewise.
(__aeabi_f2d): Likewise.
(__aeabi_dmul): Likewise.
(__aeabi_ddiv): Likewise.
(__aeabi_cdrcmple): Likewise.
(__aeabi_cdcmpeq): Likewise.
(__aeabi_cdcmple): Likewise.
(__aeabi_dcmpeq): Likewise.
(__aeabi_dcmplt): Likewise.
(__aeabi_dcmple): Likewise.
(__aeabi_dcmpge): Likewise.
(__aeabi_dcmpgt): Likewise.
(__aeabi_dcmpun): Likewise.
(__aeabi_d2iz): Likewise.
(__aeabi_d2uiz): Likewise.
(__aeabi_d2f): Likewise.
* config/arm/ieee754-sf.S (__aeabi_fneg): New function or alias.
(__aeabi_frsub): Likewise.
(__aeabi_fsub): Likewise.
(__aeabi_fadd): Likewise.
(__aeabi_ui2f): Likewise.
(__aeabi_i2f): Likewise.
(__aeabi_fmul): Likewise.
(__aeabi_fdiv): Likewise.
(__aeabi_cfrcmple): Likewise.
(__aeabi_cfcmpeq): Likewise.
(__aeabi_cfcmple): Likewise.
(__aeabi_fcmpeq): Likewise.
(__aeabi_fcmplt): Likewise.
(__aeabi_fcmple): Likewise.
(__aeabi_fcmpge): Likewise.
(__aeabi_fcmpgt): Likewise.
(__aeabi_fcmpun): Likewise.
(__aeabi_f2iz): Likewise.
(__aeabi_f2uiz): Likewise.
* config/arm/lib1funcs.asm (ARM_CALL): New macro.
(__aeabi_uidivmod): New function or alias.
(__aeabi_idivmod): Likewise.
(__aeabi_idiv0): Likewise.
(__aeabi_ldiv0): Likewise.
(__aeabi_llsr): Likewise.
(__aeabi_lasr): Likewise.
(__aeabi_llsl): Likewise.
(bpabi.S): Include it.
* config/arm/libgcc-bpabi.ver: New file.
* config/arm/symbian.h (ARM_DEFAULT_ABI): Remove.
(LINK_SPEC): Remove.
* config/arm/t-arm-elf (LIB1ASMFUNCS): Add __aeabi_lcmp and
__aeabi_ulcmp.
* config/arm/t-bpabi: New file.
* doc/tm.texi (TARGET_LIBGCC_FUNCS): New entry.
(TARGET_LIB_INT_CMP_BIASED): Likewise.

* gcc.dg/testsuite/gcc.dg/arm-eabi1.c: New test.
* gcc.dg/dll-2.c: Fix dg-require syntax.
* gcc.misc-tests/arm-isr.c (abort): Declare.
(exit): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85788 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/rs6000/rs6000-protos.h (expand_block_clear): Declare.
dje [Wed, 11 Aug 2004 02:40:45 +0000 (02:40 +0000)]
    * config/rs6000/rs6000-protos.h (expand_block_clear): Declare.
        * config/rs6000/rs6000.md (clrmemsi): New pattern.
        * config/rs6000/rs6000.c (expand_block_clear): New function.
        (expand_block_move): Convert alignment to bits.  Use SImode and
        HImode for unaligned addresses if not STRICT_ALIGNMENT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85787 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-11 Kelley Cook <kcook@gcc.gnu.org>
kcook [Wed, 11 Aug 2004 00:56:23 +0000 (00:56 +0000)]
2004-08-11  Kelley Cook  <kcook@gcc.gnu.org>

PR bootstrap/16164
* Makefile.am: Force fastjar.info to be built in build directory.
* Makefile.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85782 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoDaily bump.
gccadmin [Wed, 11 Aug 2004 00:16:27 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85780 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR c++/16971
mmitchel [Wed, 11 Aug 2004 00:14:37 +0000 (00:14 +0000)]
PR c++/16971
* parser.c (cp_parser_init_declarator): Robustify.

PR c++/16971
* g++.dg/parse/crash16.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85776 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoHot/cold partitioning update, sub-patch: fix alignment problems
ctice [Tue, 10 Aug 2004 21:49:49 +0000 (21:49 +0000)]
Hot/cold partitioning update, sub-patch: fix alignment problems

2004-08-10  Caroline Tice  <ctice@apple.com

        * varasm.c (unlikely_section_label): New global variable.
        (unlikely_text_section_name): New global variable.
        (text_section):  Remove alignment statement.
        (unlikely_text_section): Remove alignment statement; use
        unlikely_section_label rather than hard-coded string.
        (assemble_start_function): Initialize unlikely_section_label and
        unlikely_text_section_name;  make sure cold section is properly
        aligned at start of function; output unlikely_section_label if
        appropriate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85771 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/s390/s390-protos.h (s390_canonicalize_comparison): Declare.
uweigand [Tue, 10 Aug 2004 21:46:33 +0000 (21:46 +0000)]
* config/s390/s390-protos.h (s390_canonicalize_comparison): Declare.
* config/s390/s390.c (s390_canonicalize_comparison): New function.
* config/s390/s390.h (CANONICALIZE_COMPARISON): Define.
* config/s390/s390.md ("*tmdi_ext", "*tmsi_ext", "*tmqisi_ext",
"*tmqidi_ext", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem"): Remove.
("*tmqi_mem"): Remove SUBREG from pattern.
("*anddi3_cconly"): Prevent accidentally matching TM pattern.
("*andsi3_cconly"): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85770 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-10 H.J. Lu <hongjiu.lu@intel.com>
hjl [Tue, 10 Aug 2004 21:40:02 +0000 (21:40 +0000)]
2004-08-10  H.J. Lu  <hongjiu.lu@intel.com>

PR target/16909
* config/i386/i386.md (*strsetdi_rex_1): Use DI instead of SI.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85769 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-10 Janis Johnson <janis187@us.ibm.com>
janis [Tue, 10 Aug 2004 21:35:09 +0000 (21:35 +0000)]
2004-08-10  Janis Johnson  <janis187@us.ibm.com>

* doc/sourcebuild.texi (compat testing): Document available test
framework commands.  Use the preferred spelling of DejaGnu.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85768 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-10 Daniel Berlin <dberlin@dberlin.org>
dberlin [Tue, 10 Aug 2004 20:43:05 +0000 (20:43 +0000)]
2004-08-10  Daniel Berlin <dberlin@dberlin.org>

* lambda.h: Add matrix type, and prototypes for remainder of
matrix and vector functions.
(lambda_vector_mult_const): New function.
(lambda_vector_negate): Ditto.
(lambda_vector_add): Ditto.
(lambda_vector_add_mc): Ditto.
(lambda_vector_copy): Ditto.
(lambda_vector_zerop): Ditto.
(lambda_vector_equal): Ditto.
(lambda_vector_min_nz): Ditto.
(lambda_vector_first_nz): Ditto.
(lambda_vector_matrix_mult): Ditto.
* lambda-mat.c: New file.
* Makefile.in (lambda-mat.o): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85767 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-10 Andrew MacLeod <amacleod@redhat.com>
amacleod [Tue, 10 Aug 2004 18:31:26 +0000 (18:31 +0000)]
2004-08-10  Andrew MacLeod  <amacleod@redhat.com>

* tree-cfg.c (bsi_insert_before, bsi_insert_after): Call modify_stmt
after linking stmt into the program.
(bsi_remove): Don't call modify_stmt.
* tree-complex.c (update_complex_assignment,
expand_complex_comparison): Call modify_stmt after changing the stmt.
* tree-outof-ssa.c (rewrite_trees): Call modify_stmt only if not
removing the stmt.
* tree-ssa-ccp.c (substitute_and_fold): Call modify_stmt after changing
the stmt, and only if needed.
* tree-ssa-dom.c (thread_across_edge): Pass no annotation for a dummy
expression.
(simplify_rhs_and_lookup_avail_expr): Don't take an annotation param.
(simplify_cond_and_lookup_avail_expr): Use modify_stmt.
(simplify_switch_and_lookup_avail_expr): Don't take an annotation param.
(eliminate_redundant_computations): Don't pass an annotation. Call
modify_stmt rather than setting the annotation directly.
(record_equivalences_from_stmt): Remove unused local 'j'.
(cprop_operand): Take a stmt rather than an annotation as a parameter.
Call modify_stmt.
(cprop_into_stmt): Pass stmt rather than annotation.
(update_rhs_and_lookup_avail_expr): Call modify_stmt.
* tree-ssa-loop-im.c (schedule_sm): Call get_stmt_ann rather than
modify_stmt.
* tree-ssa.c (propagate_into_addr): Dont call modify_stmt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85765 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR middle-end/16948
jason [Tue, 10 Aug 2004 18:02:48 +0000 (18:02 +0000)]
    PR middle-end/16948
        * function.c (expand_function_start): Handle DECL_BY_REFERENCE on
        the RESULT_DECL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85764 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * function.c (expand_function_start): Handle DECL_BY_REFERENCE on
jason [Tue, 10 Aug 2004 18:02:18 +0000 (18:02 +0000)]
    * function.c (expand_function_start): Handle DECL_BY_REFERENCE on
        the RESULT_DECL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85763 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * tree-vn.c (val_expr_pair_expr_eq): Compare vuses, to match the
geoffk [Tue, 10 Aug 2004 17:57:41 +0000 (17:57 +0000)]
* tree-vn.c (val_expr_pair_expr_eq): Compare vuses, to match the
hash function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85760 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/mips/mips.md: New reciprocal square root patterns that
sayle [Tue, 10 Aug 2004 17:43:02 +0000 (17:43 +0000)]
* config/mips/mips.md: New reciprocal square root patterns that
match sqrt(1.0/x) in addition to the existing 1.0/sqrt(x) insns.

* gcc.dg/mips-rsqrt-1.c: New test case.
* gcc.dg/mips-rsqrt-2.c: New test case.
* gcc.dg/mips-rsqrt-3.c: New test case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85759 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/arm/arm-protos.h (arm_set_return_address,
pbrook [Tue, 10 Aug 2004 16:22:47 +0000 (16:22 +0000)]
* config/arm/arm-protos.h (arm_set_return_address,
thumb_set_return_address): Add prototypes.
* config/arm/arm.h (ARM_FT_EXCEPTION_HANDLER): Remove.
* config/arm/arm.c (arm_compute_func_type,
use_return_insn, arm_compute_save_reg0_reg12_mask,
arm_compute_save_reg_mask, arm_output_function_prologue,
arm_output_epilogue): Replace ARM_FT_EXCEPTION_HANDLER with
current_function_calls_eh_return.
(thumb_exit, thumb_pushpop, thumb_unexpanded_epilogue): Replace
old eh code.
(arm_set_return_address, thumb_set_return_address): New functions.
* config/arm/arm.h (MUST_USE_SJLJ_EXCEPTIONS, DWARF2_UNWIND_INFO,
ARM_EH_STACKADJ_REGNUM, EH_RETURN_STACKADJ_RTX): Define.
* config/arm/arm.md (VUNSPEC_EH_RETURN): Add.
(epilogue): Use the stackadj register.
(eh_return, arm_eh_return, thumb_eh_return): New pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85757 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-10 Bryce McKinlay <mckinlay@redhat.com>
bryce [Tue, 10 Aug 2004 15:41:15 +0000 (15:41 +0000)]
2004-08-10  Bryce McKinlay  <mckinlay@redhat.com>

* java-gimplify.c (java_gimplify_new_array_init): Use
create_tmp_var. Don't create BLOCK here or call
java_gimplify_block.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85756 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-10 Andrew Haley <aph@redhat.com>
aph [Tue, 10 Aug 2004 14:26:56 +0000 (14:26 +0000)]
2004-08-10  Andrew Haley  <aph@redhat.com>

        * testsuite/libjava.lang/err14.java: New file.
        * testsuite/libjava.lang/err14.out: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85754 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-10 Andrew Haley <aph@redhat.com>
aph [Tue, 10 Aug 2004 14:24:00 +0000 (14:24 +0000)]
2004-08-10  Andrew Haley  <aph@redhat.com>

* src/x86/ffi64.c (ffi_prep_args ): 8-align all stack arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85753 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-10 Andrew Haley <aph@redhat.com>
aph [Tue, 10 Aug 2004 14:21:05 +0000 (14:21 +0000)]
2004-08-10  Andrew Haley  <aph@redhat.com>

* testsuite/libjava.lang/err14.java: New file.
* testsuite/libjava.lang/err14.out: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85752 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-10 Victor Leikehman <lei@il.ibm.com>
pbrook [Tue, 10 Aug 2004 13:34:04 +0000 (13:34 +0000)]
2004-08-10  Victor Leikehman  <lei@il.ibm.com>

* io/list_read.c (namelist_read): Convert variable names
to lower case, so that mixed-case names are recognized.
Don't read beyond terminating slash.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85751 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR target/3144
jakub [Tue, 10 Aug 2004 13:28:26 +0000 (13:28 +0000)]
PR target/3144
* expr.c (move_by_pieces_ninsns): Add max_size argument.
(MOVE_BY_PIECES_P): Pass MOVE_MAX_PIECES + 1 to it.
(CLEAR_BY_PIECES_P): Pass STORE_MAX_PIECES + 1 to it.
(STORE_BY_PIECES_P): Define similarly to CLEAR_BY_PIECES_P,
but using MOVE_RATIO.
(move_by_pieces): Pass max_size to move_by_pieces_ninsns.
(can_store_by_pieces): Change max_size type to unsigned int.
(store_by_pieces_1): Likewise.  Pass max_size to
move_by_pieces_ninsns.
* config/s390/s390.h (STORE_BY_PIECES_P): Define.
* config/sh/sh.c (MOVE_BY_PIECES_P): Pass MOVE_MAX_PIECES + 1
to move_by_pieces_ninsns.
(STORE_BY_PIECES_P): Define.
* config/ns32k/ns32k.h (STORE_BY_PIECES_P): Pass STORE_MAX_PIECES + 1
to move_by_pieces_ninsns.
* doc/tm.texi (STORE_BY_PIECES_P): Document changed default.

* config/i386/i386.h (CLEAR_RATIO): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85750 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-09 Paolo Bonzini <bonzini@gnu.org>
bonzini [Tue, 10 Aug 2004 08:38:29 +0000 (08:38 +0000)]
2004-08-09  Paolo Bonzini  <bonzini@gnu.org>

* expr.c (expand_expr_real_1): Add back code that was not dead.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85742 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-09 Andrew Pinski <apinski@apple.com>
pinskia [Tue, 10 Aug 2004 04:41:37 +0000 (04:41 +0000)]
2004-08-09  Andrew Pinski  <apinski@apple.com>

        * c-common.c (c_common_get_alias_set): Set the aliasing set of the type
        which is found to be compatible before returning the aliasing set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85741 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-09 H.J. Lu <hongjiu.lu@intel.com>
hjl [Tue, 10 Aug 2004 04:29:16 +0000 (04:29 +0000)]
2004-08-09  H.J. Lu  <hongjiu.lu@intel.com>

* java-tree.h (flag_deprecated): Removed.
* lang.opt (Wdeprecated): Use existing Var(warn_deprecated).
* parse.y (check_deprecation): Check warn_deprecated instead of
flag_deprecated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85740 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * trans-io.c (transfer_expr): Handle pointters.
pbrook [Tue, 10 Aug 2004 00:57:22 +0000 (00:57 +0000)]
* trans-io.c (transfer_expr): Handle pointters.
testsuite/
* gfortran.dg/der_io_1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85738 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoDaily bump.
gccadmin [Tue, 10 Aug 2004 00:16:15 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85733 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR fortran/16919
pbrook [Mon, 9 Aug 2004 23:32:59 +0000 (23:32 +0000)]
PR fortran/16919
* trans-array.c (gfc_add_loop_ss_code): Handle GFC_SS_COMPONENT.
(gfc_conv_array_index_offset): Allow "temporary" with nonzero delta.
(gfc_trans_preloop_setup, gfc_trans_scalarized_loop_boundary):
Handle GFC_SS_COMPONENT.
(gfc_conv_ss_startstride): Ditto.  Set ss->shape.
(gfc_conv_loop_setup): Tweak commends. Remove dead code.
Use ss->shape.
(gfc_conv_array_initializer): Call specific initializer routines.
* trans-expr.c (gfc_trans_structure_assign): New function.
(gfc_trans_subarray_assign): New function.
(gfc_trans_subcomponent_assign): New fucntion
(gfc_conv_structure): Use them.
* trans.h (gfc_ss_type): Add GFC_SS_COMPONENT.
(gfc_ss): Add shape.
testsuite/
* gfortran.dg/der_array_1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85730 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * ggc-zone.c (struct alloc_zone): Add statistics counters.
drow [Mon, 9 Aug 2004 23:11:08 +0000 (23:11 +0000)]
* ggc-zone.c (struct alloc_zone): Add statistics counters.
(always_collect): New flag.
(ggc_alloc_zone_1): Update statistics support.  Don't include
overhead in allocated counter.
(sweep_pages): Update allocated counter for large pages.  Don'y
include overhead.
(ggc_collect_1): Always collect.
(ggc_collect): Honor always_collect flag.  Sum all zones to decide
whether to collect.
(SCALE, LABEL): New macros.
(ggc_print_statistics): Add statistics support.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85729 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * expmed.c (sdiv_pow2_cheap, smod_pow2_cheap): Change type to bool.
sayle [Mon, 9 Aug 2004 22:36:39 +0000 (22:36 +0000)]
* expmed.c (sdiv_pow2_cheap, smod_pow2_cheap): Change type to bool.
(init_expmed): Fix potential overrun problem with "all.reg".
(expand_sdiv2_pow2): Add an alternate implementation for signed
division, if the target provides a suitable conditional move insn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85728 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * gcc.dg/cpp/assert4.c: _AIX asserts #system(unix).
dje [Mon, 9 Aug 2004 22:01:05 +0000 (22:01 +0000)]
* gcc.dg/cpp/assert4.c: _AIX asserts #system(unix).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85726 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * intrinsics/c99_functions.c (nextafterf): New implementation that
sayle [Mon, 9 Aug 2004 21:09:41 +0000 (21:09 +0000)]
* intrinsics/c99_functions.c (nextafterf): New implementation that
works correctly with denormalized numbers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85724 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * unwind-dw2.c (uw_install_context_1): Update target saved stack
pbrook [Mon, 9 Aug 2004 20:31:41 +0000 (20:31 +0000)]
* unwind-dw2.c (uw_install_context_1): Update target saved stack
pointer.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85723 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * ggc-common.c (ggc_rlimit_bound): Don't check RSS limit.
geoffk [Mon, 9 Aug 2004 20:19:30 +0000 (20:19 +0000)]
* ggc-common.c (ggc_rlimit_bound): Don't check RSS limit.
Check DATA limit only if there's no AS limit.  Ignore insanely
low DATA limits.
(ggc_min_heapsize_heuristic): Don't divide AS or RSS limits by 8,
but take care that the AS limit isn't overrun.
* doc/invoke.texi: Update documentation of min-heapsize parameter.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85722 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * Makefile.in (OBJC-common): Add tree-ssa-threadupdate.c
law [Mon, 9 Aug 2004 19:13:07 +0000 (19:13 +0000)]
    * Makefile.in (OBJC-common): Add tree-ssa-threadupdate.c
        (tree-ssa-threadupdate.o): Add dependencies.
        * tree-ssa-threadupdate.c: New file.
        * tree-flow.h (incoming_edge_threaded): New flag in block annotation.
        (rewrite_vars_out_of_ssa): Remove prototype.
        (cleanup_tree_cfg): Returns a bool.
        * tree.h (thread_through_all_blocks): Prototype.
        * tree-outof-ssa.c  (SSANORM_*): Move into here.
        (remove_ssa_form): Now static.
        (rewrite_vars_out_of_ssa): Kill.
        * tree-ssa-live.c (register_ssa_partitions_for_vars): Kill.
        * tree-ssa-live.h (SSANORM_*): Moved into tree-outof-ssa.c.
        (remove_ssa_form, register_partitions_for_vars): Kill declarations.
        * tree-cfg.c (cleanup_tree_cfg): Return a value indicating if
        anything was changed.
        * tree-phinodes.c (add_phi_arg): Get the block for the PHI
        from the PHI's annotation rather than the edge associated with
        the new argument.
        * tree-ssa-dom.c (redirection_edges): Kill.
        (redirect_edges_and_update_ssa_graph): Kill.
        (tree_ssa_dominator_optimize): Do not reset forwardable flag
        for blocks anymore.  Do not initialize redirection_edges.
        Call thread_through_all_blocks.  Simplify code for cleanup
        of the CFG and iterating.  No longer call cleanup_tree_cfg
        outside the iteration loop.
        (thread_across_edge): No longer mess with forwardable blocks.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85721 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * explow.c (memory_address): Use memory_address_p.
zack [Mon, 9 Aug 2004 17:43:17 +0000 (17:43 +0000)]
* explow.c (memory_address): Use memory_address_p.
* recog.c (general_operand): Likewise.
* regrename.c: No need to define REG_OK_STRICT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85720 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoAyee, missed a file.
steven [Mon, 9 Aug 2004 17:05:25 +0000 (17:05 +0000)]
Ayee, missed a file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85719 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * timevar.def (TV_CPROP1, TV_CPROP2, TV_PRE, TV_HOIST, TV_LSM):
steven [Mon, 9 Aug 2004 16:58:42 +0000 (16:58 +0000)]
* timevar.def (TV_CPROP1, TV_CPROP2, TV_PRE, TV_HOIST, TV_LSM):
New timers.
* gcse.c: Include timevar.h.
(const_prop_count, copy_prop_count): Rename to global_const_prop_count
and global_copy_prop_count.
(local_const_prop_count, local_copy_prop_count): New static globals.
(gcse_main): Set the right timevar for each pass.
(cprop_jump): Increment global_const_prop_count when a constant is
propagated.  Add "GLOBAL" to dump output.
(cprop_insn): Increment global_const_prop_count when a constant is
propagated, or global_copy_prop_count when a copy is propagated.
(do_local_cprop): Likewise for local_const_prop_count and
local_copy_prop_count.
(one_cprop_pass): Initialize const/cprop counters to zero.
Print out results of local and global const/cprop separately.
(bypass_block): Break over-length line.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85718 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-09-09 Victor Leikehman <lei@il.ibm.com>
pbrook [Mon, 9 Aug 2004 14:34:39 +0000 (14:34 +0000)]
2004-09-09  Victor Leikehman  <lei@il.ibm.com>

* m4/matmul.m4, m4/matmull.m4, intrinsics/eoshift0.c,
intrinsics/eoshift2.c, intrinsics/transpose_generic.c:
Allocate space if return value has NULL in its data field.
* generated/*.c: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85717 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-09 Paolo Carlini <pcarlini@suse.de>
paolo [Mon, 9 Aug 2004 13:51:33 +0000 (13:51 +0000)]
2004-08-09  Paolo Carlini  <pcarlini@suse.de>

* include/bits/stl_bvector.h: Trivial formatting fixes.

2004-08-09  Paolo Carlini  <pcarlini@suse.de>

* src/ios.cc (ios_base::_M_grow_words): Uglify the names.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85716 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agofix typo
jason [Mon, 9 Aug 2004 13:18:56 +0000 (13:18 +0000)]
fix typo

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85715 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-09 Thomas Quinot <quinot@act-europe.fr>
charlet [Mon, 9 Aug 2004 12:24:25 +0000 (12:24 +0000)]
2004-08-09  Thomas Quinot  <quinot@act-europe.fr>

* g-socket.adb (Abort_Selector): Initialize Buf to prevent valgrind
from complaining on potential uninitialized reference.
Change calls to GNAT.Sockets.Thin.Is_Socket_In_Set to account for
new specification and test explicitly for non-zero return value.

* g-socthi.ads (Is_Socket_In_Set): Declare imported function as
returning C.int, to avoid using a derived boolean type.

* exp_ch5.adb (Make_Tag_Ctrl_Assignments): Use
Duplicate_Subexpr_No_Checks in preference to direct use of
Remove_Side_Effects and New_Copy_Tree.
Clear Comes_From_Source on prefix of 'Size attribute reference.

* g-socthi.adb, g-socthi-vms.adb, g-socthi-mingw.adb,
g-socthi-vxworks.adb: Change calls to
GNAT.Sockets.Thin.Is_Socket_In_Set to account for new specification
and test explicitly for non-zero return value.

* g-socthi-vms.ads, g-socthi-mingw.ads, g-socthi-vxworks.ads:
(Is_Socket_In_Set): Declare imported function as returning C.int, to
avoid using a derived boolean type.

2004-08-09  Albert Lee  <lee@gnat.com>

* system-irix-n32.ads: Refine tasking priority constants for IRIX.

2004-08-09  Pascal Obry  <obry@gnat.com>

* gnat_ugn.texi: Document new way to build DLLs on Windows using
GCC's -shared option.

* mlib-tgt-mingw.adb (Build_Dynamic_Library): Pass GCC's options into
Options_2 parameter (options put after object files).

2004-08-09  Olivier Hainque  <hainque@act-europe.fr>

* decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Adjust condition to
ignore overflows on low and high bounds of an index to also account for
differences in signedness between sizetype and gnu_index_subtype.
These are as legitimate as the ones caused by a lower TYPE_PRECISION
on sizetype.

2004-08-09  Robert Dewar  <dewar@gnat.com>

* s-solita.ads, s-solita.adb: Minor reformatting

* gnat_rm.texi: Add documentation for pragma Profile (Restricted)
Move pragma Restricted_Run_Time, No_Run_Time, Ravenscar to new
obsolescent section
Add note that No_Implicit_Conditionals does not suppress
run time constraint checks.

* vms_conv.ads: Minor reformatting

* s-secsta.adb: Use SS_Ptr instead of Mark_Id as stack pointer (cleanup
and necessary for following change).
(Mark): Return new format Mark_Id containing sec stack address
(Release): Use sec stack address from Mark_Id avoiding Self call

* s-secsta.ads: Define SS_Ptr to be used instead of Mark_Id as stack
pointer (cleanup and necessary for following change).
Define Mark_Id as record containing address of secondary stack, that way
Release does not need to find the stack again, decreasing the number of
calls to Self and improving efficiency.

* sem_util.ads: Add a ??? comment for Is_Local_Variable_Reference

* sem_ch5.adb (Analyze_Case_Statement): Add circuitry to track value of
case variable into the individual case branches when possible.

* sem_ch11.adb: Minor reformatting

* prj.ads: Correct spelling of suffixs

* prj-nmsc.adb: Minor reformatting
Correct spelling suffixs throughout (also in identifiers)

* freeze.adb: Minor spelling correction

* exp_ch2.adb: Cleanups to handling of Current_Value
(no functional effect).

* bld.adb: Correct spelling of suffixs

* einfo.adb (Enclosing_Dynamic_Scope): Defend against junk argument

2004-08-09  Ed Schonberg  <schonberg@gnat.com>

PR ada/15408

* sem_ch7.adb (Install_Private_Declarations): In the body of the
package or of a child, private entities are both immediately_visible
and not hidden.

2004-08-09  Ed Schonberg  <schonberg@gnat.com>

* sem_eval.adb (Eval_Integer_Literal): If the context is Any_Integer,
there are no range checks on the value of the literal.

* exp_ch7.adb (Insert_Actions_In_Scope_Around): If the node being
wrapped is the triggering alternative of an asynchronous select, action
statements mustbe inserted before the select itself.

* sem_attr.adb (Analyze_Attribute, case 'Size): Handle properly the
case where the prefix is a protected function call.
(Resolve_Attribute, case 'Access): The attribute reference on a
subprogram is legal in a generic body if the subprogram is declared
elsewhere.

2004-08-09  Vincent Celier  <celier@gnat.com>

* makegpr.adb (Build_Library): Link with g++ if C++ is one of the
languages, otherwise building the library may fail with unresolved
symbols.
(Compile_Sources): Do not build libraries if -c switch is used

* gnatlink.adb (Process_Args): New switches -M and -Mmap
(Write_Usage): If map file creation is supported, output new switches
-M and -Mmap.
(Gnatlink): When -M is specified, add the necessary switch(es) to the
gcc call, when supported.

* Makefile.in: Added indepsw.o to the object list for gnatlink
Specified the AIX, GNU/Linux and Windows versions of indepsw.adb

* indepsw-aix.adb, indepsw-linux.adb, indepsw-mingw.adb,
indepsw.adb, indepsw.ads: New files.

2004-08-09  Bernard Banner  <banner@gnat.com>

* system-vxworks-x86.ads, s-vxwork-x86.ads: New files.

* Makefile.in: add section for vxworks x86

2004-08-09  Hristian Kirtchev  <kirtchev@gnat.com>

* exp_ch3.adb (Build_Init_Statements): Add extra condition to deal with
per-object constrained components where the discriminant is of an
Access type.
(Build_Record_Init_Proc): Add condition to prevent the inheritance of
the parent initialization procedure for derived Unchecked_Unions.
Instead, derived Unchecked_Unions build their own initialization
procedure.
(Build_Variant_Record_Equality): Implement Unchecked_Union equality.
Check the body of the subprogram for details.
(Freeze_Record_Type): Prevent the inheritance of discriminant checking
functions for derived Unchecked_Union types by introducing a condition.
Allow the creation of TSS equality functions for Unchecked_Unions.
(Make_Eq_Case): Rename formal parameter Node to E in function signature.
Add formal parameter Discr to function signature. Discr is used to
control the generated case statement for Unchecked_Union types.
(Make_Eq_If): Rename formal parameter Node to E in function signature.

* exp_ch4.adb (Build_Equality_Call): Implement equality calls for
Unchecked_Unions.
Check the body of the subprogram for details.
(Expand_Composite_Equality): Augment composite type equality to include
correct handling of Unchecked_Union components.
(Expand_N_In): Add condition to detect illegal membership tests when the
subtype mark is a constrained Unchecked_Union and the expression lacks
inferable discriminants, and build a Raise_Program_Error node.
(Expand_N_Op_Eq): Add function Has_Unconstrained_UU_Component. Used
to detect types that contain components of unconstrained Unchecked_Union
subtype. Add condition to detect equality between types that have an
unconstrained Unchecked_Union component, and build a Raise_Program_Error
node. Add condition to detect equality between Unchecked_Union types
that lack inferable discriminants, and build a Raise_Program_Error node.
Otherwise build a TSS equality function call.
(Expand_N_Type_Conversion): Add condition to detect illegal conversions
from a derived Unchecked_Union to an unconstrained non-Unchecked_Union
with the operand lacking inferable discriminants, and build a Raise_
Program_Error node.
(Expand_Record_Equality): Remove guard that prevents Unchecked_Union
composite equality.
(Has_Inferable_Discriminants): Implement new predicate for objects and
expressions of Unchecked_Union type. Check the body of subprogram for
details.
(Has_Unconstrained_UU_Components): Add function
Component_Is_Unconstrained_UU. It is used to detect whether a single
component is of an unconstrained Unchecked_Union subtype. Add function
Variant_Is_Unconstrained_UU. It is used to detect whether a single
component inside a variant is of an unconstrained Unchecked_Union type.

* exp_ch5.adb (Expand_Assign_Record): Add condition to copy the
inferred discriminant values. Add condition to generate a case
statement with an inferred discriminant as the switch.
(Make_Component_List_Assign): Introduce a Boolean flag that determines
the behaviour of the subprogram in the presence of an Unchecked_Union.
Add condition to trigger the usage of the inferred discriminant value
as the generated case statement switch.
(Make_Field_Assign): Introduce a Boolean flag that determines the
behaviour of the subprogram in the presence of an Unchecked_Union. Add
condition to trigger the usage of the inferred discriminant value as
the right-hand side of the generated assignment.

* exp_ch6.adb (Expand_Call): Add condition to skip extra actual
parameter generation when dealing with Unchecked_Unions.

* checks.adb (Apply_Discriminant_Check): Do not apply discriminant
checks for Unchecked_Unions.

* einfo.ads: Update comment on usage of flag Has_Per_Object_Constraint

* exp_attr.adb (Expand_N_Attribute_Reference): Produce
Raise_Program_Error nodes for the execution of Read and Write
attributes of Unchecked_Union types and the execution of Input and
Output attributes of Unchecked_Union types that lack default
discriminant values.

* sem_prag.adb (Analyze_Pragma): Remodel the analysis of pragma
Unchecked_Union. Add procedure Check_Component. It is used to inspect
per-object constrained components of Unchecked_Unions for being
Unchecked_Unions themselves. Add procedure Check_Variant. It is used to
check individual components withing a variant.

* sem_res.adb (Resolve_Comparison_Op): Remove guard that prevents
comparison of Unchecked_Unions.
(Resolve_Equality_OP): Remove guard that prevents equality between
Unchecked_Unions.

* sem_util.adb (Build_Component_Subtype): Add guard to prevent creation
of component subtypes for Unchecked_Union components.
(Get_Actual_Subtype): Add condition that returs the Unchecked_Union type
since it is the actual subtype.

* sem_ch12.adb (Instantiate_Type): Add condition to detect the correct
pass of Unchecked_Union subtypes as generic actuals to formal types
that lack known_discriminant_parts or that are derived Unchecked_Union
types, and do nothing. In any other case, produce an error message.

* sem_ch3.adb (Analyze_Component_Declaration): Add function
Contains_POC. It determines whether a constraint uses the discriminant
of an enclosing record type.
Add condition to detect per-object constrained component and set the
appropriate flag.
(Derived_Type_Declaration): Remove guard that prevents derivation from
Unchecked_Union types.
(Process_Subtype): Remove quard that prevents the creation of Unchecked_
Union subtypes.

* sem_ch4.adb (Analyze_Selected_Component): Correct the detection of
references to Unchecked_Union discriminants.

* sem_ch6.adb (Create_Extra_Formals): Add condition to skip extra
formal generation when dealing with Unchecked_Unions.
(Set_Actual_Subtypes): Add condition to prevent generation of actual
subtypes for Unchecked_Unions.

* sem_ch7.adb (Analyze_Package_Specification): Add procedure
Inspect_Unchecked_Union_Completion. It is used to detect incorrect
completions of discriminated partial views by Unchecked_Unions and
produce an error message.

2004-08-09  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

* trans.c (struct stmt_group): New field, GLOBAL.
(global_stmt_group, gnu_elab_proc_decl, build_unit_elab): Deleted.
(struct elab_info): New struct.
(elab_info_list, gnu_elab_proc_stack): New variables.
(Compilation_Unit_to_gnu): New procedure.
(gigi): Call it and also handle elaboration procs we've saved.
(gnat_init_stmt_group): Don't set global_stmt_group; instead initialize
global field from parent.
(gnat_to_gnu): Get decl from gnu_elab_proc_stack.
(gnat_to_gnu, case N_Compilation_Unit): Call Compilation_Unit_to_gnu.
(start_stmt_group): Initialize global field from parent.
(add_decl_expr): Set to global for current statement group.
(gnat_gimplify_expr, case NULL_EXPR): Add operand 0 to pre list, not
post.

* utils.c (global_bindings_p): True when no current_function_decl; no
longer check current_binding_level.

2004-08-09  Ben Brosgol  <brosgol@gnat.com>

* xgnatugn.adb: Added logic to deal with @ifset/@ifclear for edition
choice.

* gnat_rm.texi, gnat_ugn.texi: Added edition conditionalization logic.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85714 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-09 Paolo Bonzini <bonzini@gnu.org>
bonzini [Mon, 9 Aug 2004 07:24:23 +0000 (07:24 +0000)]
2004-08-09  Paolo Bonzini  <bonzini@gnu.org>

* gcc.dg/wchar_t-2.c: Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85713 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-09 Paolo Bonzini <bonzini@gnu.org>
bonzini [Mon, 9 Aug 2004 07:14:17 +0000 (07:14 +0000)]
2004-08-09  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.in (GTFILES): Remove stmt.c
(stmt.o): Do not depend on gt-stmt.h.
* emit-rtl.c (emit_line_note): Do not call
set_file_and_line_for_stmt.
* expr.c (expand_expr_real_1) <SWITCH_EXPR>: Let expand_case
do everything.
* function.c (free_after_parsing): Do not free STMT field.
(allocate_struct_function): Do not call init_stmt_for_function.
(assign_stack_temp_for_type): Do not accept values of keep
other than 0 or 1.
(init_temp_slots): Do not initialize removed variables.
* function.h (struct function): Remove STMT, X_TARGET_TEMP_SLOT_LEVEL
and X_VAR_TEMP_SLOT_LEVEL fields.
* rtl.h (set_file_and_line_for_stmt): Remove.
* stmt.c (struct nesting, ALLOC_NESTING, POPSTACK,
struct stmt_status, cond_stack, case_stack, nesting_stack,
nesting_depth, emit_locus, set_file_and_line_for_stmt,
same_case_target_p, init_stmt_for_function, emit_nop,
expand_start_cond, expand_start_elseif, expand_start_else,
expand_elseif, expand_end_cond): Remove.
(preserve_subexpressions_p): Remove references to CFUN->STMT.
(expand_start_case, expand_end_case_type): Remove, merge into...
(expand_case): ... this one, including other bits from
expand_expr_real_1.  Inline same_case_target_p.  Turn members
of CASE_STACK into local variables.
(emit_case_bit_tests): Inline same_case_target_p.
(add_case_node): Add HEAD argument, return new head of the list,
do not handle default label here.
* tree.h (expand_start_cond, expand_end_cond, expand_start_else,
expand_start_elseif, current_nesting_level, expand_start_case,
expand_end_case_type, expand_end_case, add_case_node,
init_stmt_for_function, expand_elseif): Remove prototypes.
(expand_case): Add prototype.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85712 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-09 Paolo Bonzini <bonzini@gnu.org>
bonzini [Mon, 9 Aug 2004 06:51:50 +0000 (06:51 +0000)]
2004-08-09  Paolo Bonzini  <bonzini@gnu.org>

* expr.c (expand_expr_real_1): Use optab_for_tree_code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85711 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-07-24 Paolo Bonzini <bonzini@gnu.org>
bonzini [Mon, 9 Aug 2004 06:46:42 +0000 (06:46 +0000)]
2004-07-24  Paolo Bonzini  <bonzini@gnu.org>

* expr.c (var_rtx): Remove.
(expand_expr_real_1) <LOOP_EXPR, EXIT_EXPR,
LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR, TRUTH_ANDIF_EXPR,
TRUTH_ORIF_EXPR, COMPOUND_EXPR, CONJ_EXPR, INIT_EXPR>:
Abort.
(expand_expr_real_1) <COND_EXPR>: Remove most special cases.
* optabs.c (emit_clr_insn, emit_0_to_1_insn): Remove.
* optabs.h (emit_clr_insn, emit_0_to_1_insn): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85710 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoDaily bump.
gccadmin [Mon, 9 Aug 2004 00:16:13 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85702 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR tree-optimization/12517
falk [Sun, 8 Aug 2004 23:17:23 +0000 (23:17 +0000)]
PR tree-optimization/12517
* gcc.c-torture/compile/pr12517.c: New test.

PR tree-optimization/12578
* gcc.c-torture/compile/pr12578.c: New test.

PR tree-optimization/12899
* gcc.c-torture/compile/pr12899.c: New test.

PR rtl-optimization/14692
* gcc.c-torture/compile/pr14692.c: New test.

PR tree-optimization/16461
* gcc.c-torture/compile/pr16461.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85698 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-08 Mostafa Hagog <mustafa@il.ibm.com>
hagog [Sun, 8 Aug 2004 21:35:53 +0000 (21:35 +0000)]
2004-08-08  Mostafa Hagog  <mustafa@il.ibm.com>
Ayal Zaks <zaks@il.ibm.com>

* common.opt (freschedule-modulo-scheduled-loops): New flag.
* final.c (final_scan_insn): Handle NOTE_DISABLE_SCHED_OF_BLOCK.
* modulo-sched.c (sms_schedule): Emit a note to disable scheduling
when -freschedule-modulo-scheduled-loops flag is not specified.
(sms_schedule_by_order, ps_insn_advance_column, add_node_to_ps,
add_node_to_ps, ps_has_conflicts, ps_add_node_check_conflicts):
More accurate placing of insn in row of partial schedule.
(ps_insn_find_column): New function.
* rtl.h (NOTE_DISABLE_SCHED_OF_BLOCK): New note.
* sched-rgn.c (sched_is_disabled_for_current_region_p): New.
(schedule_region): Use sched_is_disabled_for_current_region_p.
* docs/invoke.texi: Document -freschedule-modulo-scheduled-loops.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85696 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-08 Victor Leikehman <lei@il.ibm.com>
pbrook [Sun, 8 Aug 2004 12:28:25 +0000 (12:28 +0000)]
2004-08-08  Victor Leikehman  <lei@il.ibm.com>

* simplify.c (gfc_simplify_shape): Bugfix.
* expr.c (gfc_copy_shape_excluding): New function.
* gfortran.h (gfc_get_shape): Bugfix.
(gfc_copy_shape_excluding): Added declaration.
* iresolve.c (gfc_resolve_all, gfc_resolve_any, gfc_resolve_count,
gfc_resolve_cshift, gfc_resolve_eoshift, gfc_resolve_lbound,
gfc_resolve_ubound, gfc_resolve_transpose): Added compile
time resolution of shape.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85685 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agotreelang:
phython [Sun, 8 Aug 2004 04:47:17 +0000 (04:47 +0000)]
treelang:
2004-08-01  James A. Morrison  <phython@gcc.gnu.org>

        * Make-lang.in (TREE_BE_LIBS): Remove.
        (tree1): Depend on BACKEND and LIBDEPS.  Use BACKEND and LIBS instead
        of TREE_BE_LIBS.
        * parse.y: Add variable_defs_opt before statements_opt.
        Use tree_code_get_type instead of get_type_for_numeric_type.
        Reformat long lines.
        (parameters_opt): New rule.
        (function_prototype): Use parameters_opt.
        (return): Remove calls to print_token in error cases.  Use VOID_TYPE.
        (check_type_match): Use VOID_TYPE.
        * lex.l (update_lineno_charno): Ensure INPUT_LINE starts at 1.
        * tree1.c: Include version.h and cgraph.h
        (treelang_parse_file): Call cgraph_finalize_compilation_unit and
        cgraph_optimize.
        * treelang.h (item): Remove extraneous GTY.
        * treetree.h (get_type_for_numeric_type): Remove.
        * treetree.c: Include tree-dump.h, tree-iterator.h, tree-gimple.h,
        function.h, and cgraph.h.  Don't include rtl.h
        (keep_level_p): Remove.
        (tree_push_atomic_type_decl): Remove.
         (get_type_for_numeric_type): Remove.
        (tree_code_get_numeric_type): Remove.
        (global_bindings_p): Make static.
        (getdecls): Likewise.
        (insert_block): Likewise.
        (tree_code_if_start): Create a COND_EXPR and add it to the tree
        instead of creating rtl.
        (tree_code_if_else): Create a BIND_EXPR if any variables were created
        in the if statement.
        (tree_code_end_if): Likewise.
        (tree_code_create_function_prototype): Use tree_code_get_type.
        Don't use SET_DECL_ASSEMBLER_NAME.
        (tree_code_create_function_initial): Set DECL_ARTIFICIAL and
        DECL_IGNORING_P on RESULT_DECL.  Use tree_code_get_type.  Don't call
        layout_decl on RESULT_DECL.  Don't call rtl expand functions.
        (tree_code_create_function_wrapup): Don't call rtl expand functions.
        Create a BIND_EXPR for each function.  Dump original and gimplified
        copies of the function tree.  Gimplify function.
        (tree_code_create_variable): Use tree_code_get_type.  Don't call
        layout_decl or expand_decl.  Fold CONVERT_EXPRs.
        (tree_code_generate_return): Fold CONVERT_EXPRs and MODIFY_EXPRs.
        Add RETURN_EXPR to the current statement list.  Don't call rtl expand
        functions.
        (tree_code_output_expression_statement): Append CODE to current
        statement list.
        (tree_code_get_expression): Fold expressions.  Build a pointer to
        a FUNCTION_TYPE intead of the called functions return type.
        (struct binding_level): Add statement list STMTS.
        (getstmtlist): New Function.
        (pushlevel): Make static.  Allocate an empty statement list.
        (poplevel): Make static.  Don't clear BLOCK_NODE's BLOCK_VARS.
        Don't use DECL_ASSEMBLER_NAME.
        (tree_push_type_decl): Set TYPE_NAME of TYPE_NODE to ID.
        (treelang_init_decl_processing): Define basic types after unused types.
        Don't call tree_push_atomic_type_decl.
        (builtin_function): Don't call make_decl_rtl.
        (treelang_expand_function). New Function.

testsuite/treelang:
        * compile/vars_def.tree: New File.
        * compile/badreturn.tree: New File.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85684 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoDaily bump.
gccadmin [Sun, 8 Aug 2004 00:16:11 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85682 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoRevert:
jason [Sat, 7 Aug 2004 20:47:48 +0000 (20:47 +0000)]
Revert:
        * gimplify.c (gimplify_call_expr): Make return in memory explicit.
        (gimplify_modify_expr_rhs): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85676 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago Make return in memory explicit.
jason [Sat, 7 Aug 2004 17:40:10 +0000 (17:40 +0000)]
    Make return in memory explicit.
        * function.c (aggregate_value_p): Check DECL_BY_REFERENCE.
        (assign_parm_find_data_types): Remove code for old front end
        invisible reference handling.
        (assign_parms): Handle DECL_BY_REFERENCE on the RESULT_DECL.
        (expand_function_end): Likewise.
        * gimplify.c (gimplify_return_expr): Handle a dereferenced
        RESULT_DECL.
        * tree-inline.c (copy_body_r): Don't bother looking for &* anymore.
        (declare_return_variable): Handle DECL_BY_REFERENCE.
        * cp/cp-gimplify.c (is_invisiref_parm): Also handle RESULT_DECL.
        (cp_genericize_r): Use convert_from_reference.
        Don't dereference a RESULT_DECL directly inside a RETURN_EXPR.
        (cp_genericize): Handle the RESULT_DECL.  Unset TREE_ADDRESSABLE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85675 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-07 H.J. Lu <hongjiu.lu@intel.com>
hjl [Sat, 7 Aug 2004 17:31:30 +0000 (17:31 +0000)]
2004-08-07  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_expand_clrmem): Revert the last
change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85674 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-07 H.J. Lu <hongjiu.lu@intel.com>
hjl [Sat, 7 Aug 2004 16:34:00 +0000 (16:34 +0000)]
2004-08-07  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_expand_clrmem): Properly call
gen_strset for 64bit target.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85673 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/vxworks.h (HANDLE_SYSV_PRAGMA): Remove definition.
hainque [Sat, 7 Aug 2004 16:32:39 +0000 (16:32 +0000)]
* config/vxworks.h (HANDLE_SYSV_PRAGMA): Remove definition.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85672 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * gimplify.c (gimplify_call_expr): Make return in memory explicit.
jason [Sat, 7 Aug 2004 16:11:10 +0000 (16:11 +0000)]
    * gimplify.c (gimplify_call_expr): Make return in memory explicit.
        (gimplify_modify_expr_rhs): Likewise.
        * c-common.c (c_warn_unused_result): Check TREE_USED before
        warning about a CALL_EXPR with an unused value.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85671 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-07 Jonathan Wakely <redi@gcc.gnu.org>
paolo [Sat, 7 Aug 2004 15:31:50 +0000 (15:31 +0000)]
2004-08-07  Jonathan Wakely  <redi@gcc.gnu.org>
    Paolo Carlini  <pcarlini@suse.de>

* src/debug.cc (_Error_formatter::_M_print_string): In order
to print individual words from __string, _M_format_word can't
be called since may be just sprintf, thus ignoring completely
__n: instead, use memmove and append '\0' by hand.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85670 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-07 Paolo Carlini <pcarlini@suse.de>
paolo [Sat, 7 Aug 2004 13:48:31 +0000 (13:48 +0000)]
2004-08-07  Paolo Carlini  <pcarlini@suse.de>

* config/locale/generic/c_locale.h (__convert_from_v): Don't
use a default for __prec, assume __prec >= 0 and simplify.
* config/locale/gnu/c_locale.h (__convert_from_v): Likewise.
* include/bits/locale_facets.tcc (money_put<>::do_put(long double)):
Pass format "%.*Lf" + precision == 0, equivalent to "%.0Lf".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85669 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoDaily bump.
gccadmin [Sat, 7 Aug 2004 00:16:19 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85666 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-06 Janne Blomqvist <jblomqvi@cc.hut.fi>
pbrook [Fri, 6 Aug 2004 21:47:03 +0000 (21:47 +0000)]
2004-08-06  Janne Blomqvist  <jblomqvi@cc.hut.fi>

* intrinsic.c (add_subroutines): Add getenv and
get_environment_variable. (add_sym_5s): New function.
* intrinsic.h (gfc_resolve_get_environment_variable): Add
prototype.
* iresolve.c (gfc_resolve_get_environment_variable): New
function.
libgfortran/
* intrinsics/env.c: New file.
* Makefile.am: Add env.c to build.
* Makefile.in: Regenerate.
testsuite/
* gfortran.dg/getenv_1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85656 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * f95-lang.c (gfc_init_builtin_functions): Fix the number of
pbrook [Fri, 6 Aug 2004 20:45:14 +0000 (20:45 +0000)]
* f95-lang.c (gfc_init_builtin_functions): Fix the number of
__builtin_pow[f] arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85653 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-06 Steven G. Kargl <kargls@comcast.net>
pbrook [Fri, 6 Aug 2004 20:36:05 +0000 (20:36 +0000)]
2004-08-06  Steven G. Kargl  <kargls@comcast.net>

* arith.c: Add #define for model numbers.  Remove global GMP variables.
(natural_logarithm,common_logarithm,exponential,sine,
cosine,arctangent,hypercos,hypersine ): Remove.
(gfc_mpfr_to_mpz,gfc_set_model_kind,gfc_set_model): New functions.
(arctangent2,gfc_arith_init_1,gfc_arith_done_1
gfc_check_real_range, gfc_constant_result, gfc_range_check,
gfc_arith_uminus,gfc_arith_plus, gfc_arith_minus, gfc_arith_times,
gfc_arith_divide,complex_reciprocal,complex_pow_ui,
gfc_arith_power,gfc_compare_expr,compare_complex,gfc_convert_real,
gfc_convert_complex,gfc_int2real,gfc_int2complex,
gfc_real2int,gfc_real2real,gfc_real2complex,
gfc_complex2int,gfc_complex2real,gfc_complex2complex): Convert GMP
to MPFR, use new functions.
* arith.h: Remove extern global variables.
(natural_logarithm,common_logarithm,exponential, sine, cosine,
arctangent,hypercos,hypersine): Remove prototypes.
(arctangent2): Update prototype from GMP to MPFR.
(gfc_mpfr_to_mpz, gfc_set_model_kind,gfc_set_model): Add prototypes.
* dump-parse-tree.c (gfc_show_expr): Convert GMP to MPFR.
* expr.c (free_expr0,gfc_copy_expr): Convert GMP to MPFR.
* gfortran.h (GFC_REAL_BITS): Remove.
(arith): Add ARITH_NAN.
Include mpfr.h.  Define GFC_RND_MODE.
Rename GCC_GFORTRAN_H GFC_GFC_H.
(gfc_expr): Convert GMP to MPFR.
* module.c: Add arith.h, correct type in comment.
(mio_gmp_real): Convert GMP to MPFR.
(mio_expr):  Use gfc_set_model_kind().
* primary.c:  Update copyright date with 2004.
(match_real_constant,match_const_complex_part): Convert GMP to MPFR.
* simplify.c: Remove global GMP variables
(gfc_simplify_abs,gfc_simplify_acos,gfc_simplify_aimag,
gfc_simplify_aint,gfc_simplify_dint,gfc_simplify_anint,
gfc_simplify_dnint,gfc_simplify_asin,gfc_simplify_atan,
gfc_simplify_atan2,gfc_simplify_ceiling,simplify_cmplx,
gfc_simplify_conjg,gfc_simplify_cos,gfc_simplify_cosh,
gfc_simplify_dim,gfc_simplify_dprod,gfc_simplify_epsilon,
gfc_simplify_exp,gfc_simplify_exponent,gfc_simplify_floor,
gfc_simplify_fraction,gfc_simplify_huge,gfc_simplify_int,
gfc_simplify_ifix,gfc_simplify_idint,gfc_simplify_log,
gfc_simplify_log10,simplify_min_max,gfc_simplify_mod,
gfc_simplify_modulo,gfc_simplify_nearest,simplify_nint,
gfc_simplify_rrspacing,gfc_simplify_scale,
gfc_simplify_set_exponent,gfc_simplify_sign,gfc_simplify_sin,
gfc_simplify_sinh,gfc_simplify_spacing,gfc_simplify_sqrt,
gfc_simplify_tan,gfc_simplify_tanh,gfc_simplify_tiny,
gfc_simplify_init_1,gfc_simplify_done_1):  Convert GMP to MPFR.
Use new functions.
* trans-const.c (gfc_conv_mpfr_to_tree): Rename from
gfc_conv_mpf_to_tree.  Convert it to use MPFR
(gfc_conv_constant_to_tree): Use it.
* trans-const.h: Update prototype for gfc_conv_mpfr_to_tree().
* trans-intrinsic.c: Add arith.h, remove gmp.h
(gfc_conv_intrinsic_aint,gfc_conv_intrinsic_mod): Convert GMP to MPFR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85652 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoAdd myself as Darwin maintainer.
dalej [Fri, 6 Aug 2004 18:17:11 +0000 (18:17 +0000)]
Add myself as Darwin maintainer.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85649 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/arm/symbian.h (CC1_SPEC): Avoid passing duplicate options
mmitchel [Fri, 6 Aug 2004 17:51:45 +0000 (17:51 +0000)]
* config/arm/symbian.h (CC1_SPEC): Avoid passing duplicate options
to the compiler.  Use -fshort-wchar by default.

* gcc.dg/symbian4.c: Expect a 2-byte wchar_t, not a 4-byte
wchar_t.
* gcc.dg/symbian5.c: Test -fno-short-wchar.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85648 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-06 Pat Haugen <pthaugen@us.ibm.com>
dje [Fri, 6 Aug 2004 17:20:53 +0000 (17:20 +0000)]
2004-08-06  Pat Haugen  <pthaugen@us.ibm.com>

        * params.def (PARAM_MIN_CROSSJUMP_INSNS): New.
        * cfgcleanup.c (try_crossjump_to_edge): Add minimum insn match
        threshhold.
        * doc/invoke.texi (param): Document min-crossjump-insns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85646 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * trans-array.c (gfc_trans_allocate_array_storage,
pbrook [Fri, 6 Aug 2004 15:01:10 +0000 (15:01 +0000)]
* trans-array.c (gfc_trans_allocate_array_storage,
gfc_trans_allocate_temp_array, gfc_add_loop_ss_code,
gfc_conv_loop_setup):
For functions, if the shape of the result is not known
in compile-time, generate an empty array descriptor for
the result and let the callee to allocate the memory.
(gfc_trans_dummy_array_bias): Do nothing for pointers.
(gfc_conv_expr_descriptor): Use function return values directly.
* trans-expr.c (gfc_conv_function_call): Always add byref call
insn to pre chain.
(gfc_trans_pointer_assignment): Add comments.
(gfc_trans_arrayfunc_assign): Don't chain on expression.
testsuite/
* gfortran.dg/ret_array_1.f90: New test.
* gfortran.dg/ret_pointer_1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85642 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * utils.c (gnat_define_builtin): Remove second parameter of
schwab [Fri, 6 Aug 2004 14:21:54 +0000 (14:21 +0000)]
* utils.c (gnat_define_builtin): Remove second parameter of
make_decl_rtl.
(begin_subprog_body): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85640 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR c/13282
rsandifo [Fri, 6 Aug 2004 11:23:23 +0000 (11:23 +0000)]
PR c/13282
* c.opt (Wmissing-field-initializers): New option.
* c-opts.c (c_common_post_options): Make -Wextra turn it on by default.
* c-typeck.c (pop_init_level): Guard the missing field warning with
warn_missing_field_initializers rather than extra_warnings.
* doc/invoke.texi (-Wmissing-field-initializers): Document, moving
some of the explanation from...
(-Wextra): ...here.  Say that the missing field warning can be
seperately controlled by -Wmissing-field-initializers.

cp/
* typeck2.c (process_init_constructor): Guard the missing field warning
with warn_missing_field_initializers rather than extra_warnings.

testsuite/
* gcc.dg/missing-field-init-[12].c: New tests.
* g++.dg/warn/missing-field-init-[12].C: New tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85638 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-06 Kelley Cook <kcook@gcc.gnu.org>
kcook [Fri, 6 Aug 2004 11:11:11 +0000 (11:11 +0000)]
2004-08-06  Kelley Cook  <kcook@gcc.gnu.org>

* gcc_release (snapshot_print): Accept arguments.  Don't use echo -e.
(announce_snapshot):  Update for above.  Don't use echo -e.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85637 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-06 Paolo Bonzini <bonzini@gnu.org>
bonzini [Fri, 6 Aug 2004 10:40:35 +0000 (10:40 +0000)]
2004-08-06  Paolo Bonzini  <bonzini@gnu.org>

* expr.c (expand_expr_real_1) <ENTRY_VALUE_EXPR>: Remove.
* tree-inline.c (estimate_num_insns_1) <ENTRY_VALUE_EXPR>: Remove.
* tree-pretty-print.c (dump_generic_node) <ENTRY_VALUE_EXPR>: Remove.
* tree.def (ENTRY_VALUE_EXPR): Remove.

cp:
2004-08-06  Paolo Bonzini  <bonzini@gnu.org>

* class.c (instantiate_type) <ENTRY_VALUE_EXPR>: Do not handle.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85636 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/i386/i386.c (ix86_expand_clrmem): Move gen_cld down to
jakub [Fri, 6 Aug 2004 10:17:14 +0000 (10:17 +0000)]
* config/i386/i386.c (ix86_expand_clrmem): Move gen_cld down to
the places where it is actually needed.  Don't use repz; stosb
for -Os with sufficiently small constant sizes.
For sufficiently small repz; stos{l,q} repeat counts use a sequence
of stos{l,q} instructions instead.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85635 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR tree-optimization/16807
rakdver [Fri, 6 Aug 2004 09:40:39 +0000 (09:40 +0000)]
PR tree-optimization/16807
* loop-iv.c (dump_iv_info): Dump invariants correctly.
(iv_subreg, iv_extend): Express value of invariant purely in
base field.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85634 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/arm/symbian.h (CC1_SPEC): Add -fno-short-enums.
mmitchel [Fri, 6 Aug 2004 07:54:19 +0000 (07:54 +0000)]
* config/arm/symbian.h (CC1_SPEC): Add -fno-short-enums.
(CC1PLUS_SPEC): Define it to be the same as CC1_SPEC.

* gcc.dg/enum2.c: New test.
* gcc.dg/symbian3.c: Likewise.
* gcc.dg/symbian4.c: Likewise.
* gcc.dg/wchar_t-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85632 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/m68k/m68k.c (post_inc_operand,pre_dec_operand): New.
rth [Fri, 6 Aug 2004 07:14:56 +0000 (07:14 +0000)]
    * config/m68k/m68k.c (post_inc_operand,pre_dec_operand): New.
        * config/m68k/m68k.h (PREDICATE_CODES): add post_inc_operand,
        pre_dec_operand.
        * config/m68k/m68k.md (zero_extend*2): delay the splitting of the
        pattern until reload is finished to allow better code generation
        and split them completely into separate instrunctions.
        (*andsi3_split): New pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85631 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-06 Paolo Bonzini <bonzini@gnu.org>
bonzini [Fri, 6 Aug 2004 06:45:23 +0000 (06:45 +0000)]
2004-08-06  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.def (bfd, opcodes, gcc, zlib): Mark as bootstrap module.
(bison, byacc, flex, texinfo): Do not mark as bootstrap module.
(Dependencies): New section.
* Makefile.tpl (Dependencies): Generate from Makefile.def.
(configure-target-[+module+]): Depend on maybe-all-gcc
(all-prebootstrap): New name of all-bootstrap.  Changed throughout.
(toplevel profiledbootstrap): Fix dependencies.
* Makefile.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85629 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * g++.dg/ext/visibility/visibility-8.C: Add constructor and
mmitchel [Fri, 6 Aug 2004 03:26:19 +0000 (03:26 +0000)]
* g++.dg/ext/visibility/visibility-8.C: Add constructor and
destructor tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85623 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-06 Kelley Cook <kcook@gcc.gnu.org>
kcook [Fri, 6 Aug 2004 02:03:47 +0000 (02:03 +0000)]
2004-08-06  Kelley Cook  <kcook@gcc.gnu.org>

* lang.c (flag_emit_class_files, flag_filelist_file, flag_redundant,
flag_use_divide_subroutine, flag_use_boehm_gc, flag_store_check,
flag_hash_synchronization, flag_assert, flag_jni, flag_newer,
flag_check_references, flag_extraneous_semicolon, flag_deprecated,
flag_force_classes_archive_check, flag_optimize_sci,
flag_indirect_dispatch): Remove explicit declarations.
* lang.opt: Add implicit declare/define/assign.  Remove obsolete
final comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85622 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * tree.c (handle_dll_attribute): Move here from i383/winnt.c.
mmitchel [Fri, 6 Aug 2004 02:03:29 +0000 (02:03 +0000)]
* tree.c (handle_dll_attribute): Move here from i383/winnt.c.
Replace use of DECL_INLINE with DECL_DECLARED_INLINE_P.  Set
DECL_VISIBLITY.  Test TARGET_DLLIMPORT_DECL_ATTRIBUTES with #if.
* tree.h (handle_dll_attribute): Declare.  Test
TARGET_DLLIMPORT_DECL_ATTRIBUTES with #if.
* c-common.h (c_determine_visibility): Declare.
* c-common.c (c_determine_visibility): New function.
* c-decl.c (finish_decl): Use it.
(finish_function): Likewise.
* defaults.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define it to
zero, by default.  Use #if, not #ifdef, to test it.
* config/arm/arm.c (arm_attribute_table): Use
handle_dll_attribute.  Test TARGET_DLLIMPORT_DECL_ATTRIBUTES with
#if.
* config/arm/pe.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define to 1.
* config/i386/cygming.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define
to 1.
* config/i386/i386-protos.h (ix86_handle_dll_attribute): Remove.
* config/i386/i386.c (ix86_attribute_table): Use
handle_dll_attribute for dllimport/dllexport.  Test
TARGET_DLLIMPORT_DECL_ATTRIBUTES with #if.
* config/i386/winnt.c (ix86_handle_dll_attribute): Remove.
* config/mcore/mcore.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define
it to 1.
* config/mcore/mcore.c (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Test it
with #if.
* config/sh/symbian-pre.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define
it to 1.
* doc/extend.texi (dllexport): Clarify and correct documentation.
(dllimport): Likewise.
* doc/tm.texi (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Mention
handle_dll_attribute.

* decl.c (start_preparsed_function): Move determine_visibility
call.
* decl2.c (determine_visibility): Incorporate dllexport testing.

* g++.dg/ext/visibility/assign1.C: Use scan-hidden and
dg-require-visiblity.
* g++.dg/ext/visibility/fvisibility-inlines-hidden.C: Likewise.
* g++.dg/ext/visibility/fvisibility.C: Likewise.
* g++.dg/ext/visibility/memfuncts.C: Likewise.
* g++.dg/ext/visibility/new1.C: Likewise.
* g++.dg/ext/visibility/pragma.C: Likewise.
* g++.dg/ext/visibility/staticmemfuncts.C: Likewise.
* g++.dg/ext/visibility/virtual.C: Likewise.
* g++/dg/ext/visibility/visibility-1.C: Likewise.
* g++/dg/ext/visibility/visibility-2.C: Likewise.
* g++/dg/ext/visibility/visibility-3.C: Likewise.
* g++/dg/ext/visibility/visibility-4.C: Likewise.
* g++/dg/ext/visibility/visibility-5.C: Likewise.
* g++/dg/ext/visibility/visibility-6.C: Likewise.
* g++/dg/ext/visibility/visibility-7.C: Likewise.
* g++/dg/ext/visibility/visibility-8.C: New test.
* gcc.c-torture/compile/dll.x: Remove.
* gcc.dg/dll-2.c: Use dg-require-dll
* gcc.dg/visibility-10.c: New test.
* lib/gcc-dg.exp (dg-require-dll): Add Symbian to list of targets
supporting DLLs.
* testsuite/lib/scanasm.exp (scan_hidden): New function.
(scan_not_hidden): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85621 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * g++spec.c (lang_specific_driver): An -Xlinker or -Wl, option
geoffk [Fri, 6 Aug 2004 00:29:17 +0000 (00:29 +0000)]
* g++spec.c (lang_specific_driver): An -Xlinker or -Wl, option
means that libstdc++ is needed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85620 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoDaily bump.
gccadmin [Fri, 6 Aug 2004 00:16:23 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85618 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * tree-ssa-loop-manip.c: New file.
rakdver [Thu, 5 Aug 2004 21:33:21 +0000 (21:33 +0000)]
* tree-ssa-loop-manip.c: New file.
* Makefile.in (tree-ssa-loop-manip.o): Add.
* tree-flow.h (rewrite_into_loop_closed_ssa, verify_loop_closed_ssa):
Declare.
* tree-ssa-loop.c (tree_loop_optimizer_init): Create loop closed ssa
form.
(tree_ssa_loop_done): Verify loop closed ssa form.
* tree-ssa-loop-im.c (move_computations): Update loop closed ssa form.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85613 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-05 Andreas Tobler <a.tobler@schweiz.ch>
andreast [Thu, 5 Aug 2004 21:27:07 +0000 (21:27 +0000)]
2004-08-05  Andreas Tobler  <a.tobler@schweiz.ch>

* Makefile.am: Fix missing rename from x_nat_headers to
xlib_nat_headers.
* Makefile.in: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85612 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * pa.c (pa_asm_output_aligned_bss, pa_asm_output_aligned_common,
danglin [Thu, 5 Aug 2004 20:57:06 +0000 (20:57 +0000)]
* pa.c (pa_asm_output_aligned_bss, pa_asm_output_aligned_common,
pa_asm_output_aligned_local): New functions.
* pa-protos.h: Add prototypes for pa_asm_output_aligned_bss,
pa_asm_output_aligned_common and pa_asm_output_aligned_local.
* pa-pro-end.h (ASM_OUTPUT_ALIGNED_COMMON): Use
pa_asm_output_aligned_common.
(ASM_OUTPUT_ALIGNED_LOCAL): Use pa_asm_output_aligned_local.
* pa.h (ASM_OUTPUT_ALIGNED_BSS): New macro.
(ASM_OUTPUT_ALIGNED_COMMON): Use pa_asm_output_aligned_common.
(ASM_OUTPUT_ALIGNED_LOCAL): Use pa_asm_output_aligned_local.
* pa64-hpux.h (MAX_OFILE_ALIGNMENT): New macro.
(ASM_OUTPUT_ALIGNED_COMMON): Use pa_asm_output_aligned_common.
(ASM_OUTPUT_ALIGNED_LOCAL): Use pa_asm_output_aligned_local.
* som.h (MAX_OFILE_ALIGNMENT): Provide maximum alignment of global
common data.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85611 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-05 Michael Chastain <mec.gnu@mindspring.com>
chastain [Thu, 5 Aug 2004 19:29:09 +0000 (19:29 +0000)]
2004-08-05  Michael Chastain  <mec.gnu@mindspring.com>

PR bootstrap/14893
* Make-lang.in (java.install-man): Install from either build
tree or source tree, whichever has the file first.

(See the PR for more information and the approval from Alexandre Oliva.
 This fix has been in gcc-3_4-branch for about four months).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85610 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-05 Andrew Pinski <apinski@apple.com>
pinskia [Thu, 5 Aug 2004 18:06:23 +0000 (18:06 +0000)]
2004-08-05  Andrew Pinski  <apinski@apple.com>

        * objc/objc-act.c (build_objc_string_object): Mark the address
        expression as constant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85609 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2004-08-04 Andrew Haley <aph@redhat.com>
aph [Thu, 5 Aug 2004 17:51:11 +0000 (17:51 +0000)]
2004-08-04  Andrew Haley  <aph@redhat.com>

        * java/security/BasicPermission.java: Don't check wildcards.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85608 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * gcc.dg/sh4a-fprun.c: Fix dg-do typo.
dje [Thu, 5 Aug 2004 17:37:02 +0000 (17:37 +0000)]
    * gcc.dg/sh4a-fprun.c: Fix dg-do typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85605 138bc75d-0d04-0410-961f-82ee72b054a4