Commit Graph

97528 Commits

Author SHA1 Message Date
Martin Jambor
6009ee7b41 cgraph.h (struct cgraph_edge): Reorder fields.
2009-12-01  Martin Jambor  <mjambor@suse.cz>

        * cgraph.h (struct cgraph_edge): Reorder fields.  Make loop_nest
	unsigned short int.
	* ipa-prop.h (struct ipa_param_call_note): Likewise.
	* ipa-prop.c (ipa_note_param_call): Initialize note->loop_nest.

From-SVN: r154872
2009-12-01 11:51:07 +01:00
Pascal Obry
b27dc43154 s-osprim-mingw.adb (Get_Base_Time): Make sure that the base time is taken at a clock tick boundary.
2009-12-01  Pascal Obry  <obry@adacore.com>

	* s-osprim-mingw.adb (Get_Base_Time): Make sure that the base time is
	taken at a clock tick boundary.

From-SVN: r154871
2009-12-01 11:29:57 +01:00
Arnaud Charlet
4f08579c5e [multiple changes]
2009-12-01  Thomas Quinot  <quinot@adacore.com>

	* g-sechas.ads (GNAT.Secure_Hashes.H."=" on Context): Make abstract.

2009-12-01  Matthew Gingell  <gingell@adacore.com>

	* adadecode.c: Allow compilation when building the run time in the gnat
	runtime.
	(__gnat_decode): Strip the .nnnn suffix from names of nested functions.

	* gcc-interface/Makefile.in: Ada adadecode to LIBGNAT_SRCS and
	LIBGNAT_OBJS.

2009-12-01  Vincent Celier  <celier@adacore.com>

	* gnatcmd.adb (Check_Files): Quote the path names as they may include
	spaces.

2009-12-01  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Analyze_Object_Declaration): If the defining identifier
	has already been declared, it may have been rewritten as a renaming
	declaration.

From-SVN: r154870
2009-12-01 11:24:39 +01:00
Richard Guenther
c7ba0cfb61 final.c (rest_of_clean_state): If -fcompare-debug is given dump final insns without UIDs.
2009-12-01  Richard Guenther  <rguenther@suse.de>

	* final.c (rest_of_clean_state): If -fcompare-debug is
	given dump final insns without UIDs.
	* tree-ssa-live.c (remove_unused_scope_block_p): Remove
	after_inlining checks.

From-SVN: r154869
2009-12-01 10:02:24 +00:00
Arnaud Charlet
b7d5e87b07 [multiple changes]
2009-12-01  Ed Schonberg  <schonberg@adacore.com>

	* einfo.ads: Clarify use of Is_Private_Primitive.
	* sem_ch6.adb (Analyze_Subprogram_Declaration): An operation is a
	private primitive operation only if it is declared in the scope of the
	private controlling type.
	* exp_ch9.adb (Build_Wrapper_Spec): Build wrappers for private
	protected operations as well.

2009-12-01  Arnaud Charlet  <charlet@adacore.com>

	* gnat1drv.adb (Adjust_Global_Switches): Disable front-end
	optimizations in CodePeer mode, to keep the tree as close to the source
	code as possible, and also to avoid inconsistencies between trees when
	using different optimization switches.

2009-12-01  Thomas Quinot  <quinot@adacore.com>

	* scos.ads: Updated specification of source coverage obligation
	information.

2009-12-01  Thomas Quinot  <quinot@adacore.com>

	* g-sercom.ads, g-sercom-mingw.adb, g-sercom-linux.adb,
	a-ststio.adb, s-commun.adb, s-commun.ads, g-socket.adb,
	g-socket.ads (System.Communications.Last_Index): For the case where no
	element has been transferred and Item'First =
	Stream_Element_Offset'First, raise CONSTRAINT_ERROR.

2009-12-01  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch10.adb (Install_Siblings): A private with_clause on some child
	unit U in an ancestor of the current unit must be ignored if the
	current unit has a regular with_clause on U.

From-SVN: r154868
2009-12-01 10:52:51 +01:00
Paolo Carlini
acb85bea1d re PR c++/42057 (ICE with invalid parameter of virtual function)
2009-12-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/42057
	* g++.dg/parse/crash54.C: New.

From-SVN: r154865
2009-12-01 09:19:47 +00:00
Chao-ying Fu
30093f0492 dsp-lhx.c: New test.
2009-11-30  Chao-ying Fu  <fu@mips.com>

	* gcc.target/mips/dsp-lhx.c: New test.
	* gcc.target/mips/dsp-no-lhx.c: New test.

From-SVN: r154862
2009-12-01 01:40:28 +00:00
Chao-ying Fu
b5290908a2 mips-dsp.md (mips_lhx_<mode>): Use sign_extend.
2009-11-30  Chao-ying Fu  <fu@mips.com>

	* config/mips/mips-dsp.md (mips_lhx_<mode>): Use sign_extend.

