Commit Graph

97356 Commits

Author SHA1 Message Date
Steve Ellcey
f7ce0951b7 function.c (instantiate_virtual_regs_in_insn): Copy to new reg before forcing mode.
2009-11-30  Steve Ellcey  <sje@cup.hp.com>
	    Jakub Jelinek <jakub@redhat.com>

	* function.c (instantiate_virtual_regs_in_insn): Copy to new reg
	before forcing mode.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r154843
2009-11-30 22:06:19 +00:00
Anatoly Sokolov
d64728cf05 sh.c (sh_promote_prototypes): Make static.
* config/sh/sh.c (sh_promote_prototypes): Make static.
	(sh_function_value, sh_libcall_value, sh_function_value_regno_p): New
	functions.
	(TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE): Declare.
	* config/sh/sh.h: (FUNCTION_VALUE_REGNO_P): Redefine, use
	sh_function_value_regno_p.
	(FUNCTION_VALUE, LIBCALL_VALUE): Remove.
	* config/sh/sh-protos.h (sh_function_value_regno_p): Declare.
	(sh_promote_prototypes) : Remove.

From-SVN: r154842
2009-12-01 00:38:46 +03:00
Rainer Orth
6e15674ae2 s-oscons-tmplt.c: Only define _XOPEN5, IOV_MAX if _XOPEN_IOV_MAX is defined.
* s-oscons-tmplt.c [__mips && __sgi]: Only define _XOPEN5, IOV_MAX
	if _XOPEN_IOV_MAX is defined.

From-SVN: r154841
2009-11-30 21:12:13 +00:00
Janus Weil
7c1dab0d8b backport: re PR fortran/42053 ([OOP] SELECT TYPE: reject duplicate CLASS IS blocks)
merge from fortran-dev branch:


gcc/fortran/

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/42053
	* resolve.c (resolve_select_type): Check for duplicate CLASS IS blocks.

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/41631
	* decl.c (gfc_match_derived_decl): Set extension level.
	* gfortran.h (symbol_attribute): Expand 'extension' bit field to 8 bit.
	* iresolve.c (gfc_resolve_extends_type_of): Return value of
	'is_extension_of' has kind=4.
	* match.c (select_type_set_tmp,gfc_match_class_is): Create temporary
	for CLASS IS blocks.
	* module.c (MOD_VERSION): Bump module version.
	(ab_attribute,attr_bits): Remove AB_EXTENSION.
	(mio_symbol_attribute): Handle expanded 'extension' field.
	* resolve.c (resolve_select_type): Implement CLASS IS blocks.
	(resolve_fl_variable_derived): Show correct type name.
	* symbol.c (gfc_build_class_symbol): Set extension level.

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

	* intrinsic.h (gfc_resolve_extends_type_of): Add prototype.
	* intrinsic.c (add_functions): Use 'gfc_resolve_extends_type_of'.
	* iresolve.c (gfc_resolve_extends_type_of): New function, which
	replaces the call to EXTENDS_TYPE_OF by the library function
	'is_extension_of' and modifies the arguments.
	* trans-intrinsic.c (gfc_conv_extends_type_of): Removed.
	(gfc_conv_intrinsic_function): FOR EXTENDS_TYPE_OF, don't call
	gfc_conv_extends_type_of but gfc_conv_intrinsic_funcall.

2009-11-30  Paul Thomas  <pault@gcc.gnu.org>
	    Janus Weil  <janus@gcc.gnu.org>

	* decl.c (encapsulate_class_symbol): Replaced by
	'gfc_build_class_symbol'.
	(build_sym,build_struct): Call 'gfc_build_class_symbol'.
	(gfc_match_derived_decl): Replace vindex by hash_value.
	* dump-parse-tree.c (show_symbol): Replace vindex by hash_value.
	* gfortran.h (symbol_attribute): Add field 'vtab'.
	(gfc_symbol): Replace vindex by hash_value.
	(gfc_class_esym_list): Ditto.
	(gfc_get_derived_type,gfc_build_class_symbol,gfc_find_derived_vtab):
	New prototypes.
	* module.c (mio_symbol): Replace vindex by hash_value.
	* resolve.c (vindex_expr): Rename to 'hash_value_expr'.
	(resolve_class_compcall,resolve_class_typebound_call): Renamed
	'vindex_expr'.
	(resolve_select_type): Replace $vindex by $vptr->$hash.
	* symbol.c (gfc_add_save): Handle vtab symbols.
	(gfc_type_compatible): Rewrite.
	(gfc_build_class_symbol): New function which replaces
	'encapsulate_class_symbol'.
	(gfc_find_derived_vtab): New function to set up a vtab symbol for a
	derived type.
	* trans-decl.c (gfc_create_module_variable): Handle vtab symbols.
	* trans-expr.c (select_class_proc): Replace vindex by hash_value.
	(gfc_conv_derived_to_class): New function to construct a temporary
	CLASS variable from a derived type expression.
	(gfc_conv_procedure_call): Call 'gfc_conv_derived_to_class'.
	(gfc_conv_structure): Initialize the $extends and $size fields of
	vtab symbols.
	(gfc_trans_class_assign): Replace $vindex by $vptr. Remove the $size
	assignment.
	* trans-intrinsic.c (gfc_conv_same_type_as): Replace $vindex by
	$vptr->$hash, and replace vindex by hash_value.
	* trans-stmt.c (gfc_trans_allocate): Insert $vptr references, replace
	$vindex by $vptr. Remove the $size assignment.
	* trans-types.c (gfc_get_derived_type): Make it non-static.


