Kazu Hirata [Fri, 10 Dec 2004 17:51:43 +0000 (17:51 +0000)]
 
tree-data-ref.c (free_data_refs): Free each data_reference object.
	* tree-data-ref.c (free_data_refs): Free each data_reference
	object.
From-SVN: r92002
Jeff Law [Fri, 10 Dec 2004 17:28:32 +0000 (10:28 -0700)]
 
tree-ssa-alias.c (setup_pointers_and_addressables): Remove redundant test of v_ann->mem_tag_kind.
	* tree-ssa-alias.c (setup_pointers_and_addressables): Remove
	redundant test of v_ann->mem_tag_kind.
	* tree-ssa-operands.c (get_indirect_ref_operands): Remove
	redundant conditional clearing opf_kill_def.
From-SVN: r92000
Richard Sandiford [Fri, 10 Dec 2004 16:33:25 +0000 (16:33 +0000)]
 
frv-modes.def: Fix comment typos.
	* config/frv/frv-modes.def: Fix comment typos.
	(CC_NZ): Define new mode.
	* config/frv/frv-protos.h (frv_select_cc_mode): Declare.
	(condexec_intop_cmp_operator): Delete.
	* config/frv/frv.c (comparison_string): New function.
	(frv_print_operand): Use it to handle 'c' and 'C'.
	(relational_operator): Redefine in terms of integer_relational_operator
	and float_relational_operator.
	(signed_relational_operator, unsigned_relational_operator): Delete.
	(integer_relational_operator): New predicate, combining the above.
	Check the mode of the first operand but leave frv.md to check the rest.
	(float_relational_operator): Just check the mode of the first operand
	and leave frv.md to check the rest.
	(intop_compare_operator): Assume the result is compared with zero
	in mode CC_NZmode.  Allow PLUS and MINUS.  Leave frv.md to check
	the operand predicates.
	(condexec_intop_cmp_operator): Delete.
	(frv_ifcvt_modify_tests, frv_ifcvt_modify_multiple_tests)
	(frv_hard_regno_mode_ok): Handle CC_NZmode.
	(frv_select_cc_mode): New function.
	* config/frv/frv.h (SELECT_CC_MODE): Use frv_select_cc_mode.
	(REVERSIBLE_CC_MODE): Include CC_NZmode.
	(PREDICATE_CODES): Replace entries for signed_relational_operand and
	unsigned_relational_operator with one for integer_relational_operator.
	Delete entry for condexec_intop_cmp_operator.
	* config/frv/frv.md (movcc_nz, *internal_movcc_nz, reload_incc_nz)
	(reload_outcc_nz, *cmpsi_cc_nz, *cond_exec_cmpsi_cc_nz): New patterns.
	(*combo_intop_compare2, *combo_intop_compare4): Delete.
	(*combo_intop_compare1): Change mode to CC_NZ.
	(*combo_intop_compare2): Likewise.  Renamed from *combo_intop_compare3.
	(branch_{un,}signed_true, branch_{un,}signed_false)
	(*scc_{un,}signed, *scc_neg1_{un,}signed, *ck_{un,}signed)
	(*movqicc_internal1_{un,}signed, *movqicc_internal2_{un,}signed)
	(*movhicc_internal1_{un,}signed, *movhicc_internal2_{un,}signed)
	(*movsicc_internal1_{un,}signed, *movsicc_internal2_{un,}signed)
	(*movsfcc_has_fprs_{un,}signed, *movsfcc_no_fprs_{un,}signed)
	(*return_{unsigned_,}true, *return_{unsigned_,}false): Merge these
	pattern pairs.  Use integer_relational_operator.  Remove mode from
	icc_operand.
From-SVN: r91997
Mark Dettinger [Fri, 10 Dec 2004 16:25:51 +0000 (16:25 +0000)]
 
s390.c (struct processor_costs): New fields ml, sqdbr, sqebr.
2004-12-06  Mark Dettinger  <dettinge@de.ibm.com>
	* config/s390/s390.c (struct processor_costs): New fields ml,
	sqdbr, sqebr.
	(s390_rtx_costs): Added the missing handling of multiply & add,
	square root, and umulsidi.
From-SVN: r91996
Volker Reichelt [Fri, 10 Dec 2004 16:04:22 +0000 (16:04 +0000)]
 
re PR c++/18731 (ICE on invalid template declaration)
	PR c++/18731
	* parser.c (cp_parser_class_head): Reject typedef-name in class head.
	* g++.dg/parser/struct-1.C: New test.
	* g++.dg/parser/struct-2.C: New test.
	* g++.dg/parser/struct-3.C: New test.
From-SVN: r91993
Kazu Hirata [Fri, 10 Dec 2004 15:06:52 +0000 (15:06 +0000)]
 
expmed.c (synth_mult): Initialize new_limit.latency before making a recursive call.
	* expmed.c (synth_mult): Initialize new_limit.latency before
	making a recursive call.
From-SVN: r91992
Nick Clifton [Fri, 10 Dec 2004 14:03:45 +0000 (14:03 +0000)]
 
(legitimate_address_p): Reject address whose index is itself the sum of two
other parts.
From-SVN: r91991
Paolo Carlini [Fri, 10 Dec 2004 11:45:13 +0000 (11:45 +0000)]
 
type_traits: Implement remove_const, remove_volatile, and remove_cv.
2004-12-10  Paolo Carlini  <pcarlini@suse.de>
	* include/tr1/type_traits: Implement remove_const, remove_volatile,
	and remove_cv.
	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
	remove_const.cc: New.
	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
	remove_cv.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
	remove_volatile.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/primary_type_categories/
	is_array/is_array.cc: Slightly tweak consistently, remove typedefs,
	add a few tests.
From-SVN: r91990
Alan Modra [Fri, 10 Dec 2004 10:28:22 +0000 (20:58 +1030)]
 
* config/t-slibgcc-sld (SHLIB_LINK): Correct symlink.
From-SVN: r91989
Uros Bizjak [Fri, 10 Dec 2004 07:05:15 +0000 (08:05 +0100)]
 
i386.md (*cmpfp_sf): Change type attribute to "multi".
	* config/i386/i386.md (*cmpfp_sf): Change type
	attribute to "multi".
From-SVN: r91988
Richard Henderson [Fri, 10 Dec 2004 06:18:03 +0000 (22:18 -0800)]
 
* gcc.dg/loop-3.c: Don't use i386 tuning for amd64.
From-SVN: r91987
Richard Henderson [Fri, 10 Dec 2004 06:07:08 +0000 (22:07 -0800)]
 
fp-cmp-4q.c: Remove.
        * gcc.c-torture/execute/ieee/fp-cmp-4q.c: Remove.
        * gcc.c-torture/execute/ieee/fp-cmp-8q.c: Remove.
From-SVN: r91986
GCC Administrator [Fri, 10 Dec 2004 00:16:17 +0000 (00:16 +0000)]
 
Daily bump.
From-SVN: r91982
Richard Henderson [Thu, 9 Dec 2004 22:56:57 +0000 (14:56 -0800)]
 
Testcase for PR c/18282.
From-SVN: r91979
Richard Henderson [Thu, 9 Dec 2004 22:55:41 +0000 (14:55 -0800)]
 