From-SVN: r154861
2009-12-01 01:37:52 +00:00
GCC Administrator
4643ee6160 Daily bump.
From-SVN: r154859
2009-12-01 00:16:42 +00:00
Dave Korn
14c4d1271e libstdc++.exp (libstdc++_init): Add host-dependent settings for LC_ALL and LANG.
2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* testsuite/lib/libstdc++.exp (libstdc++_init): Add host-dependent
	settings for LC_ALL and LANG.

From-SVN: r154856
2009-12-01 00:09:30 +00:00
David Edelsohn
5751cf6fef re PR libffi/35484 (libffi doesn't support AIX 64bit)
2009-11-30  David Edelsohn  <edelsohn@gnu.org>

        PR target/35484
        * src/powerpc/ffitarget.h (POWERPC64): Define for PPC64 Linux and
        AIX64.
        * src/powerpc/aix.S: Implement AIX64 version.
        * src/powerpc/aix_closure.S: Implement AIX64 version.
        (ffi_closure_ASM): Use extsb, lha and displament addresses.
        * src/powerpc/ffi_darwin.c (ffi_prep_args): Implement AIX64
        support.
        (ffi_prep_cif_machdep): Same.
        (ffi_call): Same.
        (ffi_closure_helper_DARWIN): Same.

From-SVN: r154855
2009-11-30 18:34:33 -05:00
Dave Korn
17f35e2332 libgomp.exp (libgomp_init): Add host-dependent settings for LC_ALL and LANG.
libgomp/ChangeLog

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
	settings for LC_ALL and LANG.

gcc/testsuite/ChangeLog

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* lib/g++.exp (g++_init): Add host-dependent settings for
	LC_ALL and LANG.
	* lib/gcc-dg.exp: Likewise.
	* lib/options.exp: Likewise.
	* lib/objc.exp (objc_init): Likewise.
	* lib/gfortran.exp (gfortran_init): Likewise.

libjava/ChangeLog

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* testsuite/lib/libjava.exp (libjava_init):  Add host-dependent
	settings for LC_ALL and LANG.

From-SVN: r154854
2009-11-30 23:30:57 +00:00
Dave Korn
f7e413e2d4 configure.ac (USE_CYGWIN_LIBSTDCXX_WRAPPERS): Define to reflect status of AC_CHECK_FUNC for Cygwin DLL libstdc++ support wrappers.
gcc/ChangeLog:

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* configure.ac (USE_CYGWIN_LIBSTDCXX_WRAPPERS): Define to reflect
	status of AC_CHECK_FUNC for Cygwin DLL libstdc++ support wrappers.
	* configure: Regenerate.
	* config.in: Regenerate.

	* config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Define list of --wrap
	options for Cygwin DLL libstdc++ support wrappers.
	(CXX_WRAP_SPEC_OPT): Define spec to use wrappers or not by default
	according to defined value of USE_CYGWIN_LIBSTDCXX_WRAPPERS.
	(CXX_WRAP_SPEC): Define entire wrapper spec in or out according to
	whether USE_CYGWIN_LIBSTDCXX_WRAPPERS is even defined or not.
	(LINK_SPEC): Include CXX_WRAP_SPEC.
	* gcc/config/i386/winnt.c (wrapper_strcmp): New qsort helper function.
	(i386_find_on_wrapper_list): Check if a function is found on the list
	of libstdc++ wrapper options.
	(i386_pe_file_end): If we are importing a wrapped function, also emit
	an external declaration for the real version.
	* config/i386/cygming.opt (muse-libstdc-wrappers): New option for
	Cygwin targets. Update copyright year.

libstdc++-v3/ChangeLog:

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* libstdc++-v3/acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Don't disable
	on PE targets.
	* libstdc++-v3/configure: Regenerate.
	* libstdc++-v3/configure.host: Add libtool DLL options for Cygwin
	and MinGW platforms.

	* libstdc++-v3/include/bits/c++config (_GLIBCXX_VISIBILITY_ATTR): On
	platforms that don't support visibility, allow them to declare a macro
	_GLIBCXX_PSEUDO_VISIBILITY that is applied in place of visibility.
	(_GLIBCXX_PSEUDO_VISIBILITY): Supply empty default if not declared by
	CPU- or OS-specific headers.

	* libstdc++-v3/config/os/newlib/os_defines.h
	(_GLIBCXX_PSEUDO_VISIBILITY_default): New macro for dllimport.
	(_GLIBCXX_PSEUDO_VISIBILITY_hidden): New empty macro.
	(_GLIBCXX_PSEUDO_VISIBILITY): Evaluate to one of the above.
	* libstdc++-v3/config/os/mingw32/os_defines.h
	(_GLIBCXX_PSEUDO_VISIBILITY_default,
	_GLIBCXX_PSEUDO_VISIBILITY_hidden,
	_GLIBCXX_PSEUDO_VISIBILITY): Likewise.

From-SVN: r154853
2009-11-30 23:22:04 +00:00
Paolo Carlini
9c39ceab1a re PR c++/40371 (ICE with template operator)
cp/
2009-11-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/40371
	* call.c (add_template_candidate_real): Early return NULL if
	the arglist length is smaller than skip_without_in_chrg; tidy.

testsuite/
2009-11-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/40371
	* g++.dg/template/crash93.C: New.

From-SVN: r154852
2009-11-30 22:45:06 +00:00
Alexander Monakov
ed807d06d9 Correct testcase
2009-11-29  Alexander Monakov <amonakov@gcc.gnu.org>

	* testsuite/g++.dg/graphite/pr42130.C: Correct testcase.

From-SVN: r154851
2009-11-30 22:08:35 +00:00
Tobias Grosser
7c246f5e3b Fix comments.
2009-11-24  Tobias Grosser  <grosser@fim.uni-passau.de>

	* graphite-clast-to-gimple.c (try_mark_loop_parallel,
	graphite_create_new_loop_guard, translate_clast_for): Fix comments.

From-SVN: r154850
2009-11-30 22:08:16 +00:00
Tobias Grosser
0dd91484ec Protect loops that might be executed zero times.
2009-11-23  Tobias Grosser  <grosser@fim.uni-passau.de>

	PR middle-end/42130
	* graphite-clast-to-gimple.c (graphite_create_new_loop_guard,
	translate_clast_for_loop): New.
	(translate_clast_for): Add a condition around the loop, to do not
	execute loops with zero iterations.
	* testsuite/g++.dg/graphite/pr42130.C: New.
	* testsuite/gcc.dg/graphite/pr35356-2.c: Adapt.

From-SVN: r154849
2009-11-30 22:07:59 +00:00
Tobias Grosser
fd2d813d0c Remove context_loop and level from translate_clast_* methods.
2009-11-23  Tobias Grosser  <grosser@fim.uni-passau.de>

	* graphite-clast-to-gimple.c (try_mark_loop_parallel): New.
	(translate_clast_for, translate_clast_guard, translate_clast, gloog):
	Remove context_loop and level.

From-SVN: r154848
2009-11-30 22:07:38 +00:00
Tobias Grosser
9016166fb6 Simplify translate_clast_* methods
2009-11-23  Tobias Grosser  <grosser@fim.uni-passau.de>

	* graphite-clast-to-gimple.c (translate_clast_user,
	translate_clast_for, translate_clast_guard): Simplify and move common
	elements to translate_clast().
	(translate_clast): Simplify and get common elements.

From-SVN: r154847
2009-11-30 22:07:18 +00:00
Steve Ellcey
cdc90f92a5 pr41551.c: New test.
2009-11-30  Steve Ellcey  <sje@cup.hp.com>

	* gcc.dg/pr41551.c: New test.

From-SVN: r154846
2009-11-30 22:06:58 +00:00
Tobias Grosser
e1f9c1cd1f split translate_clast into single methods
2009-11-23  Tobias Grosser  <grosser@fim.uni-passau.de>

	* graphite-clast-to-gimple.c (translate_clast_user,
	translate_clast_for, translate_clast_guard): Split out of
	translate_clast.

From-SVN: r154845
2009-11-30 22:06:54 +00:00
Tobias Grosser
7a521ff2fc Do not abuse sese for codegeneration
CLooG automatically frees the names list, so sharing SESE_PARAMS_NAMES
between gloog() and debug_generated_program() leads to freeing them
twice. As both SESE_PARAM_NAMES and SESE_PARAMS_INDEX are code
generation data structures remove them and the functions working on them
from sese.h and put them in clast-to-gimple.

2009-11-21  Tobias Grosser  <grosser@fim.uni-passau.de>

	* graphite-clast-to-gimple.c (clast_name_index, new_clast_name_index,
	clast_name_to_index, save_clast_name_index, debug_clast_name_index,
	debug_clast_name_indexes_1, debug_clast_name_indexes,
	clast_name_index_elt_info, eq_clast_name_indexes): Moved from sese.h.
	(clast_name_to_gcc, clast_to_gcc_expression,
	clast_to_gcc_expression_red, gcc_type_for_clast_expr,
	gcc_type_for_clast_eq, graphite_translate_clast_equation,
	graphite_create_guard_cond_expr, graphite_create_new_loop,
	translate_clast): Add params_index.
	(initialize_cloog_names): Create parameter strings from scratch, do
	not reference other strings.
	(create_params_index): New.
	(gloog): Initialize params_index.
	* graphite-scop-detection (free_scops_1): Removed.
	(limit_scops): Use normal free_scops.
	* graphite-sese-to-poly.c (save_var_names): Removed.
	(parameter_index_in_region): Do not initialize SESE_PARAM_NAMES
	and SESE_PARAMS_INDEX.
	* sese.c (new_sese, free_sese): Dito.
	* sese.h (struct sese): Remove params_index, params_names.
	(SESE_PARAMS_INDEX, SESE_PARAMS_NAMES): Removed.

From-SVN: r154844
2009-11-30 22:06:27 +00:00
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