gcc/testsuite/

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/42053
	* gfortran.dg/select_type_9.f03: New.

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/41631
	* gfortran.dg/extends_type_of_1.f03: Fix invalid test case.
	* gfortran.dg/module_md5_1.f90: Adjusted MD5 sum.
	* gfortran.dg/select_type_1.f03: Remove FIXMEs.
	* gfortran.dg/select_type_2.f03: Ditto.
	* gfortran.dg/select_type_8.f03: New test.

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

	* gfortran.dg/extends_type_of_1.f03: New test.
	* gfortran.dg/same_type_as_1.f03: Extended.

2009-11-30  Paul Thomas  <pault@gcc.gnu.org>

	* gfortran.dg/class_4c.f03: Add dg-additional-sources.
	* gfortran.dg/class_4d.f03: Rename module. Cleanup modules.


libgfortran/

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

	* gfortran.map: Add _gfortran_is_extension_of.
	* Makefile.am: Add intrinsics/extends_type_of.c.
	* Makefile.in: Regenerated.
	* intrinsics/extends_type_of.c: New file.

From-SVN: r154840
2009-11-30 21:43:06 +01:00
Thomas Koenig
8146bb5887 re PR fortran/42131 (Weird translation of DO loops)
2009-11-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/42131
	* trans-stmt.c (gfc_trans_do):  Calculate loop count
	without if statements.

From-SVN: r154839
2009-11-30 20:35:41 +00:00
Julian Brown
12d210d9f0 arm.h (PREFERRED_RELOAD_CLASS): Don't restrict Thumb-2 reloads to LO_REGS.
gcc/
	* config/arm/arm.h (PREFERRED_RELOAD_CLASS): Don't restrict Thumb-2
	reloads to LO_REGS.

From-SVN: r154838
2009-11-30 19:40:28 +00:00
Janis Johnson
c217e26183 re PR testsuite/42212 (ERROR: tcl error sourcing /Users/regress/tbox/svn-gcc/gcc/testsuite/gcc.target/powerpc/powerpc.exp.)
PR testsuite/42212
	* gcc.target/powerpc/regnames-1.c: Add missing brace dg-do.

From-SVN: r154837
2009-11-30 19:14:58 +00:00
Richard Henderson
5e04b3b694 Implement vec_perm broadcast, and tidy lots of patterns to help.
From-SVN: r154836
2009-11-30 10:26:55 -08:00
Martin Jambor
9fda11a2ec re PR middle-end/42196 (ICE when SRAing partial assigments to complex number)
2009-11-30  Martin Jambor  <mjambor@suse.cz>

	PR middle-end/42196
	* tree-sra.c (struct access): New field grp_different_types.
	(dump_access): Dump grp_different_types.
	(compare_access_positions): Prefer scalars and vectors over other
	scalar types.
	(sort_and_splice_var_accesses): Set grp_different_types if appropriate.
	(sra_modify_expr): Use the original also when dealing with a complex
	 or vector group accessed as multiple types.

	* testsuite/gcc.c-torture/compile/pr42196-1.c: New test.
	* testsuite/gcc.c-torture/compile/pr42196-2.c: New test.
	* testsuite/gcc.c-torture/compile/pr42196-3.c: New test.

From-SVN: r154834
2009-11-30 18:59:57 +01:00
Richard Henderson
ca659f6ed9 i386.c (avx_vperm2f128_parallel): New.
* config/i386/i386.c (avx_vperm2f128_parallel): New.
        * config/i386/i386-protos.h: Declare it.
        * config/i386/predicates.md (avx_vperm2f128_v8sf_operand,
        avx_vperm2f128_v8si_operand, avx_vperm2f128_v4df_operand): New.
        * config/i386/sse.md (avx_vperm2f128<mode>3): Change to expander.
        (*avx_vperm2f128<mode>_full): Renamed from avx_vperm2f128<mode>3.
        (*avx_vperm2f128<mode>_nozero): New.