re PR c/18282 (PR c/17384 patch causes regression from 3.4.2)
        PR c/18282
        * attribs.c (decl_attributes): Use relayout_decl.
        * c-common.c (handle_mode_attribute): Copy all relevant type
        parameters from the new underlying integral type.
From-SVN: r91978
Richard Henderson [Thu, 9 Dec 2004 22:52:15 +0000 (14:52 -0800)]
 
c-common.c (shorten_compare): Don't special-case min/maxval for C enumerations.
        * c-common.c (shorten_compare): Don't special-case min/maxval
        for C enumerations.
From-SVN: r91974
Matt Austern [Thu, 9 Dec 2004 21:07:01 +0000 (21:07 +0000)]
 
re PR c++/18514 (Alternate "asm" name ignored for redeclared builtin function imported into namespace std)
 	PR c++/18514
 	* name-lookup.c (do_nonmember_using_decl): A real function
 	declaration takes precedence over an anticipated declaration.
 	* g++.dg/ext/builtin1.C: New
 	* g++.dg/ext/builtin2.C: New
 	* g++.dg/ext/builtin3.C: New
 	* g++.dg/ext/builtin4.C: New
 	* g++.dg/ext/builtin5.C: New
From-SVN: r91972
Volker Reichelt [Thu, 9 Dec 2004 20:47:35 +0000 (20:47 +0000)]
 
* parser.c (cp_parser_member_declaration): Fix comment typo.
From-SVN: r91970
Richard Sandiford [Thu, 9 Dec 2004 20:28:14 +0000 (20:28 +0000)]
 
simplify-rtx.c (simplify_subreg): In the CONCAT case...
	* simplify-rtx.c (simplify_subreg): In the CONCAT case, check whether
	the request subreg is entirely contained in the requested component.
	(simplify_gen_subreg): Return null for CONCATs that are rejected
	by simplify_subreg.
	* expmed.c (store_bit_field): Create a temporary when changing the
	value to an integer mode.
From-SVN: r91965
David Edelsohn [Thu, 9 Dec 2004 20:21:45 +0000 (20:21 +0000)]
 
* real.c (ibm_extended): Correct comment.
From-SVN: r91964
Stan Shebs [Thu, 9 Dec 2004 18:25:15 +0000 (18:25 +0000)]
 
darwin-asm.h: New file, 32/64-bit assembly macros formerly in darwin-tramp.asm.
        * config/rs6000/darwin-asm.h: New file, 32/64-bit assembly macros
        formerly in darwin-tramp.asm.
        * config/rs6000/darwin-tramp.asm: Include darwin-asm.h.
        * config/rs6000/darwin-fpsave.asm: Use 32/64-bit macros.
        * config/rs6000/t-darwin: Add dependencies.
From-SVN: r91960
Paolo Carlini [Thu, 9 Dec 2004 17:54:27 +0000 (17:54 +0000)]
 
type_traits: Implement remove_extent and remove_all_extents.
2004-12-09  Paolo Carlini  <pcarlini@suse.de>
	* include/tr1/type_traits: Implement remove_extent and
	remove_all_extents.
	* testsuite/tr1/4_metaprogramming/array_modifications/
	remove_all_extents.cc: New.
	* testsuite/tr1/4_metaprogramming/array_modifications/
	remove_extent.cc: Likewise.
From-SVN: r91958
Richard Henderson [Thu, 9 Dec 2004 17:33:42 +0000 (09:33 -0800)]
 
re PR target/17025 (attribute regparm code-generation bug)
        PR target/17025
        * config/i386/i386.md (testqi_1_maybe_si, andqi_2_maybe_si): New.
        (test_qi_1, andqi_2): Do not promote to simode.
From-SVN: r91956
David Edelsohn [Thu, 9 Dec 2004 16:31:19 +0000 (16:31 +0000)]
 
re PR bootstrap/18895 (libgfortran AM_MAKEFLAGS arg list + environment too large)
        PR bootstrap/18895
        Revert 2004-12-07 change.
        * Makefile.am (AM_MAKEFLAGS): Delete.
        * Makefile.in: Regenerate.
From-SVN: r91955
Andrew Pinski [Thu, 9 Dec 2004 16:17:07 +0000 (16:17 +0000)]
 
re PR tree-optimization/18904 (4.0-
20041205 regression ICE with -O3)
2004-12-09  Andrew Pinski  <pinskia@physics.uc.edu>
        PR tree-opt/18904
        * g++.dg/opt/ptrmem5.C: New test.
2004-12-09  Andrew Pinski  <pinskia@physics.uc.edu>
        PR tree-opt/18904
        * tree-chrec.c (chrec_convert): Use fold_convert
        instead of convert.
From-SVN: r91954
Matt Rice [Thu, 9 Dec 2004 15:54:15 +0000 (15:54 +0000)]
 
re PR preprocessor/18102 (darwin framework header search depends on order of options)
2004-12-09  Matt Rice  <ratmice@yahoo.com>
        PR preprocessor/18102
        * c-incpath.c (remove_duplicates): Check for construct
        equality.
From-SVN: r91953
Alexandre Oliva [Thu, 9 Dec 2004 12:33:09 +0000 (12:33 +0000)]
 
re PR c++/18757 (ICE (on invalid) in get_innermost_template_args)
gcc/cp/ChangeLog:
PR c++/18757
* parser.c (cp_parser_template_id): Don't create a CPP_TEMPLATE_ID
if parsing failed.
gcc/testsuite/ChangeLog:
* g++.dg/parse/typename5.C: Adjust for new error.
* g++.dg/parse/typename7.C: New.
From-SVN: r91935
Dorit Naishlos [Thu, 9 Dec 2004 11:06:20 +0000 (11:06 +0000)]
 
genopinit.c (vec_realign_store_optab): Initialization removed.
2004-12-09  Dorit Naishlos  <dorit@il.ibm.com>
        * genopinit.c (vec_realign_store_optab): Initialization removed.
        * optabs.c (optab_for_tree_code): REALIGN_STORE_EXPR case removed.
        * optabs.h (optab_index): OTI_vec_realign_store Removed.
        (vec_realign_store_optab): Removed.
        * target-def.h (TARGET_VECTORIZE_BUILTIN_MASK_FOR_STORE): Removed.
        * target.h (builtin_mask_for_store): Removed.
        * tree.def (REALIGN_STORE_EXPR): Removed.
        * config/rs6000/rs6000.c (rs6000_builtin_mask_for_store): Removed.
        (altivec_builtin_mask_for_store): Removed.
        (altivec_init_builtins): Removed initialization of
        altivec_builtin_mask_for_store.
        * doc/tm.texi (TARGET_VECTORIZE_MISALIGNED_MEM_OK): New.
        (TARGET_VECTORIZE_BUILTIN_MASK_FOR_LOAD): New.
From-SVN: r91932
Nathan Sidwell [Thu, 9 Dec 2004 10:54:50 +0000 (10:54 +0000)]
 
