Commit Graph

64295 Commits

Author SHA1 Message Date
Arnaud Charlet 180684ebb2 Resync.
From-SVN: r91897
2004-12-08 12:53:25 +01:00
Arnaud Charlet a5b62485c3 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
2004-12-08 12:49:44 +01:00
Arnaud Charlet 4e8c0836b4 * vxaddr2line.adb: Add support for x86 vxworks
From-SVN: r91895
2004-12-08 12:49:07 +01:00
Arnaud Charlet bc41faa231 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
2004-12-08 12:48:53 +01:00
Arnaud Charlet e2d6a9e577 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
2004-12-08 12:48:38 +01:00
Arnaud Charlet 6e73e3ab00 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
2004-12-08 12:48:22 +01:00
Arnaud Charlet 07233820c3 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
2004-12-08 12:48:04 +01:00
Arnaud Charlet 6a2b39bdda 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
2004-12-08 12:47:46 +01:00
Arnaud Charlet bd94e912ff * Makefile.in: Add support for foreign threads on VMS.
From-SVN: r91889
2004-12-08 12:47:34 +01:00
Arnaud Charlet 1a1035e41b 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
2004-12-08 12:47:21 +01:00
Arnaud Charlet 4722c5d693 * g-regpat.adb: (Match): Change a misuse of or to or else
From-SVN: r91887
2004-12-08 12:46:58 +01:00
Arnaud Charlet 2fb9c1bbd4 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
2004-12-08 12:46:45 +01:00
Arnaud Charlet 5f8abbd98b 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
2004-12-08 12:46:30 +01:00
Arnaud Charlet bd7f7a653f 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
2004-12-08 12:46:11 +01:00
Arnaud Charlet 1453276224 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
2004-12-08 12:45:51 +01:00
Arnaud Charlet 98f01d532a 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
2004-12-08 12:27:00 +01:00
Arnaud Charlet 2717634daa 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
2004-12-08 12:26:46 +01:00
Arnaud Charlet e913f03bad * eval_fat.adb: Revert previous change.
From-SVN: r91880
2004-12-08 12:26:32 +01:00
Arnaud Charlet 0da07eae29 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
2004-12-08 12:26:20 +01:00
Arnaud Charlet a4c1cd8065 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
2004-12-08 12:26:04 +01:00
Arnaud Charlet 44e1918abd 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
2004-12-08 12:25:51 +01:00
Arnaud Charlet a7e5b6df8d 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
2004-12-08 12:25:14 +01:00
Arnaud Charlet dcdf1790ad 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
2004-12-08 12:25:03 +01:00
Arnaud Charlet 87f07a97ad 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
2004-12-08 12:24:50 +01:00
Arnaud Charlet 8cd9e2ac30 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
2004-12-08 12:24:38 +01:00
Nick Clifton de40e4dd33 Add new tests for xstormy16
From-SVN: r91870
2004-12-08 11:15:24 +00:00
Richard Sandiford 75d0ac8d5a 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
2004-12-08 10:25:39 +00:00
Kriang Lerdsuwanakij 4104f0f400 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
2004-12-08 10:25:22 +00:00
Nathan Sidwell 0710ccffc3 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
2004-12-08 08:47:59 +00:00
Nathan Sidwell e6aef96964 * doc/trouble.texi (Non-bugs): Clarify empty loop removal.
From-SVN: r91864
2004-12-08 08:42:15 +00:00
Nathan Sidwell db24eb1f4f 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
2004-12-08 08:36:09 +00:00
Uros Bizjak 89b1749804 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
2004-12-08 08:54:43 +01:00
Hans-Peter Nilsson 371f495ae6 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
2004-12-08 07:41:32 +00:00
Matt Kraai 893f1e8768 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
2004-12-08 07:22:47 +00:00
Uros Bizjak 7c82106ff9 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
2004-12-08 07:50:58 +01:00
Kazu Hirata ac1b13f457 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
2004-12-08 06:39:00 +00:00
Ranjit Mathew 7fd64ba372 IdentityHashMap.java (put): Replace mistaken use of "<<" by "*".
* java/util/IdentityHashMap.java (put): Replace mistaken use of
	"<<" by "*".

From-SVN: r91852
2004-12-08 02:18:32 +00:00
Roger Sayle 58b42e19f7 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
2004-12-08 02:15:36 +00:00
Richard Henderson b16bcb178a 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
2004-12-07 18:04:57 -08:00
Richard Guenther 74515a0a1a 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
2004-12-08 01:20:34 +00:00
Steve Ellcey 7dd42019e7 Makefile.am (AM_MAKEFLAGS): New.
* libgfortran/Makefile.am (AM_MAKEFLAGS): New.
	* libgfortran/Makefile.in: Regenerate

From-SVN: r91844
2004-12-08 00:43:34 +00:00
Steve Ellcey 6ecf6dcbb8 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
2004-12-08 00:32:39 +00:00
David Mosberger 1b79dc38dd 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
2004-12-07 16:20:49 -08:00
GCC Administrator 9492747a48 Daily bump.
From-SVN: r91840
2004-12-08 00:16:21 +00:00
Steven Bosscher 02fbae8342 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
2004-12-08 00:12:03 +00:00
Steven Bosscher 665fcad835 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
2004-12-08 00:09:30 +00:00
Ziemowit Laski c7baa14599 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
2004-12-07 23:46:11 +00:00
Eric Botcazou 6e4d9244f7 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
2004-12-07 23:43:40 +00:00
Eric Christopher c08f800e9a 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
2004-12-07 22:47:41 +00:00
Eric Christopher 20c076a853 mips-protos.h (mips_valid_pointer_mode): Move prototype...
2004-12-07  Eric Christopher  <echristo@redhat.com>

	* config/mips/mips-protos.h (mips_valid_pointer_mode): Move
	prototype...
	* config/mips/mips.c: ... here. Make static.

From-SVN: r91830
2004-12-07 22:40:40 +00:00