From-SVN: r154832
2009-11-30 09:36:07 -08:00
Richard Henderson
784e5ae13a i386-builtin-types.def (V4DF_FTYPE_V4DF_V4DF_V4DI): New.
* config/i386/i386-builtin-types.def (V4DF_FTYPE_V4DF_V4DF_V4DI): New.
	(V8SF_FTYPE_V8SF_V8SF_V8SI): New.
	* config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Support
	V4DF and V8SF for AVX; relax constraint on V4SF to SSE1 from SSE2.
	(IX86_BUILTIN_VEC_PERM_V4DF, IX86_BUILTIN_VEC_PERM_V8SF): New.
	(bdesc_args): Add them.
	(ix86_expand_builtin): Expand them.
	(expand_vec_perm_pshufb2): Only operate on 16-byte vectors.

From-SVN: r154831
2009-11-30 08:56:37 -08:00
Joseph Myers
1feb57517d largefile.m4 (ACX_LARGEFILE): Require AC_CANONICAL_HOST and AC_CANONICAL_TARGET.
* largefile.m4 (ACX_LARGEFILE): Require AC_CANONICAL_HOST and
	AC_CANONICAL_TARGET.

From-SVN: r154830
2009-11-30 16:38:14 +00:00
Arnaud Charlet
66bdcfd655 [multiple changes]
2009-11-30  Vasiliy Fofanov  <fofanov@adacore.com>

	* vms_data.ads: Add new VMS qualifiers,
	REVERSE_BIT_ORDER/NOREVERSE_BIT_ORDER, to support warnings on bit order
	effects.

2009-11-30  Thomas Quinot  <quinot@adacore.com>

	* exp_ch9.adb, exp_ch9.ads, sem_util.ads: Minor reformatting.

2009-11-30  Gary Dismukes  <dismukes@adacore.com>

	* sem_prag.adb: Fix spelling error.

From-SVN: r154829
2009-11-30 17:31:31 +01:00
Arnaud Charlet
47bfea3ae8 [multiple changes]
2009-11-30  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch9.ads (Build_Private_Protected_Declaration): For a protected
	operation that is only declared in a protected body, create a
	corresponding subprogram declaration.
	* exp_ch9.adb (Expand_N_Protected_Body): Create protected body of
	operation in all cases, including for an operation that is only
	declared in the body.
	* sem_ch6.adb: Call Build_Private_Protected_Declaration
	* exp_ch6.adb (Expand_N_Subprogram_Declaration): For an operation
	declared in a protected body, create the declaration for the
	corresponding protected version of the operation.

2009-11-30  Arnaud Charlet  <charlet@adacore.com>

	* gnat1drv.adb (Adjust_Global_Switches): Disable specific expansions
	for Restrictions pragmas, to avoid tree inconsistencies between
	compilations with different pragmas.

2009-11-30  Jerome Lambourg  <lambourg@adacore.com>

	* sem_prag.adb (Check_Duplicated_Export_Name): Allow entities exported
	to CIL to have duplicated export name.

From-SVN: r154828
2009-11-30 17:24:37 +01:00
Arnaud Charlet
9d607bc318 [multiple changes]
2009-11-30  Robert Dewar  <dewar@adacore.com>

	* a-tiinio.adb: Remove extraneous pragma Warnings (Off).

2009-11-30  Thomas Quinot  <quinot@adacore.com>

	* par_sco.adb: Minor reformatting

2009-11-30  Ed Falis  <falis@adacore.com>

	* s-vxwext.ad[s,b], system-vxworks-ppc.ads, s-stchop-vxworks.adb:
	Comment update.

From-SVN: r154827
2009-11-30 17:21:19 +01:00
Arnaud Charlet
968676741a [multiple changes]
2009-11-30  Ed Schonberg  <schonberg@adacore.com>

	* par_sco.adb (Traverse_Handled_Statement_Sequence): Do not emit SCO's
	for null statements that do not come from source.
	* sinfo.ads: Clarify documentation of Comes_From_Source

2009-11-30  Vincent Celier  <celier@adacore.com>

	* prj-nmsc.adb (Add_Source): Use Display_Name for both projects when
	displaying the paths in error message.

2009-11-30  Emmanuel Briot  <briot@adacore.com>

	* adaint.h, adaint.c (file_attributes): force the use of unsigned char.
 	On some platforms, "char" is signed, on others unsigned, so we
 	explicitly specify the one we expect

From-SVN: r154826
2009-11-30 17:16:55 +01:00
Arnaud Charlet
3acdda2df1 [multiple changes]
2009-11-30  Matthew Heaney  <heaney@adacore.com>

	* a-coinve.adb (Insert): Move exception handler closer to point where
	exception can occur.
	Minor reformatting & comment additions.