tree.def (SET_TYPE): Remove.
	* tree.def (SET_TYPE): Remove.
	(CONSTRUCTOR): Update description.
	* builtins.c (type_to_class) Remove SET_TYPE case.
	* dbxout.c (dbxout_type): Likewise.
	* dwarf2out.c (is_base_type): Likewise.
	(gen_set_type_die): Remove.
	(gen_type_die): Remove SET_TYPE case.
	* expr.c (count_type_elements): Likewise.
	(mostly_zeroes_p): Likewise.
	(store_constructor): Likewise.
	* print_tree.c (print_node): Likewise.
	* stor-layout.c (layout_type): Likewise.
	* tree-browser.c (browse_tree): Likewise.
	* tree-inline.c (remap_type): Likewise.
	* tree-pretty-print.c (dump_generic_node): Likewise.
	* tree.c (type_contains_plaeholder_1, type_hash_eq,
	variably_modified_type_p, initializer_zerop): Likewise.
	* tree.h (SET_OR_ARRAY_CHECK): Remove.
	(AGGREGATE_TYPE_P): Remove SET_TYPE check.
	(TYPE_DOMAIN): Use ARRAY_TYPE_CHECK.
	* typeclass.h (enum type_class): Remove set_type_class.
	* varasm.c (const_hash_1): Remove SET_TYPE case.
	(compare_constant, copy_constant, output_constant): Likewise.
	* config/i386/i386.c (classify_argument): Likewise.
	* config/ia64/ia64.c (hfa_element_mode): Likewise.
	* config/sparc/sparc.c (sparc_type_code): Likewise.
	* ada/decl.c (gnat_substitute_in_type): Remove SET_TYPE case.
From-SVN: r91931
Nathan Sidwell [Thu, 9 Dec 2004 10:43:54 +0000 (10:43 +0000)]
 
re PR c++/16681 (array initialization in struct construct is a memory hog)
	PR c++/16681
	* tree-inline.c (estimate_num_insns_1): Add RANGE_EXPR case.
From-SVN: r91930
Volker Reichelt [Thu, 9 Dec 2004 10:34:21 +0000 (10:34 +0000)]
 
re PR c++/18073 (mmintrin.h rejected by C++ frontend)
	PR c++/18073
	* typeck.c (build_reinterpret_cast_1): Allow cast from vector type.
	* g++.dg/other/mmintrin.C: New test.
From-SVN: r91929
Nathan Sidwell [Thu, 9 Dec 2004 09:37:37 +0000 (09:37 +0000)]
 
re PR c++/16681 (array initialization in struct construct is a memory hog)
cp:
	PR c++/16681
	* init.c (build_zero_init): Build a RANGE_EXPR for an array
	initializer.
testsuite:
	PR c++/16681
	* g++.dg/init/array15.C: New.
	* g++.dg/init/array16.C: New.
From-SVN: r91928
Richard Henderson [Thu, 9 Dec 2004 07:21:19 +0000 (23:21 -0800)]
 
* config/i386/i386.md: Use FLAGS_REG everywhere.
From-SVN: r91927
Kelley Cook [Thu, 9 Dec 2004 01:27:29 +0000 (01:27 +0000)]
 
Makefile.am: Add ../config to ACLOCAL_AMFLAGS.
2004-12-08  Kelley Cook  <kcook@gcc.gnu.org>
	* Makefile.am: Add ../config to ACLOCAL_AMFLAGS.
	* aclocal.m4, Makefile.in, testsuite/Makefile.in: Regenerate.
From-SVN: r91926
Eric Christopher [Thu, 9 Dec 2004 01:04:40 +0000 (01:04 +0000)]
 
mips.c (mips_scalar_mode_supported_p): Rewrite to avoid call to default function.
2004-12-08  Eric Christopher  <echristo@redhat.com>
	* config/mips/mips.c (mips_scalar_mode_supported_p): Rewrite
	to avoid call to default function.
From-SVN: r91925
GCC Administrator [Thu, 9 Dec 2004 00:16:17 +0000 (00:16 +0000)]
 
Daily bump.
From-SVN: r91923
Kelley Cook [Wed, 8 Dec 2004 23:47:20 +0000 (23:47 +0000)]
 
typeck.c: Remove DOS line endings.
2004-12-08  Kelley Cook  <kcook@gcc.gnu.org>
	* typeck.c: Remove DOS line endings.
From-SVN: r91919
Richard Henderson [Wed, 8 Dec 2004 21:17:18 +0000 (13:17 -0800)]
 
intrinsic.c (gfc_convert_type_warn): Propagate the input shape to the output expression.
        * intrinsic.c (gfc_convert_type_warn): Propagate the input shape
        to the output expression.
        * iresolve.c (gfc_resolve_cshift, gfc_resolve_eoshift): Suppress
        warning conversion.
        (gfc_resolve_reshape): Force convert SHAPE and ORDER parameters
        to index kind.
From-SVN: r91917
David Edelsohn [Wed, 8 Dec 2004 20:25:58 +0000 (20:25 +0000)]
 
Makefile.def (flags_to_pass): Add PICFLAG_FOR_TARGET.
	* Makefile.def (flags_to_pass): Add PICFLAG_FOR_TARGET.
	* Makefile.tpl (EXTRA_HOST_FLAGS): Add PICFLAG.
	(EXTRA_TARGET_FLAGS): Add PICFLAG.
	* Makefile.in: Regenerate.
From-SVN: r91916
Zack Weinberg [Wed, 8 Dec 2004 19:13:35 +0000 (19:13 +0000)]
 
re PR middle-end/17982 (stop calling assemble_external before final assembly output time)
	PR 17982
	* varasm.c (pending_assemble_externals): New static.
	(assemble_external_real): Meat of assemble_external split out
	to this new function.
	(process_pending_assemble_externals): New function.
	(assemble_external): Use gcc_assert.  If flag_unit_at_a_time
	is true and the basic test passes, merely cons the decl onto
	the pending list to be handled later.
	* tree.h: Declare process_pending_assemble_externals.
	* cgraphunit.c (cgraph_optimize): Call it.
	* config/h8300/h8300.h: Do not define ASM_OUTPUT_EXTERNAL.
From-SVN: r91914
Kazu Hirata [Wed, 8 Dec 2004 18:52:48 +0000 (18:52 +0000)]
 
cfgloopmanip.c (create_preheader): Speed up by "unrolling" and simplifying FOR_EACH_EDGE.
	* cfgloopmanip.c (create_preheader): Speed up by "unrolling"
	and simplifying FOR_EACH_EDGE.
From-SVN: r91913
Paolo Carlini [Wed, 8 Dec 2004 16:33:51 +0000 (16:33 +0000)]
 
type_traits: Implement is_same, add_reference and remove_reference.
2004-12-08  Paolo Carlini  <pcarlini@suse.de>
	* include/tr1/type_traits: Implement is_same, add_reference and
	remove_reference.
	* testsuite/testsuite_tr1.h (test_relationship): New.
	* testsuite/tr1/4_metaprogramming/reference_modifications/
	add_reference.cc: New.
	* testsuite/tr1/4_metaprogramming/reference_modifications/
	remove_reference.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/relationships_between_types/
	is_same/is_same.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/relationships_between_types/
	is_same/typedefs.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/type_properties/is_const/
	is_const.cc: Minor tweaks.
	* testsuite/tr1/4_metaprogramming/type_properties/is_volatile/
	is_volatile.cc: Likewise.
From-SVN: r91907
Christopher Faylor [Wed, 8 Dec 2004 15:57:14 +0000 (15:57 +0000)]
 
* MAINTAINERS: Update my email address.
From-SVN: r91906
David Edelsohn [Wed, 8 Dec 2004 15:48:53 +0000 (15:48 +0000)]
 
Makefile.am (AM_MAKEFLAGS): Remove duplicate LIBCFLAGS and PICFLAG.
	* Makefile.am (AM_MAKEFLAGS): Remove duplicate LIBCFLAGS and
	PICFLAG.
	* Makefile.in: Regenerated.
From-SVN: r91905
David Edelsohn [Wed, 8 Dec 2004 15:43:17 +0000 (10:43 -0500)]
 
clarify previous entry.
From-SVN: r91904
David Edelsohn [Wed, 8 Dec 2004 15:41:41 +0000 (15:41 +0000)]
 
Makefile.am (LIBCFLAGS): Remove duplicate.
	* Makefile.am (LIBCFLAGS): Remove duplicate.
	(PICFLAG): Remove duplicate.
	* Makefile.in: Regenerated.
From-SVN: r91903
Tobias Schlüter [Wed, 8 Dec 2004 14:38:24 +0000 (15:38 +0100)]
 
Add missing PR numbers for previous commit:
fortran/
PR fortran/18826
* resolve.c (resolve_code): Impose correct restrictions on
assigned variable.
testsuite/
PR fortran/18826
* gfortran.dg/assign_1.f90: New test.
From-SVN: r91902
Andrew Haley [Wed, 8 Dec 2004 14:08:22 +0000 (14:08 +0000)]
 
re PR java/18811 (rhug build problem, regression?)
2004-12-07  Andrew Haley  <aph@redhat.com>
	PR java/18811:
	* jcf-parse.c (load_class): Remove sanity test for missing inner
	class file.
From-SVN: r91901
Andrew Haley [Wed, 8 Dec 2004 14:01:50 +0000 (14:01 +0000)]
 
jcf-parse.c (load_class): Remove sanity test for missing inner class file.
2004-12-07  Andrew Haley  <aph@redhat.com>
	* jcf-parse.c (load_class): Remove sanity test for missing inner
	class file.
From-SVN: r91900
Tobias Schlüter [Wed, 8 Dec 2004 12:29:44 +0000 (13:29 +0100)]
 
* decl.c (gfc_match_end): Use locus of END when eos is an error.
From-SVN: r91899
Tobias Schlüter [Wed, 8 Dec 2004 12:27:54 +0000 (13:27 +0100)]
 
resolve.c (resolve_code): Impose correct restrictions on assigned variable.
fortran/
* resolve.c (resolve_code): Impose correct restrictions on
assigned variable.
testsuite/
* gfortran.dg/assign_1.f90: New test.
From-SVN: r91898
Arnaud Charlet [Wed, 8 Dec 2004 11:53:25 +0000 (12:53 +0100)]
 
Resync.
From-SVN: r91897
Arnaud Charlet [Wed, 8 Dec 2004 11:49:44 +0000 (12:49 +0100)]
 
g-socket.ads (Get_Host_By_Address, [...]): Clarify documentation of the behaviour of these functions when...
	* g-socket.ads (Get_Host_By_Address, Get_Host_By_Name): Clarify
	documentation of the behaviour of these functions when passed an IP
	address that has no record in the system hosts database and no reverse
	record in the DNS.
	* cstand.adb, a-tags.ads: Fix typos in comment.
	* exp_ch2.adb, exp_ch3.adb, exp_ch5.adb, exp_ch8.adb,
	exp_ch9.adb, exp_pakd.adb, interfac.ads, sem_ch6.adb,
	sem_ch7.adb, sem_ch10.adb, sem_ch13.adb, sem_ch3.adb,
	s-poosiz.ads: Minor reformatting
	* make.adb: Minor reformatting
	Add some ??? comments asking for more comments
	* s-poosiz.adb: Minor reformatting
	Add comments on alignment requirement
	* sinfo.ads: Remove obsolete comment and fix typo.
	* gnat_ugn.texi: Update the section "The GNAT Driver and Project
	Files" with the new tool and package names.
	Reformatting to suppress most of the warnings for line too long
	Document the new section "Project Search Path:" in the output of
	gnatls -v.
	Add gnatmetric section
	* vms_data.ads: Correct GNAT METRIC qualifiers: -I-, -Idir and
	-gnatec= are not direct switches of gnatmetric. Changed -eis to -eps
	and -eit to -ept. Added qualifier
	/ELEMENT_METRICS=CONSTRUCT_NESTING_MAX for new switch -ec.
From-SVN: r91896
Arnaud Charlet [Wed, 8 Dec 2004 11:49:07 +0000 (12:49 +0100)]
 
* vxaddr2line.adb: Add support for x86 vxworks
From-SVN: r91895
Arnaud Charlet [Wed, 8 Dec 2004 11:48:53 +0000 (12:48 +0100)]
 
sem_ch8.adb (Find_Type): If node is a reference to 'Base and the prefix is not a scalar type...
	* sem_ch8.adb (Find_Type): If node is a reference to 'Base and the
	prefix is not a scalar type, place error message on prefix, not on
	type entity.
From-SVN: r91894
Arnaud Charlet [Wed, 8 Dec 2004 11:48:38 +0000 (12:48 +0100)]
 
sem_ch5.adb (One_Bound): Remove call to Resolve...
	* sem_ch5.adb (One_Bound): Remove call to Resolve, as the bound needs
	to be resolved later as part of Analyze_Iteration_Scheme's call to
	Make_Index.
From-SVN: r91893
Arnaud Charlet [Wed, 8 Dec 2004 11:48:22 +0000 (12:48 +0100)]
 
sem_ch4.adb (Process_Implicit_Dereference_Prefix): New subprogram used to record an implicit dereference as a read operation on...
	* sem_ch4.adb (Process_Implicit_Dereference_Prefix): New subprogram
	used to record an implicit dereference as a read operation on its
	prefix when operating under -gnatc. Necessary to avoid spurious
	'variable assigned but never read' warnings in that mode.
	(Process_Indexed_Component, Analyze_Selected_Component): When the prefix
	is a non-overloaded implicit dereference, call the above subprogram to
	ensure proper recording of references.
From-SVN: r91892
Arnaud Charlet [Wed, 8 Dec 2004 11:48:04 +0000 (12:48 +0100)]
 
nlists.adb (Prepend_Debug): Remove parameters and nest within Prepend.
	* nlists.adb (Prepend_Debug): Remove parameters and nest within
	Prepend.
	(Remove_Next_Debug): Same fix
	* nlists.ads: Correct bad comments for Prev and Prev_Non_Pragma (we do
	maintain back pointers now, though we did not used to, and comments
	were out of date).
	(Prepend): Remove pragma Inline.
	(Remove_Next): Same cleanup
From-SVN: r91891
Arnaud Charlet [Wed, 8 Dec 2004 11:47:46 +0000 (12:47 +0100)]
 