2009-11-30  Arnaud Charlet  <charlet@adacore.com>

	* freeze.adb (Freeze_Entity): Disable warning on 'Foreign caller must
	pass bounds' for VM targets, not relevant.

2009-11-30  Robert Dewar  <dewar@adacore.com>

	* sem_util.adb (Wrong_Type): Diagnose additional case of modular
	missing parens.
	* a-tiinio.adb, a-wtinio.adb, a-ztinio.adb: Minor reformatting

	* exp_util.adb (Kill_Dead_Code): Suppress warning for some additional
	cases.

	* sem_warn.adb (Set_Warning_Flag): Clean up gnatwA list and ensure
	completeness.
	(Set_Dot_Warning_Flag): Ditto for -gnatw.e
	(Set_Dot_Warning_Flag): Implement -gnbatw.v/w.V
	* usage.adb: Add lines for -gnatw.v/w.V

2009-11-30  Emmanuel Briot  <briot@adacore.com>

	* make.adb (Check_Standard_Library): use Full_Source_Name instead of
	direct call to Find_File. The former provides caching of the results, so
	might be more efficient
	(Start_Compile_If_Necessary): Add comment on possible optimization,
	not done for now.

From-SVN: r154825
2009-11-30 17:08:37 +01:00
Arnaud Charlet
2546734c21 [multiple changes]
2009-11-30  Thomas Quinot  <quinot@adacore.com>

	* g-sechas.adb: Minor reformatting

2009-11-30  Matthew Heaney  <heaney@adacore.com>

	* a-crbtgo.adb (Delete_Fixup): Add comments explaining why predicates
	were removed.
	* a-cdlili.adb (Vet): Remove always-true predicates.

From-SVN: r154823
2009-11-30 16:56:40 +01:00
Thomas Quinot
36e764085d s-sechas.adb, [...]: Rename System.Secure_Hashes to GNAT.Secure_Hashes.
2009-11-30  Thomas Quinot  <quinot@adacore.com>

	* s-sechas.adb, s-sechas.ads, s-shshco.adb, s-shshco.ads, s-shsh64.adb,
	s-shsh64.ads, s-sehamd.adb, s-sehamd.ads, s-shsh32.adb, s-shsh32.ads,
	s-sehash.adb, s-sehash.ads, g-sechas.adb, g-sechas.ads, g-shshco.adb,
	g-shshco.ads, g-md5.ads, g-sha256.ads, g-shsh64.adb, g-shsh64.ads,
	g-sehamd.adb, g-sehamd.ads, g-sha512.ads, g-sha1.ads, Makefile.rtl,
	g-sha224.ads, g-shsh32.adb, g-shsh32.ads, g-sha384.ads, g-sehash.adb,
	g-sehash.ads: Rename System.Secure_Hashes to GNAT.Secure_Hashes.

From-SVN: r154822
2009-11-30 16:51:15 +01:00
Martin Jambor
9dd7d977e6 re PR middle-end/42206 (ipa-prop.c: use of uninitialised local data)
2009-11-30  Martin Jambor  <mjambor@suse.cz>

	PR middle-end/42206
	* ipa-prop.c (ipa_write_node_info): Initialize note_count to zero.

From-SVN: r154820
2009-11-30 16:46:00 +01:00
Arnaud Charlet
eaf180889e [multiple changes]
2009-11-30  Robert Dewar  <dewar@adacore.com>

	* osint.ads: Minor comment update.

2009-11-30  Thomas Quinot  <quinot@adacore.com>

	* s-sechas.adb: Fix swapping error in previous checkin.
	* g-md5.ads, g-sha256.ads, g-sha512.ads, g-sha1.ads, g-sha224.ads,
	g-sha384.ads: Add missing documentation.

From-SVN: r154819
2009-11-30 16:16:49 +01:00
Jakub Jelinek
40513dd30b * ipa-reference.c (propagate): Only dump bitmaps if computed.
From-SVN: r154818
2009-11-30 16:16:00 +01:00
Arnaud Charlet
c5fdd4ad97 [multiple changes]
2009-11-30  Robert Dewar  <dewar@adacore.com>

	* g-sha256.ads, s-sehamd.ads, s-sehamd.adb, g-sha512.ads, g-sha224.ads,
	g-sha384.ads: Minor reformatting

2009-11-30  Emmanuel Briot  <briot@adacore.com>

	* adaint.h (file_attributes): Reduce size of the structure, so that it
	is less costly to store in records.
	* makeutl.adb:
	(Check_Source_Info_In_ALI): use Full_Source_Name instead of a direct
	call to Find_File, since the former provides caching when appropriate,
	which limits the number of system calls in some cases.
	* osint.ads, prj.ads (Source_Data): do not store directly the timestamp,
	but the file attributes since we also need access to the size of the
	ALI file to parse it. This gives an opportunity for saving system calls
	on Unix systems.