misc.c (gnat_types_compatible_p, [...]): Remove.
	* misc.c (gnat_types_compatible_p, LANG_HOOKS_TYPES_COMPATIBLE_P):
	Remove.
	(LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): New.
	* adaint.h: (__gnat_dup, __gnat_dup2): Add missing decls.
	* trans.c (Exception_Handler_to_gnu_sjlj): Also handle renamed
	exception.
	(call_to_gnu): Convert to actual DECL_ARG_TYPE, not variant of it.
From-SVN: r91890
Arnaud Charlet [Wed, 8 Dec 2004 11:47:34 +0000 (12:47 +0100)]
 
* Makefile.in: Add support for foreign threads on VMS.
From-SVN: r91889
Arnaud Charlet [Wed, 8 Dec 2004 11:47:21 +0000 (12:47 +0100)]
 
lib-xref.adb (Generate_Reference): Handle properly a reference to an entry formal...
	* lib-xref.adb (Generate_Reference): Handle properly a reference to an
	entry formal, when an accept statement has a pragma Unreferenced for it.
	* sem_ch9.adb (Analyze_Accept_Statement): Reset the Is_Referenced flag
	and the Has_Pragma_Unreferenced flag for each formal before analyzing
	the body, to ensure that warnings are properly emitted for each accept
	statement of a given task entry.
From-SVN: r91888
Arnaud Charlet [Wed, 8 Dec 2004 11:46:58 +0000 (12:46 +0100)]
 
* g-regpat.adb: (Match): Change a misuse of or to or else
From-SVN: r91887
Arnaud Charlet [Wed, 8 Dec 2004 11:46:45 +0000 (12:46 +0100)]
 
g-os_lib.adb (Spawn): Explicitly initialize Saved_Error to avoid a compile-time warning.
	* g-os_lib.adb (Spawn): Explicitly initialize Saved_Error to avoid a
	compile-time warning.
From-SVN: r91886
Arnaud Charlet [Wed, 8 Dec 2004 11:46:30 +0000 (12:46 +0100)]
 
gnatmem.adb, [...]: Output the copyright message on a separate line from the version message.
	* gnatmem.adb, gnatname.adb, gnatsym.adb, gprcmd.adb, vms_conv.adb:
	Output the copyright message on a separate line from the version
	message.
From-SVN: r91885
Arnaud Charlet [Wed, 8 Dec 2004 11:46:11 +0000 (12:46 +0100)]
 
exp_dist.adb (Specific_Build_General_Calling_Stubs, [...]): New subprograms.
	* exp_dist.adb (Specific_Build_General_Calling_Stubs,
	Specific_Build_Stub_Target): New subprograms.
	(Build_Subprogram_Calling_Stubs): Make this procedure independent from
	the PCS implementation used, using the above PCS-customized subprograms.
	Minor reformatting.
	(PolyORB_Support.Helpers): New subunit containing supporting subprograms
	for generation of DSA code targeted to the PolyORB PCS.
	(Add_Stub_Type): Rewrite to isolate the parts that are specific to one
	implementation of the partition communication subsystem in ancillary
	subprograms.
	(Specific_Build_Stub_Type, GARLIC_Support.Build_Stub_Type,
	PolyORB_Support.Build_Stub_Type): New subrograms containing the
	PCS-specific part of Add_Stub_Type.
	(Insert_Partition_Check): Use runtime library function to perform
	E.4(19) check.
        * rtsfind.ads: New entity System.PolyORB_Interface.Make_Ref
        (RE_Same_Partition): New entity, from s-parint.
        * s-parint.ads, s-parint.adb (Same_Partition): New subprogram.
From-SVN: r91884
Arnaud Charlet [Wed, 8 Dec 2004 11:45:51 +0000 (12:45 +0100)]
 
exp_ch7.adb (Expand_Cleanup_Actions): If statement sequence of construct is rewritten...
	* exp_ch7.adb (Expand_Cleanup_Actions): If statement sequence of
	construct is rewritten, preserve end label to permit source navigation.
From-SVN: r91883
Arnaud Charlet [Wed, 8 Dec 2004 11:27:00 +0000 (12:27 +0100)]
 
exp_ch6.adb (Expand_Call): Add comment on handling of back end intrinsic
	* exp_ch6.adb (Expand_Call): Add comment on handling of back end
	intrinsic
	* exp_intr.adb (Expand_Intrinsic_Call): Ignore unrecognized intrinsic,
	leaving call unchanged.
	This deals with the case where the pragma Import specified
	an external name, to be handled by the back end.
	* sem_prag.adb (Process_Import_Or_Interface): Do not check validity of
	subprogram which is Imported with convention Intrinsic if an
	External_Name argument is specified.
	(Process_Import_Or_Interface): Properly diagnose link name argument.
	(Inlining_Not_Possible): New name for Cannot_Inline, to avoid confusion
	with Sem_Ch6.Cannot_Inline.
	(Process_Inline): Provide separate warning for inapplicable inline
	pragma.
	(Cannot_Inline): Reject subprograms that have an at_end handler, so that
	treatment is uniform on different targets.
From-SVN: r91882
Arnaud Charlet [Wed, 8 Dec 2004 11:26:46 +0000 (12:26 +0100)]
 
exp_ch4.adb (Expand_N_Indexed_Component): For an indexed component with an implicit dereference as its prefix...
	* exp_ch4.adb (Expand_N_Indexed_Component): For an indexed component
	with an implicit dereference as its prefix, use
	Insert_Explicit_Dereference instead of merely rewriting the prefix into
	an explicit dereference. This ensures that a reference to the original
	prefix is generated, if appropriate.
	* sem_util.adb (Insert_Explicit_Dereference): When an implicit
	dereference is rewritten to an explicit one, generate a reference to
	the entity denoted by its prefix using the original prefix node, so
	the dereference can be properly recorded as a read of the denoted
	access value, if appropriate.
	* sem_warn.adb (Output_Unreferenced_Messages): Do not abstain from
	emitting 'assigned but never read' warning on a variable on the basis
	that it has an access type.
	(Check_References): Emit unreferenced warning when the scope is a
	subprogram body.
From-SVN: r91881
Arnaud Charlet [Wed, 8 Dec 2004 11:26:32 +0000 (12:26 +0100)]
 
* eval_fat.adb: Revert previous change.
From-SVN: r91880
Arnaud Charlet [Wed, 8 Dec 2004 11:26:20 +0000 (12:26 +0100)]
 
decl.c (maybe_pad_type): Use TYPE_SIZE_UNIT of the input type for TYPE_SIZE_UNIT of result type if...
	* decl.c (maybe_pad_type): Use TYPE_SIZE_UNIT of the input type for
	TYPE_SIZE_UNIT of result type if SIZE is not specified.
	(make_aligning_type): Pass -1 as ADDRESSABLE to prevent the creation
	of a bitfield, which we know is useless and causes trouble because of
	alignment implications.
	* utils.c (create_var_decl): Set DECL_COMMON again on targets without
	BSS sections.
	(process_attributes): Clear DECL_COMMON again when a section attribute
	is present.
	(finish_record_type): Independently track if RECORD_TYPE has SIZE and/or
	SIZE_UNIT already set and use to compute final SIZE and SIZE_UNIT.
	(create_field_decl): Special case ADDRESSABLE negative to mean
	"no bitfield creation", to be used by make_aligning_type. Don't
	restrict bitfield creation to !ADDRESSABLE any more, as some BLKmode
	fields claimed addressable still have to be bitfields. Use
	value_factor_p instead of a raw binop construction to check for the
	position's alignment.
From-SVN: r91879
Arnaud Charlet [Wed, 8 Dec 2004 11:26:04 +0000 (12:26 +0100)]
 
debug.adb: Document that -gnatdA automatically sets -gnatR3m
	* debug.adb: Document that -gnatdA automatically sets -gnatR3m
	* gnat1drv.adb (Gnat1drv): If debug flag A set, then automatically
	set -gnatR3m mode.
	* repinfo.adb (List_Rep_Info): Remove special handling of -gnatdA
	flag. No longer needed now that we handle this in gnat1drv.adb.
	* repinfo.ads: Minor reformatting
From-SVN: r91878
Arnaud Charlet [Wed, 8 Dec 2004 11:25:51 +0000 (12:25 +0100)]
 
make.adb (Check_Mains, [...]): Adapt to name changes in package Prj (Current_Spec_Suffix => Ada_Spec_Suffix...
	* make.adb (Check_Mains, Switches_Of): Adapt to name changes in
	package Prj (Current_Spec_Suffix => Ada_Spec_Suffix,
	Current_Body_Suffix => Ada_Body_Suffix).
	Take into account Externally_Built attribute.
	* clean.adb (In_Extension_Chain): Always return False when one of the
	parameter is No_Project.
	(Clean_Project): Adapt to changes in package Prj (Lang_Ada =>
	Ada_Language_Index).
	(Gnatclean): Adapt to change in package Prj.Pars (no parameter
	Process_Languages for procedure Parse).
	* gnatcmd.adb (Carg_Switches): New table.
	(GNATCmd): Put all switches following -cargs in the Carg_Switches table.
	Adapt to name changes in package Prj (Current_Spec_Suffix =>
	Ada_Spec_Suffix, Current_Body_Suffix => Ada_Body_Suffix).
	* mlib-prj.adb: Adapt to changes in packages Prj and Prj.Com: type
	Header_Num and function Hash are now declared in package Prj,
	not Prj.Com.
	* prj.adb (Suffix_Of): New function.
	(Set (Suffix)): New procedure.
	(Hash): One function moved from Prj.Com
	(Is_Present, Language_Processing_Data_Of): New functions
	(Set): Two new procedures
	(Add_Language_Name, Display_Language_Name): New procedures
	* prj.ads: (Suffix_Of): New function
	(Set (Suffix)): New procedure
	Add several types and tables for multi-language support.
	(Header_Num): Type moved from Prj.Com
	(Hash): Two functions moved from Prj.Com
	(Is_Present, Language_Processing_Data_Of): New functions
	(Set): Two new procedures
	(Add_Language_Name, Display_Language_Name): New procedures
	(Naming): Component name changes:
	Current_Spec_Suffix => Ada_Spec_Suffix,
	Current_Body_Suffix => Ada_Body_Suffix. Add new components:
	Impl_Suffixes, Supp_Suffixes.
	(Project_Data): New components: Externally_Built, Supp_Languages,
	First_Language_Processing, Supp_Language_Processing, Default_Linker,
	Default_Linker_Path.
	* prj-attr.adb: Add new attributes Ada_Roots and Externally_Built and
	new package Language_Processing with its attributes (Compiler_Driver,
	Compiler_Kind, Dependency_Option, Compute_Dependency, Include_Option,
	Binder_Driver, Default_Linker).
	* prj-com.ads, prj-com.adb (Hash): Function moved to package Prj.
	(Header_Num): Type moved to package Prj
	* prj-env.adb: Adapt to name changes in package Prj
	(Current_Spec_Suffix => Ada_Spec_Suffix,
	Current_Body_Suffix => Ada_Body_Suffix).
	* prj-ext.adb: Add the default project dir (<prefix>/log/gnat) by
	default to the project path, except the "-" is one of the directories
	in env var ADA_PROJECT_PATH.
	(Current_Project_Path): Global variable, replacing Project_Path
	that was in the body of Prj.Part.
	(Project_Path): New function
	(Set_Project_Path): New procedure
	Initialize Current_Project_Path during elaboration of the package
	Remove dependency on Prj.Com, no longer needed
	* prj-ext.ads (Project_Path): New function
	(Set_Project_Path): New procedure
	* prj-nmsc.adb (Body_Suffix_Of): New function. Returns .<lang> when no
	suffix is defined for language <lang>.
	(Find_Sources, Record_Other_Sources): Use Body_Suffix_Of, instead of
	accessing directly the components of Naming.
	(Look_For_Sources): Use Set (Suffix) to set the suffix of a language.
	Reorganise of this package.
	Break procedure Check in several procedures.
	* prj-nmsc.ads: Replace all procedures (Ada_Check,
	Other_Languages_Check and Language_Independent_Check) with a single
	procedure Check.
	* prj-pars.ads, prj-pars.adb (Parse): Remove parameter
	Process_Languages, no longer needed.
	* prj-part.adb (Project_Path): Move to the body of Prj.Ext as
	Current_Project_Path.
	Remove elaboration code, moved to the body of Prj.Ext
	Use new function Prj.Ext.Project_Path instead of old variable
	Project_Path.
	(Post_Parse_Context_Clause): Get Resolved_Path as a case-sensitive path.
	When comparing with project paths on the stack, first put the resolved
	path in canonical case.
	(Parse_Single_Project): Set the path name of the project file in the
	tree to the normalized path.
	* prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): Remove
	parameter Process_Languages, no longer needed.
	(Recursive_Check): Call Prj.Nmsc.Check, instead of Ada_Check and
	Other_Languages_Check.
	* prj-tree.ads (Project_Name_And_Node): New component Canonical_Path
	to store the resolved canonical path of the project file.
	Remove dependency to Prj.Com, no longer needed
	* prj-util.adb: Adapt to name changes in package Prj
	(Current_Spec_Suffix => Ada_Spec_Suffix, Current_Body_Suffix =>
	Ada_Body_Suffix).
	* snames.ads, snames.adb: New standard names: Ada_Roots, Binder_Driver,
	Compiler_Driver, Compiler_Kind, Compute_Dependency, Default_Linker,
	Externally_Built, Include_Option, Language_Processing.
	* makegpr.adb: Numerous changes due to changes in packages
	Prj and Prj.Nmsc.
	* gnatls.adb: Add the default project dir (<prefix>/log/gnat) by
	default to the project path, except whe "-" is one of the directories
	in env var ADA_PROJECT_PATH.
	(Gnatls): In verbose mode, add the new section "Project Search Path:"
From-SVN: r91877
Arnaud Charlet [Wed, 8 Dec 2004 11:25:14 +0000 (12:25 +0100)]
 
back_end.adb (Scan_Back_End_Switches): Accept --param.
	* back_end.adb (Scan_Back_End_Switches): Accept --param.
	* lang-specs.h: Accept --param.
From-SVN: r91876
Arnaud Charlet [Wed, 8 Dec 2004 11:25:03 +0000 (12:25 +0100)]
 