From-SVN: r154817
2009-11-30 16:10:58 +01:00
Robert Dewar
9cf032ef7d sem_prag.adb, [...]: Minor reformatting.
2009-11-30  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb, s-sechas.ads, s-sechas.adb: Minor reformatting.

From-SVN: r154816
2009-11-30 16:00:17 +01:00
Arnaud Charlet
9fe2f33eb2 [multiple changes]
2009-11-30  Gary Dismukes  <dismukes@adacore.com>

	* sem_prag.adb (Process_Convention): Change formal E to Ent. In the
	case where the pragma's entity argument is a renaming, return the
	entity denoted by the renaming rather than the renamed entity. Loop
	through the homonyms of the original argument entity, rather than the
	homonyms of any renamed entity. Correct call to Generate_Entity to
	pass the homonym.

2009-11-30  Vincent Celier  <celier@adacore.com>

	* impunit.adb: Add packages that were added to the GNAT library:
	GNAT.SHA224, GNAT.SHA256, GNAT.SHA384 and GNAT.SHA512.
	* s-sechas.adb (Fill_Buffer_Copy): Fixes incorrect slice index

2009-11-30  Robert Dewar  <dewar@adacore.com>

	* exp_ch3.adb: Minor reformatting
	* g-md5.ads, g-sha1.ads: Add comment.

From-SVN: r154815
2009-11-30 15:57:12 +01:00
Arnaud Charlet
fed1bd444d Fix header.
From-SVN: r154814
2009-11-30 15:51:23 +01:00
Arnaud Charlet
66f58116c9 Makefile.in: Remove handling of libgccprefix, no longer needed
* gcc-interface/Makefile.in: Remove handling of libgccprefix, no longer
	needed

From-SVN: r154813
2009-11-30 15:46:43 +01:00
Arnaud Charlet
472574384b [multiple changes]
2009-11-30  Pascal Obry  <obry@adacore.com>

	* expect.c: Fix cast to avoid warnings in x86-64 Windows.

2009-11-30  Thomas Quinot  <quinot@adacore.com>

	* gnat_rm.texi, s-sechas.adb, s-sechas.ads, s-shshco.adb,
	s-shshco.ads, g-md5.adb, g-md5.ads, g-sha256.ads, s-shsh64.adb,
	s-shsh64.ads, s-sehamd.adb, s-sehamd.ads, g-sha512.ads, g-sha1.adb,
	g-sha1.ads, Makefile.rtl, g-sha224.ads, g-sha384.ads, s-shsh32.adb,
	s-shsh32.ads, s-sehash.adb, s-sehash.ads: Reimplementation of GNAT.MD5
	and GNAT.SHA1 to factor shared code and avoid unnecessary stack copies.
	Also introduce new functions SHA-{224,256,384,512}

From-SVN: r154812
2009-11-30 15:45:15 +01:00
Olga Golovanevsky
0f79311b10 re PR tree-optimization/39806 (incorrect pointer hashing in ipa-struct-reorg.c)
2009-11-30  Olga Golovanevsky  <olga@il.ibm.com>

	PR middle-end/39806
	* ipa-struct-reorg.c (new_var_eq): Use DECL_UID to hash new variables.
	(new_var_hash): Likewise.
	(is_in_new_vars_htab): Likewise.
	(add_to_new_vars_htab): Likewise.

From-SVN: r154811
2009-11-30 14:42:54 +00:00
Arnaud Charlet
0727601add [multiple changes]
2009-11-30  Jerome Lambourg  <lambourg@adacore.com>

	* exp_ch3.adb (Make_Predefined_Primitive_Specs): Improve comment for
	the Value_Type case.

2009-11-30  Thomas Quinot  <quinot@adacore.com>

	* a-textio.adb: Minor reformatting

2009-11-30  Pascal Obry  <obry@adacore.com>

	* adaint.c: Fix bug in passing parameter.
	* expect.c: Include io.h to get definition of _open_osfhandle

From-SVN: r154810
2009-11-30 15:28:21 +01:00
Arnaud Charlet
90e9a6bef6 [multiple changes]
2009-11-30  Javier Miranda  <miranda@adacore.com>

	* exp_ch6.adb, sem_scil.adb (Adjust_SCIL_Node): Add missing management
	of N_Unchecked_Type_Conversion nodes when searching for SCIL nodes.
	(Expand_Call): Adjust decoration of SCIL node associated with relocated
	function call.

2009-11-30  Emmanuel Briot  <briot@adacore.com>

	* prj-env.adb (Add_To_Source_Path): Preserve casing of directories

2009-11-30  Vincent Celier  <celier@adacore.com>

	* opt.ads (No_Split_Units): New flag initialized to False