atree.adb (Visit_Itype): Create a new name for the generated itype...
	* atree.adb (Visit_Itype): Create a new name for the generated itype,
	because the back-end may otherwise treat it as a redefinition of the
	old symbol.
From-SVN: r91875
Arnaud Charlet [Wed, 8 Dec 2004 11:24:50 +0000 (12:24 +0100)]
 
a-exexpr.adb (Others_Value, [...]): Change initial values from 16#BEEF# to 16#7FFF# to avoid exceeding Integer'Last...
	* a-exexpr.adb (Others_Value, All_Others_Value): Change initial values
	from 16#BEEF# to 16#7FFF# to avoid exceeding Integer'Last on 16-bit
	targets (such as AAMP).
From-SVN: r91874
Arnaud Charlet [Wed, 8 Dec 2004 11:24:38 +0000 (12:24 +0100)]
 
s-intman-vxworks.adb (Notify_Exception): removed useless check for current task being suspended.
	* s-intman-vxworks.adb (Notify_Exception): removed useless check for
	current task being suspended.
	* init.c (__gnat_clear_exception): added to reset VxWorks exception
	count.
	(__gnat_map_signal): removed test for current task being suspended.
From-SVN: r91873
Nick Clifton [Wed, 8 Dec 2004 11:15:24 +0000 (11:15 +0000)]
 
Add new tests for xstormy16
From-SVN: r91870
Richard Sandiford [Wed, 8 Dec 2004 10:25:39 +0000 (10:25 +0000)]
 
frv.c (frv_sort_insn_group): Always initialize packet_group->nop.
	* config/frv/frv.c (frv_sort_insn_group): Always initialize
	packet_group->nop.
From-SVN: r91867
Kriang Lerdsuwanakij [Wed, 8 Dec 2004 10:25:22 +0000 (10:25 +0000)]
 
re PR c++/18100 (template member with same name as class not rejected)
	PR c++/18100
	* decl.c (lookup_and_check_tag): Diagnose nested class with
	the same name as enclosing class.
	* g++.dg/lookup/name-clash4.C: New test.
From-SVN: r91866
Nathan Sidwell [Wed, 8 Dec 2004 08:47:59 +0000 (08:47 +0000)]
 
re PR c++/18672 (Segfault with simple template code)
.:	PR c++/18672
	* gimplify.c (canonicalize_addr_expr): Cope with array of
	incomplete type.
	(gimplify_conversion): Remove redundant checks.
testsuite:
	PR c++/18672
	* g++.dg/opt/array1.C: New.
From-SVN: r91865
Nathan Sidwell [Wed, 8 Dec 2004 08:42:15 +0000 (08:42 +0000)]
 
* doc/trouble.texi (Non-bugs): Clarify empty loop removal.
From-SVN: r91864
Nathan Sidwell [Wed, 8 Dec 2004 08:36:09 +0000 (08:36 +0000)]
 
re PR c++/18803 (rejects access to operator() in template)
cp:
	PR c++/18803
	* cp-tree.h (REFERENCE_REF_P): New.
	(CPTI_TYPE_INFO_TYPE): Rename to ...
	(CPTI_CONST_TYPE_INFO_TYPE): ... here.
	(CPTI_TYPE_INFO_REF_TYPE): Remove.
	(type_info_type_node): Rename to ...
	(const_type_info_type_node): ... here.
	(type_info_ref_type): Remove.
	* call.c (build_user_type_conversion): Reformat.
	(resolve_args): Do not convert_from_reference.
	(build_object_call): Call convert_from_reference.
	(prep_operand): Do not convert_from_reference.
	(build_new_method_call): Likewise.
	* class.c (build_vfield_ref): Likewise.
	* cvt.c (convert_to_reference): Likewise.
	(convert_from_reference): Build INDIRECT_REF here, not with
	build_indirect_ref.
	(convert_force): Do not convert_from_reference.
	(build_expr_type_conversion): Likewise.
	* decl.c (grok_reference_init): Likewise.
	* decl2.c (delete_sanity): Likewise.
	* except.c (initialize_handler_parm): Use POINTER_TYPE_P.
	* init.c (build_dtor_call): Do not convert_from_reference.
	* parser.c (cp_parser_template_argument): Unwrap indirected
	reference. Allow TEMPLATE_PARM_INDEX as an object parm.
	* pt.c (tsubst_copy_and_build) <case INDIRECT_REF>: Use
	convert_from_reference, if indicated.
	<case CALL_EXPR>: Do not convert_from_reference.
	<case PARM_DECL, VAR_DECL>: Convert_from_reference if needed.
	(tsubst_initializer_list): Do not convert_from_reference.
	* rtti.c (init_rtti_processing): Adjust node creation.
	(throw_bad_typeid): Use const_type_info_type_node.
	Do not convert_from_reference.
	(typeid_ok_p): Use const_type_info_type_node.
	(build_typeid, get_typeid): Always return type_info typed node.
	(build_dynamic_cast_1): Dont convert_from_reference. Refactor.
	* semantics.c (finish_stmt_expr_expr): Do not
	convert_from_reference.
	(finish_id_expression): Convert_from_reference as appropriate.
	* typeck.c (decay_conversion): Do not convert_from_reference.
	(finish_class_member_access_expr): Likewise.
	(build_indirect_ref): Use POINTER_TYPE_P.
	(convert_arguments): Do not convert_from_reference.
	(build_modify_expr): Likewise.
	(convert_for_initialization): Likewise.
	* typeck2.c (build_x_arrow): Likewise.
testsuite:
	PR c++/18803
	* g++.dg/template/operator5.C: New.
From-SVN: r91863
Uros Bizjak [Wed, 8 Dec 2004 07:54:43 +0000 (08:54 +0100)]
 
i386.c (output_387_binary_op, [...]): Fix is_sse condition.
	* config/i386/i386.c (output_387_binary_op,
	ix86_prepare_fp_compare_args): Fix is_sse condition.
From-SVN: r91862
Hans-Peter Nilsson [Wed, 8 Dec 2004 07:41:32 +0000 (07:41 +0000)]
 
re PR c/18867 (ICE on invalid switch quantity)
	PR c/18867
	* gcc.dg/noncompile/
20041207.c: Fix typo in dg directive.
From-SVN: r91861
Matt Kraai [Wed, 8 Dec 2004 07:22:47 +0000 (07:22 +0000)]
 
Makefile.tpl: Generate normal dependencies if the LHS module is not bootstrapped.
	* Makefile.tpl: Generate normal dependencies if the LHS module is
	not bootstrapped.
	* Makefile.in: Regenerate.
From-SVN: r91857
Uros Bizjak [Wed, 8 Dec 2004 06:50:58 +0000 (07:50 +0100)]
 