2009-11-30  Jerome Lambourg  <lambourg@adacore.com>

	* exp_ch7.adb (Needs_Finalization): Add comments.
	* exp_ch3.adb (Make_Predefined_Primitive_Specs): Improve handling of
	CIL Value types.

From-SVN: r154809
2009-11-30 15:24:04 +01:00
Robert Dewar
637da456be osint.adb, [...]: Minor reformatting.
2009-11-30  Robert Dewar  <dewar@adacore.com>

	* osint.adb, a-rttiev.adb: Minor reformatting.

From-SVN: r154808
2009-11-30 15:19:48 +01:00
Arnaud Charlet
cca5ded093 [multiple changes]
2009-11-30  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Remove list of warning letters, and refer instead to
	using gnatmake to get a brief list.

	* debug.adb: Document -gnatd.i to disable pragma Warnings
	* par-prag.adb, sem_prag.adb: Recognize -gnatd.i to disable Warnings
	pragma.
	* vms_data.ads: Add /NOWARNINGS_PRAGMS for -gnatd.i
	
2009-11-30  Geert Bosch  <bosch@adacore.com>

	* a-ngelfu.adb (Sin): Correct spelling of sine in comment.

2009-11-30  Vincent Celier  <celier@adacore.com>

	* gnatls.adb: Do not call Get_Target_Parameters in Verbose_Mode, as it
	is not needed and gnatls fails when called with -v -nostdinc.

2009-11-30  Emmanuel Briot  <briot@adacore.com>

	* osint.adb, osint.ads (File_Time_Stamp): new subprogram.

From-SVN: r154807
2009-11-30 15:15:51 +01:00
Kai Tietz
509f7fdc0e unix.c (find_file): Add variable id conditionally for mingw targets.
2009-11-30  Kai Tietz  <Kai.Tietz@onevision.com>

        * io/unix.c (find_file): Add variable id conditionally for
        mingw targets.

From-SVN: r154806
2009-11-30 15:12:33 +01:00
Ed Schonberg
a97e4e3fb5 gnat_rm.texi, [...]: Document new syntax for pragma Annotate
2009-11-30  Ed Schonberg  <schonberg@adacore.com>

	* gnat_rm.texi, gnat_ugn.texi: Document new syntax for pragma Annotate

From-SVN: r154805
2009-11-30 15:11:59 +01:00
Robert Dewar
fd22cd216b scans.ads (Wide_Wide_Character_Found): New flag
2009-11-30  Robert Dewar  <dewar@adacore.com>

	* scans.ads (Wide_Wide_Character_Found): New flag
	* scn.adb (Post_Scan): Set new flag Has_Wide_Wide_Character
	* scng.adb (Set_String): Set new flag Wide_Wide_Character_Found
	(Set_String): Fix failure to reset Wide_Character_Found
	* sinfo.adb (Has_Wide_Wide_Character): New flag in N_String_Literal
	* sinfo.ads (Has_Wide_Wide_Character): New flag in N_String_Literal
	* a-ngelfu.adb: Minor reformatting & code reorganization.
	* usage.adb: Fix typo in -gnatw.W line

From-SVN: r154804
2009-11-30 15:09:30 +01:00
Robert Dewar
d0995fa280 osint.adb, [...]: Minor reformatting.
2009-11-30  Robert Dewar  <dewar@adacore.com>

	* osint.adb, prj-nmsc.adb, sem_prag.adb, sem_util.adb: Minor
	reformatting.
	* csinfo.adb: Terminate run if improper use of reserved flag
	* sinfo.ads, sinfo.adb (Is_Accessibility_Actual): Don't use reserved
	Flag12, used Flag13 instead.

From-SVN: r154803
2009-11-30 15:03:03 +01:00
Arnaud Charlet
1e0e653424 [multiple changes]
2009-11-30  Vincent Celier  <celier@adacore.com>

	* gnatcmd.adb (Check_Files): Recognize documented switches that have a
	separate parameter.

2009-11-30  Robert Dewar  <dewar@adacore.com>

	* sem_util.ads: Minor reformatting
	* errout.adb: Minor reformatting
	Minor code reorganization (use N_Subprogram_Specification to simplify)
	* exp_ch7.adb: Add comment.

From-SVN: r154802
2009-11-30 14:58:01 +01:00
Arnaud Charlet
c5ff22e7b3 [multiple changes]
2009-11-30  Thomas Quinot  <quinot@adacore.com>

	* put_scos.adb (Put_SCOs): Do not generate a SCO unit header for a unit
	that has no SCOs.
	* scos.ads: Minor reformatting

2009-11-30  Ed Schonberg  <schonberg@adacore.com>

	* sem_prag.adb: Second unanalyzed parameter of Annotate is optional.

2009-11-30  Eric Botcazou  <ebotcazou@adacore.com>

	* init.c (__gnat_adjust_context_for_raise, Linux version): Add guard
	for null PC saved in the context.

2009-11-30  Hristian Kirtchev  <kirtchev@adacore.com>

	* a-calend.adb (Day_Of_Week): Rewritten. The routine determines the
	number of days from the Ada Epoch to the input date while ensuring that
	both dates are in the same time zone.

From-SVN: r154801
2009-11-30 14:52:35 +01:00
Arnaud Charlet
226e989e7e [multiple changes]
2009-11-30  Emmanuel Briot  <briot@adacore.com>

	* clean.adb ("-eL"): Also set Follow_Links_For_Dirs, to match what is
	done in other project-aware tools like gnatmake and gprbuild.

2009-11-30  Jerome Lambourg  <lambourg@adacore.com>

	* exp_ch3.adb (Make_Predefined_Primitive_Specs): Take care of CIL
	ValueTypes.
	* exp_ch7.adb (Needs_Finalization): Do not finalize CIL valuetypes.
	* sem_util.adb (Is_Value_Type): Protect against invalid calls to Chars
	(Is_Delegate): New method used for CIL.
	* sem_util.ads (Is_Delegate): New method for CIL handling.
	(Is_Value_Type): Improve documentation.

2009-11-30  Ed Schonberg  <schonberg@adacore.com>

	* errout.adb (Unwind_Internal_Type): Improve error reporting if the
	type is an anonymous access to subprogram that is the type of a formal
	in a subprogram spec.

2009-11-30  Vincent Celier  <celier@adacore.com>

	* prj-nmsc.adb (Check_Interfaces): In a Stand-Alone Library project, if
	attribute Interfaces is not declared, then Library_Interface should
	define the interfaces.

2009-11-30  Ed Schonberg  <schonberg@adacore.com>

	* sem_prag.adb: New semantics for Annotate.

From-SVN: r154800
2009-11-30 14:45:45 +01:00
Tristan Gingold
207b17442a Makefile.in: Do not link with -static-libgcc on Darwin.
2009-11-30  Tristan Gingold  <gingold@adacore.com>

	* gcc-interface/Makefile.in: Do not link with -static-libgcc on Darwin.

From-SVN: r154799
2009-11-30 14:42:23 +01:00
Arnaud Charlet
c3ed199275 [multiple changes]
2009-11-30  Emmanuel Briot  <briot@adacore.com>

	* gnat_ugn.texi: Extend doc for -eL

2009-11-30  Vincent Celier  <celier@adacore.com>

	* osint.adb (Executable_Name (File_Name_Type)): Put the Name in the
	Name_Buffer before testing for a dot in the Name.

2009-11-30  Vincent Celier  <celier@adacore.com>

	* prj-part.adb (Project_Path_Name_Of): Resolve links for final result
	if -eL has been specified.

From-SVN: r154798
2009-11-30 14:36:29 +01:00
Paolo Carlini
55277d8fb5 2009-11-30 Paolo Carlini <paolo.carlini@oracle.com>
Fix typo in last ChangeLog entry.

From-SVN: r154797
2009-11-30 13:34:25 +00:00
Arnaud Charlet
2558db6f93 [multiple changes]
2009-11-30  Vincent Celier  <celier@adacore.com>

	* osint.adb (Executable_Name): Test the name instead of the name buffer
	to check if there is a dot in the given name.

2009-11-30  Sergey Rybin  <rybin@adacore.com>

	* gnat_ugn.texi: Update gnatcheck doc.

From-SVN: r154796
2009-11-30 14:33:46 +01:00
Arnaud Charlet
b8dfbe1ea5 [multiple changes]
2009-11-30  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, sem_disp.adb, usage.adb: Minor reformatting

2009-11-30  Vasiliy Fofanov  <fofanov@adacore.com>

	* gnat_ugn.texi: Minor editing.

2009-11-30  Emmanuel Briot  <briot@adacore.com>

	* prj-nmsc.adb (Search_Directories): when -eL was not specified, assume
	that no directory matches the naming scheme for sources.

From-SVN: r154795
2009-11-30 14:29:41 +01:00
Ira Rosen
f18b55bdc2 tree-vect-stmts.c (vectorizable_assignment): Support multiple types.
* tree-vect-stmts.c (vectorizable_assignment): Support
	multiple types.

From-SVN: r154794
2009-11-30 12:17:43 +00:00
Arnaud Charlet
43ccd04be7 [multiple changes]
2009-11-30  Emmanuel Briot  <briot@adacore.com>

	* prj.adb, prj.ads, prj-nmsc.adb (Has_Multi_Unit_Sources): New field in
	project_data.