i386-protos.h (ix86_split_fp_branch): New rtx argument.
        * config/i386/i386-protos.h (ix86_split_fp_branch): New rtx
        argument.
        * config/i386/i386.c (output_fp_compare): Fix is_sse condition.
        Use EFLAGS_P only when fcomi insn should be used. Fix handling
        of eflags_p variable. Change alt table accordingly. For non-fcomi
        compare insn always use trailing fnstsw insn. Fix intmode
        calculation for ficom insn.
        (ix86_split_fp_branch): Add "rtx pushed" as new parameter. Call
        ix86_free_from_memory when "pushed" is specified.
        (ix86_expand_branch): Change call to ix86_split_fp_branch.
        * config/i386/i386.md (*cmpfp_0_sf, *cmpfp_0_df, *cmpfp_0_xf):
        Change eflags_p parameter in call to output_fp_compare.
        (*cmpfp_2_sf, *cmpfp_2_df, *cmpfp_2_xf): Remove.
        (*cmpfp_2_sf_1, *cmpfp_2_df_1, *cmpfp_2_xf_1): Rename to
        *cmpfp_2_sf, *cmpfp_2_df, *cmpfp_2_xf.  Change eflags_p
        parameter in call to output_fp_compare.
        (*cmpfp_2_u): Remove.
        (*cmpfp_2_u_1): Rename to *cmpfp_2_u. Change eflags_p parameter
        in call to output_fp_compare.
        (*ficom_1): Remove insn definition and corresponding define_split.
        (*cmpfp_si): New insn definition.
        (*fp_jcc_8): New insn definition. Add new splitters for
        "memory_operand" and "register_operand".
        (define_split): Add new parameter in call to ix86_split_fp_branch.
        config/i386/predicates.md (float_operator): New predicate.
From-SVN: r91856
Kazu Hirata [Wed, 8 Dec 2004 06:39:00 +0000 (06:39 +0000)]
 
c-common.c (verify_tree): Don't check code length if we know we are handling tcc_unary.
	* c-common.c (verify_tree): Don't check code length if we know
	we are handling tcc_unary.
	* print_tree.c (print_node): Remove code to handle RTL
	appearing as a part of a tree node.
	* tree-gimple.c (recalculate_side_effects): Rename fro as len.
	* tree.c (build1_stat): Don't check TREE_CODE_LENGTH.
	(PROCESS_ARG): Don't refer to fro.
	(build2_stat, build3_stat, build4_stat): Don't compute fro.
From-SVN: r91855
Ranjit Mathew [Wed, 8 Dec 2004 02:18:32 +0000 (02:18 +0000)]
 
IdentityHashMap.java (put): Replace mistaken use of "<<" by "*".
	* java/util/IdentityHashMap.java (put): Replace mistaken use of
	"<<" by "*".
From-SVN: r91852
Roger Sayle [Wed, 8 Dec 2004 02:15:36 +0000 (02:15 +0000)]
 
re PR middle-end/18293 (Redundant copy operation introduced by expand)
	PR middle-end/18293
	* expmed.c (EXACT_POWER_OF_2_OR_ZERO_P): Move definition earlier.
	(expand_mult): Special case powers of two to avoid synth_mult.
	* loop.c (product_cheap_p): Handle case where expand_mult does
	require/generate any instructions (i.e. multiplication by zero).
From-SVN: r91851
Richard Henderson [Wed, 8 Dec 2004 02:04:57 +0000 (18:04 -0800)]
 
tree-pretty-print.c (dump_array_domain): Split out from dump_generic_node; fix off-by-one error on zero-based array bounds.
        * tree-pretty-print.c (dump_array_domain): Split out from
        dump_generic_node; fix off-by-one error on zero-based array bounds.
        (dump_generic_node): Use it.
        (print_declaration): Likewise.
From-SVN: r91850
Richard Guenther [Wed, 8 Dec 2004 01:20:34 +0000 (01:20 +0000)]
 
invoke.texi: Adjust default values for large-function-growth and inline-unit-growth to match...
	* doc/invoke.texi: Adjust default values for
	large-function-growth and inline-unit-growth to match
	params.def.  Clarify used algorithm.
From-SVN: r91845
Steve Ellcey [Wed, 8 Dec 2004 00:43:34 +0000 (00:43 +0000)]
 
Makefile.am (AM_MAKEFLAGS): New.
	* libgfortran/Makefile.am (AM_MAKEFLAGS): New.
	* libgfortran/Makefile.in: Regenerate
From-SVN: r91844
Steve Ellcey [Wed, 8 Dec 2004 00:32:39 +0000 (00:32 +0000)]
 
io.h (open_external): Change prototype.
	* io/io.h (open_external): Change prototype.
	* io/unix.c (regular_file): Change prototype and set flags->action if
	needed.
	(open_external): Ditto.
	* io/open.c (new_unit): Let open_external set flags->action.
From-SVN: r91843
David Mosberger [Wed, 8 Dec 2004 00:20:49 +0000 (00:20 +0000)]
 
re PR target/18443 (#pragma pack(1) breaks function pointer initialization)
        PR target/18443
        * config/ia64/ia64.c (ia64_assemble_integer): Add support for
        emitting unaligned pointer-sized integers.
From-SVN: r91842
GCC Administrator [Wed, 8 Dec 2004 00:16:21 +0000 (00:16 +0000)]
 
Daily bump.
From-SVN: r91840
Steven Bosscher [Wed, 8 Dec 2004 00:12:03 +0000 (00:12 +0000)]
 
re PR c/18867 (ICE on invalid switch quantity)
        PR c/18867
        * c-typeck.c (c_start_case): Set orig_type to error_mark_node
        when the type of the controlling expression is not a valid type.
testsuite/
        * gcc.dg/noncompile/
20041207.c: New test.
From-SVN: r91837
Steven Bosscher [Wed, 8 Dec 2004 00:09:30 +0000 (00:09 +0000)]
 
re PR middle-end/17340 (Internal error compiling with -O3)
        PR tree-optimization/17340
        * tree-ssa-pre.c (compute_antic): Fix comment.
        (compute_avail): Do not recurse, instead do a DFS using a stack
        and a loop.
        (execute_pre): Adjust.
From-SVN: r91835
Ziemowit Laski [Tue, 7 Dec 2004 23:46:11 +0000 (23:46 +0000)]
 
c-tree.h (struct lang_type): Rename 'objc_protocols' field to 'objc_info'.
[gcc/ChangeLog]
2004-12-07  Ziemowit Laski  <zlaski@apple.com>
        * c-tree.h (struct lang_type): Rename 'objc_protocols' field
        to 'objc_info'.
[gcc/cp/ChangeLog]
2004-12-07  Ziemowit Laski  <zlaski@apple.com>
        * cp-tree.h (struct lang_type_class): Rename 'objc_protocols'
        field to 'objc_info'.
From-SVN: r91833
Eric Botcazou [Tue, 7 Dec 2004 23:43:40 +0000 (00:43 +0100)]
 
configure.ac: Check for ieeefp.h.
	* configure.ac: Check for ieeefp.h.  Check for fabsf in libm.
	* configure: Regenerate.
	* config.h.in: Likewise.
	* c99_protos.h: New file.
	* libgfortran.h: Include c99_protos.h and conditionally ieeefp.h.
	* intrinsics/c99_functions.c (fabsf): New function.
From-SVN: r91832
Eric Christopher [Tue, 7 Dec 2004 22:47:41 +0000 (22:47 +0000)]
 
re PR target/16317 (MIPS-netbsd does not define NO_IMPLICIT_EXTERN_C)
2004-12-07  Eric Christopher  <echristo@redhat.com>
	PR target/16317
	* config/netbsd.h (NO_IMPLICIT_EXTERN_C): Define.
From-SVN: r91831