2009-11-30  Vincent Celier  <celier@adacore.com>

	* osint.adb (Executable_Name): Correctly decide if the executable
	suffix should be added when Only_If_No_Suffix is True.

2009-11-30  Robert Dewar  <dewar@adacore.com>

	* frontend.adb, gnatlink.adb, prj-conf.adb, prj-tree.adb,
	prj-tree.ads: Minor reformatting

From-SVN: r154793
2009-11-30 13:02:49 +01:00
Arnaud Charlet
828781519a [multiple changes]
2009-11-30  Vincent Celier  <celier@adacore.com>

	* gnatlink.adb (Process_Args): Call Executable_Name on argument of -o
	with Only_If_No_Suffix set to True.
	* osint.adb (Executable_Name): Do not add executable suffix if there is
	already a suffix and Only_If_No_Suffix is True.
	* osint.ads (Executable_Name): New Boolean parameter Only_If_No_Suffix,
	defaulted to False.

2009-11-30  Javier Miranda  <miranda@adacore.com>

	* exp_atag.adb (Build_TSD): Change argument name because the actual is
	now the address of a tag (instead of the tag). Update implementation
	accordingly.
	(Build_CW_Membership): New implementation. Converted into a procedure
	because it has an additional out mode parameter. Its implementation has
	been rewritten to improve the generated code but also to facilitate
	referencing the relocated object node in the caller.
	* exp_atag.ads (Build_CW_Membership): Update profile and documentation.
	* sinfo.ads (N_SCIL_Membership_Test) New_Node.
	(SCIL_Tag_Value): New field of N_SCIL_Membership_Test nodes.
	(Is_Syntactic_Field): Add entry of new node.
	(SCIL_Tag_Value/Set_SCIL_Tag_Value): New subprograms.
	* sinfo.adb (SCIL_Related_Node, SCIL_Entity): Update assertions to
	handle N_SCIL_Membership_Test nodes.
	(SCIL_Tag_Value/Set_SCIL_Tag_Value): New subprograms.
	* sem.adb (Analyze): Add null management for new node.
	* sem_scil.adb (Find_SCIL_Node): Add null management for new node.
	(Check_SCIL_Node): Add checks of N_SCIL_Membership_Test nodes.
	* exp_ch4.adb (Tagged_Membership): Change profile from function to
	procedure. Add generation of SCIL node associated with class-wide
	membership test.
	(Expand_N_In): Complete decoration of SCIL nodes.
	* exp_intr.adb (Expand_Dispatching_Constructor_Call): Tune call to
	Build_CW_Membership because its profile has been changed.
	* exp_util.adb (Insert_Actions): Add null management for new node.
	* sprint.adb (Sprint_Node_Actual): Handle new node.
	* gcc-interface/trans.c Add no processing for N_SCIL_Membership_Test
	nodes.
	* gcc-interface/Make-lang.in: Update dependencies.

2009-11-30  Ed Schonberg  <schonberg@adacore.com>

	* opt.ads: New flags Init_Or_Norm_Scalars_Config,
	Initialize_Scalars_Config, to capture the presence of the corresponding
	pragmas in a configuration file.
	* opt.adb (Register_, Save_, Set_, Restore_Opt_Configuration_Switches):
	handle new flags so that they are restored for each compilation unit.
	* frontend.adb: At the end of compilation, scan the context of the main
	unit to recover occurrences of pragma Initialize_Scalars, to annotate
	the ALI file accordingly.

From-SVN: r154792
2009-11-30 12:55:21 +01:00
Arnaud Charlet
fd0d899b57 [multiple changes]
2009-11-30  Vincent Celier  <celier@adacore.com>

	* prj-tree.ads: Minor comment updates
	* prj-tree.adb: Minor reformatting

2009-11-30  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Derive_Subprogram): Indicate that an inherited
	predefined control operation is hidden if the parent type is not
	visibly controlled.
	* sem_ch6.adb (Check_Overriding_Indicator): Do not report error if
	overridden operation is not visible, as may be the case with predefined
	control operations.
	* sem_disp.adb (Check_Dispatching_Operation): Do not emit warning on
	non-overriding control operation when type is not visibly controlled,
	if the subprogram has an explicit overriding indicator.
	* sem_util.ads, sem_util.adb (Is_Visibly_Controlled): Moved here from
	sem_disp.adb.

From-SVN: r154791
2009-11-30 12:41:56 +01:00
Emmanuel Briot
33f9ea08c6 prj-tree.adb (Create_Attribute): Fix handling of VMS and Windows
2009-11-30  Emmanuel Briot  <briot@adacore.com>

	* prj-tree.adb (Create_Attribute): Fix handling of VMS and Windows
	* prj-attr.ads: Minor comment updates

From-SVN: r154790
2009-11-30 12:38:12 +01:00