Commit graph

110647 commits

Author SHA1 Message Date
Kirill Yukhin
5fcafa6051 Add -mlzcnt.
gcc/

2011-08-01  Kirill Yukhin  <kirill.yukhin@intel.com>

	PR target/49547
	* config.gcc (i[34567]86-*-*): Replace abmintrin.h with
	lzcntintrin.h.
	(x86_64-*-*): Likewise.
	* config/i386/i386.opt (mlzcnt): New.
	* config/i386/abmintrin.h: File removed.
	(__lzcnt_u16, __lzcnt, __lzcnt_u64): Moved to ...
	* config/i386/lzcntintrin.h: ... here. New file.
	(__lzcnt): Rename to ...
	(__lzcnt32): ... this.
	* config/i386/bmiintrin.h (head): Update copyright year.
	(__lzcnt_u16): Removed.
	(__lzcnt_u32): Likewise.
	(__lzcnt_u64): Likewise.
	* config/i386/x86intrin.h: Include lzcntintrin.h when __LZCNT__
	is defined, remove abmintrin.h.
	* config/i386/cpuid.h (bit_LZCNT): New.
	* config/i386/driver-i386.c (host_detect_local_cpu): Detect
	LZCNT feature.
	* config/i386/i386-c.c (ix86_target_macros_internal): Define
	__LZCNT__ if needed.
	* config/i386/i386.c (ix86_target_string): New option -mlzcnt.
	(ix86_option_override_internal): Handle LZCNT option.
	(ix86_valid_target_attribute_inner_p): Likewise.
	(struct builtin_description bdesc_args) <IX86_BUILTIN_CLZS>: Update.
	* config/i386/i386.h (TARGET_LZCNT): New.
	(CLZ_DEFINED_VALUE_AT_ZERO): Update.
	* config/i386/i386.md (clz<mode>2): Update insn constraint.
	(clz<mode>2_lzcnt): Likewise.
	* doc/invoke.texi: Mention -mlzcnt option.
	* doc/extend.texi: Likewise.

gcc/testsuite/

2011-08-01  Kirill Yukhin  <kirill.yukhin@intel.com>

	* gcc.target/i386/i386.exp (check_effective_target_lzcnt): New.
	* gcc.target/i386/lzcnt-1.c: New test.
	* gcc.target/i386/lzcnt-2.c: Likewise.
	* gcc.target/i386/lzcnt-2a.c: Likewise.
	* gcc.target/i386/lzcnt-3.c: Likewise.
	* gcc.target/i386/lzcnt-4.c: Likewise.
	* gcc.target/i386/lzcnt-4a.c: Likewise.
	* gcc.target/i386/lzcnt-5.c: Likewise.
	* gcc.target/i386/lzcnt-6.c: Likewise.
	* gcc.target/i386/lzcnt-6a.c: Likewise.
	* gcc.target/i386/lzcnt-check.h: Likewise.

	* gcc.target/i386/sse-12.c (dg-compile): Add -mlzcnt.
	* gcc.target/i386/sse-13.c: Likewise.
	* gcc.target/i386/sse-14.c: Likewise.
	* g++.dg/other/i386-2.C: Likewise.
	* g++.dg/other/i386-3.C: Likewise.

From-SVN: r177034
2011-08-01 06:47:31 -07:00
Ed Schonberg
4561baf7b7 sem_ch4.adb (Operator_Check): improve error message when both a with_clause and a use_clause are needed to...
2011-08-01  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch4.adb (Operator_Check): improve error message when both a
	with_clause and a use_clause are needed to make operator usage legal.
	* sem_util.ads, sem_util.adb (Unit_Is_Visible): new predicate to
	determine whether a compilation unit is visible within an other,
	either through a with_clause in the current unit, or a with_clause in
	its library unit or one one of its parents.

From-SVN: r177033
2011-08-01 15:33:29 +02:00
Arnaud Charlet
383e179e1a [multiple changes]
2011-08-01  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch5.adb (Expand_N_Iterator_Loop): handle properly an iterator
	over an arbitrary expression of an array or container type.
	* lib-xref.adb: clarify comment.

2011-08-01  Bob Duff  <duff@adacore.com>

	* einfo.ads: Minor reformatting.
	* debug.adb: Minor comment improvement.

2011-08-01  Javier Miranda  <miranda@adacore.com>

	* sem_ch4.adb (Try_Object_Operation): For class-wide subprograms do not
	consider hidden subprograms as valid candidates.

2011-08-01  Arnaud Charlet  <charlet@adacore.com>

	* make.adb (Compile): Strip -mxxx switches in CodePeer mode.

2011-08-01  Vasiliy Fofanov  <fofanov@adacore.com>

	* gnat_ugn.texi: Fix typo.

From-SVN: r177031
2011-08-01 15:29:56 +02:00
Arnaud Charlet
61c161b2ea [multiple changes]
2011-08-01  Robert Dewar  <dewar@adacore.com>

	* i-cstrin.adb, sem_util.adb, exp_ch11.adb, sem_ch8.adb,
	lib-xref.adb: Minor reformatting

2011-08-01  Gary Dismukes  <dismukes@adacore.com>

	* exp_ch6.adb (Expand_N_Extended_Return_Statement): Replace test of
	when to generate a call to Move_Final_List.
	(Has_Controlled_Parts): Remove this function.

From-SVN: r177030
2011-08-01 15:26:49 +02:00
Arnaud Charlet
84df40f768 [multiple changes]
2011-08-01  Geert Bosch  <bosch@adacore.com>

	* par-ch3.adb (P_Discrete_Choice_List): Improve error message for extra
	"," in choice list.

2011-08-01  Thomas Quinot  <quinot@adacore.com>

	* exp_ch11.adb (Expand_N_Raise_Statement): Mark N_Raise_xxx_Error for
	explicit raise of a predefined exception as Comes_From_Source if the
	original N_Raise_Statement comes from source.

2011-08-01  Robert Dewar  <dewar@adacore.com>

	* sinfo.ads: Add comment.
	* sem_ch6.adb: Minor reformatting.

2011-08-01  Robert Dewar  <dewar@adacore.com>

	* freeze.adb (Freeze_Entity): Refine check for bad component size
	clause to avoid rejecting confirming clause when atomic/aliased present.

2011-08-01  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch8.adb (Find_Direct_Name, Analyze_Expanded_Name): use Is_LHS to
	better determine whether an entity reference is a write.
	* sem_util.adb (Is_LHS): refine predicate to handle assignment to a
	subcomponent.
	* lib-xref.adb (Output_References): Do no suppress a read reference at
	the same location as an immediately preceeding modify-reference, to
	handle properly in-out actuals.

2011-08-01  Tristan Gingold  <gingold@adacore.com>

	* env.c (__gnat_setenv) [VMS]: Refine previous change.

2011-08-01  Quentin Ochem  <ochem@adacore.com>

	* i-cstrin.adb (New_String): Changed implementation, now uses only the
	heap to compute the result.

From-SVN: r177029
2011-08-01 15:23:32 +02:00
Arnaud Charlet
c7f0d2c0c5 [multiple changes]
2011-08-01  Robert Dewar  <dewar@adacore.com>

	* atree.ads: Minor reformatting.

2011-08-01  Emmanuel Briot  <briot@adacore.com>

	* g-expect.adb (Get_Command_Output): Fix memory leak.

2011-08-01  Geert Bosch  <bosch@adacore.com>

	* cstand.adb (P_Float_Type): New procedure to print the definition of
	predefined fpt types.
	(P_Mixed_Name): New procedure to print a name using mixed case
	(Print_Standard): Use P_Float_Type for printing floating point types
	* einfo.adb (Machine_Emax_Value): Add preliminary support for quad
	precision IEEE float.

2011-08-01  Thomas Quinot  <quinot@adacore.com>

	* sem_ch3.adb: Minor reformatting.

2011-08-01  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Analyze_Parameterized_Expression): If the expression is
	the completion of a generic function, insert the new body rather than
	rewriting the original.

2011-08-01  Yannick Moy  <moy@adacore.com>

	* sinfo.ads, errout.ads: Typos in comments.

From-SVN: r177028
2011-08-01 15:17:49 +02:00
Arnaud Charlet
1c54829e23 [multiple changes]
2011-08-01  Robert Dewar  <dewar@adacore.com>

	* par-endh.adb: Minor reformatting.

2011-08-01  Robert Dewar  <dewar@adacore.com>

	* aspects.ads, aspects.adb: Add aspects for library unit pragmas
	(Pre_Post_Aspects): New subtype.
	* par-ch12.adb (P_Generic): New syntax for aspects in packages
	* par-ch13.adb (P_Aspect_Specifications): Add Semicolon parameter
	* par-ch7.adb (P_Package): Remove Decl parameter
	(P_Package): Handle new syntax for aspects (before IS)
	* par-ch9.adb (P_Protected_Definition): Remove Decl parameter, handle
	new aspect syntax
	(P_Task_Definition): Remove Decl parameter, handle new aspect syntax
	* par.adb (P_Aspect_Specifications): Add Semicolon parameter
	(P_Package): Remove Decl parameter
	* sem_ch13.adb (Analyze_Aspect_Specifications): Handle library unit
	aspects
	* sem_ch7.adb (Analyze_Package_Declaration): Analyze new format aspect
	specs
	* sem_util.ads, sem_util.adb (Static_Boolean): New function
	* sinfo.ads: Document new syntax for aspects in packages etc.
	* sprint.adb: Handle new syntax of aspects before IS in package

2011-08-01  Thomas Quinot  <quinot@adacore.com>

	* atree.ads: Minor reformatting.
	* sem_prag.adb: Minor reformatting.

2011-08-01  Robert Dewar  <dewar@adacore.com>

	* exp_util.adb (Insert_Actions): Fix error in handling Actions for
	case expr alternative.

2011-08-01  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb: Fix typo.

From-SVN: r177027
2011-08-01 14:50:07 +02:00
Geert Bosch
9eea4346af sem_prag.adb (Check_No_Link_Name): New procedure.
2011-08-01  Geert Bosch  <bosch@adacore.com>

	* sem_prag.adb (Check_No_Link_Name): New procedure.
	(Process_Import_Or_Interface): Use Check_No_Link_Name.
	* cstand.adb (Create_Standard): Use Esize (Standard_Long_Long_Float)
	instead of Standard_Long_Long_Float_Size global. Preparation for
	eventual removal of per type constants.
	* exp_util.ads (Get_Stream_Size): New function returning the stream
	size value of subtype E.
	* exp_util.adb (Get_Stream_Size): Implement new function.
	* exp_strm.adb (Build_Elementary_Input_Call): Use Get_Stream_Size
	function.
	* exp_attr.adb (Attribute_Stream_Size): Use Get_Stream_Size
	* einfo.adb:
	(Machine_Mantissa_Value): Handle 128-bit quad precision IEEE floats

From-SVN: r177026
2011-08-01 14:41:48 +02:00
Julian Brown
655b30bfde configure.ac (fixed-point): Add ARM support.
gcc/
	* configure.ac (fixed-point): Add ARM support.
	* configure: Regenerate.
	* config/arm/arm.c (arm_fixed_mode_set): New struct.
	(arm_set_fixed_optab_libfunc): New.
	(arm_set_fixed_conv_libfunc): New.
	(arm_init_libfuncs): Initialise fixed-point helper libfuncs with
	ARM-specific names.
	(aapcs_libcall_value): Return sub-word-size fixed-point libcall
	return values in SImode.
	(arm_return_in_msb): Return fixed-point types in the msb.
	(arm_pad_reg_upwards, arm_pad_arg_upwards): Pad fixed-point types
	upwards.
	(arm_scalar_mode_supported_p): Support fixed-point modes.
	(arm_vector_mode_supported_p): Support vector fixed-point modes.
	* config/arm/arm.h (SHORT_FRACT_TYPE_SIZE, FRACT_TYPE_SIZE)
	(LONG_FRACT_TYPE_SIZE, LONG_LONG_FRACT_TYPE_SIZE)
	(SHORT_ACCUM_TYPE_SIZE, ACCUM_TYPE_SIZE, LONG_ACCUM_TYPE_SIZE)
	(LONG_LONG_ACCUM_TYPE_SIZE, MAX_FIXED_MODE_SIZE): Define.
	* config/arm/iterators.md (FIXED, ADDSUB, UQADDSUB, QADDSUB, QMUL):
	New mode iterators.
	(qaddsub_suf): New mode attribute.
	* config/arm/arm-modes.def (FRACT, UFRACT, ACCUM, UACCUM): Declare
	vector modes.
	* config/arm/predicates.md (sat_shift_operator): New predicate.
	* config/arm/arm-fixed.md: New.
	* config/arm/arm.md: Include arm-fixed.md.
	* config/arm/t-arm (MD_INCLUDES): Add arm-fixed.md.

	libgcc/
	* config.host (arm*-*-linux*, arm*-*-uclinux*, arm*-*-eabi*)
	(arm*-*-symbianelf*): Add t-fixedpoint-gnu-prefix makefile fragment.
	* config/arm/bpabi-lib.h (LIBGCC2_FIXEDBIT_GNU_PREFIX): Define.

	gcc/testsuite/
	* gcc.target/arm/fixed-point-exec.c: New test.

From-SVN: r177025
2011-08-01 12:41:30 +00:00
Geert Bosch
3d6c3bd710 cstand.adb: Fix comments.
2011-08-01  Geert Bosch  <bosch@adacore.com>

	* cstand.adb: Fix comments.
	* sem_prag.adb (Analyze_Pragma): Use List_Length instead of explicit
	count of arguments.

From-SVN: r177024
2011-08-01 14:39:29 +02:00
Arnaud Charlet
e7d897b851 [multiple changes]
2011-08-01  Robert Dewar  <dewar@adacore.com>

	* exp_ch4.adb, sem_cat.adb: Minor reformatting.

2011-08-01  Geert Bosch  <bosch@adacore.com>

	* atree.ads: Fix comment.

From-SVN: r177023
2011-08-01 14:37:10 +02:00
Julian Brown
460b171de5 calls.c (emit_library_call_value_1): Support padding for libcall arguments and return values.
gcc/
	* calls.c (emit_library_call_value_1): Support padding for libcall
	arguments and return values.
	* config/arm/arm.c (arm_pad_arg_upward): Pad half-float values
	downwards in big-endian mode.

From-SVN: r177022
2011-08-01 12:34:15 +00:00
Arnaud Charlet
c228a06986 [multiple changes]
2011-08-01  Robert Dewar  <dewar@adacore.com>

	* aspects.ads, aspects.adb (Aspect_Names): Moved from body to spec.
	* par-ch13.adb (P_Aspect_Specifications): Check misspelled aspect name.
	* par.adb: Add with for Namet.Sp.
	* par-tchk.adb: Minor reformatting.

2011-08-01  Vincent Celier  <celier@adacore.com>

	* mlib-tgt-specific-vms-alpha.adb, mlib-tgt-specific-vms-ia64.adb
	(Build_Dynamic_Library): Use new function Init_Proc_Name to get the name
	of the init procedure of a SAL.
	* mlib-tgt-vms_common.ads, mlib-tgt-vms_common.adb (Init_Proc_Name):
	New procedure.

2011-08-01  Thomas Quinot  <quinot@adacore.com>

	* exp_ch4.adb, s-tasini.ads, sem_attr.adb, s-soflin.ads: Minor
	reformatting.

2011-08-01  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* adaint.c (__gnat_file_time_name_attr): Get rid of warning.

2011-08-01  Thomas Quinot  <quinot@adacore.com>

	* sem_util.adb, sem_util.ads (Has_Overriding_Initialize): Make function
	conformant with its spec (return True only for types that have
	an overriding Initialize primitive operation that prevents them from
	having preelaborable initialization).
	* sem_cat.adb (Validate_Object_Declaration): Fix test for preelaborable
	initialization for controlled types in Ada 2005 or later mode.

From-SVN: r177021
2011-08-01 14:31:32 +02:00
Rainer Orth
b6193c94eb re PR debug/49887 (.debug_macro breaks many Solaris/SPARC tests)
PR debug/49887
	* config/sol2.c (solaris_code_end): Rename to solaris_file_end.
	* config/sol2-protos.h: Likewise.
	* config/i386/i386.c (ix86_code_end) [TARGET_SOLARIS]: Don't call
	solaris_code_end.
	* config/i386/sol2.h [!USE_GAS] (TARGET_ASM_FILE_END): Redefine.
	* config/sparc/sparc.c (sparc_file_end) [TARGET_SOLARIS]: Call
	solaris_file_end.
	* config/sparc/sol2.h (TARGET_ASM_CODE_END): Remove.

From-SVN: r177020
2011-08-01 12:14:21 +00:00
Julian Brown
247eb06fed Makefile.in (LIBGCC_VER_FIXEDPOINT_GNU_PREFIX): New.
libgcc/
	* Makefile.in (LIBGCC_VER_FIXEDPOINT_GNU_PREFIX): New.
	(libgcc-std.ver.in): Use above.
	* fixed-bit.h (LIBGCC2_FIXEDBIT_GNU_PREFIX): Define, if
	LIBGCC2_GNU_PREFIX is defined.  Use instead of LIBGCC2_GNU_PREFIX
	throughout file.
	* config/t-fixedpoint-gnu-prefix: New file.
	* config/t-gnu-prefix (LIBGCC_VER_FIXEDPOINT_GNU_PREFIX): Set.
	* libgcc-std.ver.in (fixed-point routines): Use __FIXPTPFX__
	instead of __PFX__.

From-SVN: r177019
2011-08-01 12:02:45 +00:00
Julian Brown
0747aae46b tree-ssa-sccvn.c (copy_reference_ops_from_ref): Support FIXED_CST.
gcc/
	* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Support FIXED_CST.

From-SVN: r177018
2011-08-01 11:55:20 +00:00
Julian Brown
848fac28ae final.c (output_addr_const): Print fixed-point constants as decimal not hex.
gcc/
	* final.c (output_addr_const): Print fixed-point constants as
	decimal not hex.

From-SVN: r177017
2011-08-01 11:53:51 +00:00
Richard Guenther
e62a2b6e5c stor-layout.c (initialize_sizetypes): Properly sign-extend bitsiztype TYPE_MAX_VALUE.
2011-08-01  Richard Guenther  <rguenther@suse.de>

	* stor-layout.c (initialize_sizetypes): Properly sign-extend
	bitsiztype TYPE_MAX_VALUE.

From-SVN: r177016
2011-08-01 11:51:04 +00:00
Julian Brown
f64398b59c optabs.c (prepare_cmp_insn): Use correct biasing for fixed-point comparison helpers.
* optabs.c (prepare_cmp_insn): Use correct biasing for fixed-point
	comparison helpers.

From-SVN: r177015
2011-08-01 11:46:27 +00:00
Robert Dewar
857ade1b5a aspects.ads, [...]: Add aspect Type_Invariant, Precondition, Postcondition.
2011-08-01  Robert Dewar  <dewar@adacore.com>

	* aspects.ads, aspects.adb: Add aspect Type_Invariant, Precondition,
	Postcondition.
	(Same_Aspect): New function.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Add aspect
	Type_Invariant, Precondition, Postcondition.
	* snames.ads-tmpl: Add Name_Type_Invariant.

From-SVN: r177011
2011-08-01 12:44:02 +02:00
Robert Dewar
bd949ee2a3 freeze.adb (Freeze_Entity): Don't call Check_Aspect_At_Freeze_Point here.
2011-08-01  Robert Dewar  <dewar@adacore.com>

	* freeze.adb (Freeze_Entity): Don't call Check_Aspect_At_Freeze_Point
	here.
	(Freeze_All_Ent): Fix error in handling inherited aspects.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Skip aspect that is
	already analyzed, but don't skip entire processing of a declaration,
	that's wrong in some cases of declarations being rewritten.
	(Analyze_Aspect_Specification): Set Is_Delayed_Aspect in aspects.
	Don't delay for integer, string literals
	Treat predicates in usual manner for delay, remove special case code,
	not needed.
	(Analyze_Freeze_Entity): Make call to Check_Aspect_At_Freeze_Point
	(Build_Predicate_Function): Update saved expression in aspect
	(Build_Invariant_Procedure): Update saved expression in aspect
	* exp_ch4.adb (Expand_N_Selected_Component): Only do the optimization
	of replacement of discriminant references if the reference is simple.

From-SVN: r177010
2011-08-01 12:39:44 +02:00
Robert Dewar
f1c952af5e aspects.ads, [...]: Add Static_Predicate and Dynamic_Predicate.
2011-08-01  Robert Dewar  <dewar@adacore.com>

	* aspects.ads, aspects.adb: Add Static_Predicate and Dynamic_Predicate.
	* sem_ch13.adb (Analyze_Aspect_Specification): Add processing for
	Static_Predicate and Dynamic_Predicate.
	(Build_Predicate_Function): Add processing for Static_Predicate
	and Dynamic_Predicate.
	* sinfo.ads, sinfo.adb (From_Dynamic_Predicate): New flag
	(From_Static_Predicate): New flag
	* snames.ads-tmpl: Add Name_Static_Predicate and Name_Dynamic_Predicate

2011-08-01  Robert Dewar  <dewar@adacore.com>

	* usage.adb: Documentation cleanup for Ada version modes in usage.
	* expander.adb: Minor reformatting.

From-SVN: r177009
2011-08-01 12:31:31 +02:00
Arnaud Charlet
47e11d08d6 [multiple changes]
2011-08-01  Robert Dewar  <dewar@adacore.com>

	* atree.ads: Minor comment fix.
	* a-stwifi.adb, a-stzfix.adb, a-strfix.adb, a-ztexio.ads, a-textio.ads,
	a-witeio.ads, sem_prag.adb: Minor reformatting.

2011-08-01  Doug Rupp  <rupp@adacore.com>

	* env.c (__gnat_setenv) [VMS]: Force 32bit on item list structure
	pointers. Use descrip.h header file for convenience. Add some
	comments.

2011-08-01  Robert Dewar  <dewar@adacore.com>

	* freeze.adb (Freeze_Entity): Call Check_Aspect_At_Freeze_Point
	(Freeze_All): Call Check_Aspect_At_End_Of_Declarations
	* sem_ch13.ads, sem_ch13.adb (Check_Aspect_At_Freeze_Point):
	New procedure.
	(Check_Aspect_At_End_Of_Declarations): New procedure
	(Analye_Aspect_Specification): Minor changes for above procedures
	* sinfo.ads, sinfo.adb (Is_Delayed_Aspect): Now set in aspect
	specification node as well.

2011-08-01  Pascal Obry  <obry@adacore.com>

	* adaint.c (_gnat_stat): GetFilesAttributesEx() would fail on special
	Windows files. Use GetFilesAttributes() in this case to check for file
	existence instead of returning with an error code.

From-SVN: r177008
2011-08-01 12:27:49 +02:00
Vincent Celier
a3a16b2187 a-stzfix.adb, [...] (Replace_Slice): Fixed computation when High is above Source length.
2011-08-01  Vincent Celier  <celier@adacore.com>

	* a-stzfix.adb, a-stwifi.adb (Replace_Slice): Fixed computation when
	High is above Source length.

From-SVN: r177007
2011-08-01 12:15:08 +02:00
Robert Dewar
ff58cc6919 a-ztexio.ads, [...]: Fix comment.
2011-08-01  Robert Dewar  <dewar@adacore.com>

	* a-ztexio.ads, a-textio.ads, a-witeio.ads: Fix comment.

From-SVN: r177006
2011-08-01 12:13:07 +02:00
Arnaud Charlet
6bb8853384 [multiple changes]
2011-08-01  Robert Dewar  <dewar@adacore.com>

	* aspects.ads (Boolean_Aspects): New subtype.
	* exp_ch13.adb (Expand_Freeze_Entity): Fix errors in handling aspects
	for derived types in cases where the parent type and derived type have
	aspects.
	* freeze.adb (Freeze_Entity): Fix problems in handling derived type
	with aspects when parent type also has aspects.
	(Freeze_Entity): Deal with delay of boolean aspects (must evaluate
	boolean expression at this point).
	* sem_ch13.adb (Analyze_Aspect_Specifications): Delay all aspects in
	accordance with final decision on the Ada 2012 feature.
	* sinfo.ads, sinfo.adb (Is_Boolean_Aspect): New flag.

2011-08-01  Matthew Heaney  <heaney@adacore.com>

	* a-chtgbo.adb (Delete_Node_Sans_Free): Replace iterator with selector.

From-SVN: r177005
2011-08-01 11:25:46 +02:00
Arnaud Charlet
060a3f289f [multiple changes]
2011-08-01  Pascal Obry  <obry@adacore.com>

	* a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb:
	Fix Replace_Slice when High is above current string size.
	(Replace_Slice): Fix DL computation when High is above current
	string length.

2011-08-01  Gary Dismukes  <dismukes@adacore.com>

	* gnat_rm.texi: Add documentation for pragma Static_Elaboration_Desired.

From-SVN: r177004
2011-08-01 11:22:08 +02:00
Arnaud Charlet
e7f567a338 [multiple changes]
2011-08-01  Matthew Heaney  <heaney@adacore.com>

	* a-rbtgbo.adb (Delete_Node_Sans_Free): Fixed assignment to left child
	of node.

2011-08-01  Pascal Obry  <obry@adacore.com>

	* a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb: Minor
	reformatting.

From-SVN: r177003
2011-08-01 11:15:30 +02:00
Arnaud Charlet
1a265e7824 [multiple changes]
2011-08-01  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Analyze_Attribute, case 'Access): handle properly named
	access to protected subprograms in generic bodies.
	* sem_ch6.adb (Analyze_Subprogram_Declaration): If the context is a
	protected type, indicate that the convention of the subprogram is
	Convention_Protected, because it may be used in subsequent declarations
	within the protected declaration.

2011-08-01  Vincent Celier  <celier@adacore.com>

	* mlib-prj.adb (Build_Library): Use "ada_" as the prefix for the "init"
	and "final" procedures when the name of the library is "ada", to avoid
	duplicate symbols "adainit" and "adafinal" in executables.

From-SVN: r177002
2011-08-01 11:04:40 +02:00
Ed Schonberg
67e28ef818 sem_attr.adb (Analyze_Attribute, [...]): Handle properly a quantified expression that appears within a postcondition and...
2011-08-01  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Analyze_Attribute, case 'Result): Handle properly a
	quantified expression that appears within a postcondition and uses the
	Ada2012 'Result attribute.

From-SVN: r177001
2011-08-01 10:59:50 +02:00
Jakub Jelinek
57044b5af1 rem_pio2q.c (__quadmath_kernel_rem_pio2): Fix up fq to y conversion for prec 3 and __FLT_EVAL_METHOD__ != 0.
* math/rem_pio2q.c (__quadmath_kernel_rem_pio2): Fix up fq to y
	conversion for prec 3 and __FLT_EVAL_METHOD__ != 0.

From-SVN: r176999
2011-08-01 10:55:33 +02:00
Ian Lance Taylor
8586635cd8 Use temporary variables for calls with multiple results.
From-SVN: r176998
2011-08-01 01:44:36 +00:00
Richard Henderson
c469244ec0 h8300: Add flags to .section directives.
From-SVN: r176996
2011-07-31 18:13:43 -07:00
Richard Henderson
b87ac61522 Handle SIZE_TYPE being unsigned short.
From-SVN: r176995
2011-07-31 18:11:04 -07:00
GCC Administrator
77b069404f Daily bump.
From-SVN: r176994
2011-08-01 00:18:56 +00:00
Kaz Kojima
05eb5cc3fe re PR target/49880 (SuperH: ICE when -m4 is used with -mdiv=call-div1)
PR target/49880
	* config/sh/sh.md (udivsi3_i1): Enable for TARGET_DIVIDE_CALL_DIV1.
	(divsi3_i1): Likewise.

From-SVN: r176990
2011-07-31 23:01:14 +00:00
Joseph Myers
2583cc9a44 * de.po: Update.
From-SVN: r176988
2011-07-31 22:46:20 +01:00
Paolo Carlini
3096f51bf6 re PR libstdc++/49925 ([C++0x] ADL bug mixing boost::shared_ptr and std::make_shared<>)
2011-07-31  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/49925
	* include/bits/shared_ptr.h (make_shared): Qualify allocate_shared
	with std::.
	* include/bits/shared_ptr_base.h (__make_shared): Likewise.

From-SVN: r176985
2011-07-31 20:28:45 +00:00
Bill Schmidt
a30596354d re PR tree-optimization/49749 (Reassociation rank algorithm does not include all non-NULL operands)
2011-07-29  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR tree-optimization/49749
	* tree-ssa-reassoc.c (get_rank): New forward declaration.
	(PHI_LOOP_BIAS): New macro.
	(phi_rank): New function.
	(loop_carried_phi): Likewise.
	(propagate_rank): Likewise.
	(get_rank): Add calls to phi_rank and propagate_rank.

From-SVN: r176984
2011-07-31 18:58:06 +00:00
H.J. Lu
3ee7be4c19 Check TARGET_LP64 for SIZE_TYPE/PTRDIFF_TYPE.
2011-07-31  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/x86-64.h (SIZE_TYPE): Check TARGET_LP64 instead
	of TARGET_64BIT.
	(PTRDIFF_TYPE): Likewise.

From-SVN: r176981
2011-07-31 11:10:41 -07:00
Uros Bizjak
deb1f6171d re PR target/49920 (unable to find a register to spill in class ‘DIREG’)
PR target/49920
	* config/i386/i386.md (strset): Do not expand strset_singleop
	when %eax or $edi are fixed.
	(*strsetdi_rex_1): Disable when %eax or %edi are fixed.
	(*strsetsi_1): Ditto.
	(*strsethi_1): Ditto.
	(*strsetqi_1): Ditto.
	(*rep_stosdi_rex64): Disable when %eax, %ecx or %edi are fixed.
	(*rep_stossi): Ditto.
	(*rep_stosqi): Ditto.
	(cmpstrnsi): Also fail when %ecx is fixed.
	(*cmpstrnqi_nz_1): Disable when %ecx, %esi or %edi are fixed.
	(*cmpstrnqi_1): Ditto.
	(*strlenqi_1): Ditto.
	(*strmovdi_rex_1): Disable when %esi or %edi are fixed.
	(*strmovsi_1): Ditto.
	(*strmovhi_1): Ditto.
	(*strmovqi_1): Ditto.
	(*rep_movdi_rex64): Disable when %ecx, %esi or %edi are fixed.
	(*rep_movsi): Ditto.
	(*rep_movqi): Ditto.

testsuite/ChangeLog:

	PR target/49920
	* gcc.target/i386/pr49920.c: New test.

From-SVN: r176979
2011-07-31 19:50:08 +02:00
Uros Bizjak
ba4a11ba52 20050314-1.c: Dump and cleanup lim1 pass only.
* gcc.dg/tree-ssa/20050314-1.c: Dump and cleanup lim1 pass only.
	* gcc.dg/tree-ssa/pr23109.c: Ditto.
	* gcc.dg/tree-ssa/loop-7.c: Ditto.
	* gcc.dg/tree-ssa/loop-32.c: Ditto.
	* gcc.dg/tree-ssa/loop-33.c: Ditto.
	* gcc.dg/tree-ssa/loop-34.c: Ditto.
	* gcc.dg/tree-ssa/loop-35.c: Ditto.
	* gcc.dg/tree-ssa/restrict-3.c: Ditto.
	* gcc.dg/tree-ssa/ssa-lim-2.c: Ditto.
	* gcc.dg/tree-ssa/ssa-lim-1.c: Ditto.
	* gcc.dg/tree-ssa/ssa-lim-3.c: Ditto.
	* gcc.dg/tree-ssa/ssa-lim-6.c: Ditto.
	* gcc.dg/tree-ssa/structopt-1.c: Ditto.
	* g++.dg/tree-ssa/pr33615.C: Ditto.
	* g++.dg/tree-ssa/restrict1.C: Ditto.
	* c-c++-common/restrict-2.c: Ditto.
	* gfortran.dg/pr32921.f: Ditto.
	* gcc.dg/tree-ssa/ssa-dse-10.c: Dump and cleanup dse1 pass only.
	* gcc.dg/fold-compare-2.c: Dump and cleanup vrp1 pass only.
	* gcc.dg/tree-ssa/vrp47.c: Ditto.
	* gcc.dg/tree-ssa/pr25501.c: Dump and cleanup mergephi1 pass only.
	* gcc.dg/tree-ssa/pr15349.c: Dump and cleanup mergephi2 pass only.
	* gcc.dg/tree-ssa/tailrecursion-1.c: Dump and cleanup tailr1 pass only.
	* gcc.dg/tree-ssa/tailrecursion-2.c: Ditto.
	* gcc.dg/tree-ssa/tailrecursion-3.c: Ditto.
	* gcc.dg/tree-ssa/tailrecursion-4.c: Ditto.
	* gcc.dg/tree-ssa/tailrecursion-6.c: Ditto.

From-SVN: r176978
2011-07-31 19:33:29 +02:00
Uros Bizjak
360dffa36f gcc-dg.exp (cleanup-dump): Also remove .exe.
* lib/gcc-dg.exp (cleanup-dump): Also remove .exe. and
	.exe.ltrans[0-9]*. dump files.

From-SVN: r176977
2011-07-31 19:28:13 +02:00
Mikael Pettersson
03e69b1217 Author: Mikael Pettersson <mikpe@it.uu.se>
PR target/47908
* gcc/config/m68k/m68k.c (m68k_override_options_after_change): New function.
Disable instruction scheduling for non-ColdFire targets.
(TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): Define.

From-SVN: r176975
2011-07-31 15:00:58 +00:00
Revital Eres
dcaac07dbf Move the creation of anti-dep edge
From-SVN: r176972
2011-07-31 10:37:35 +00:00
Janus Weil
0291fa2509 re PR fortran/49112 ([OOP] Missing type-bound procedure, "duplicate save" warnings and internal compiler error)
2011-07-31  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/49112
	* resolve.c (resolve_structure_cons): Don't do the full dt resolution,
	only call 'resolve_fl_derived0'.
	(resolve_typebound_procedures): Resolve typebound procedures of
	parent type.
	(resolve_fl_derived0): New function, which does a part of the work
	for 'resolve_fl_derived'.
	(resolve_fl_derived): Call 'resolve_fl_derived0' and do some additional
	things.


2011-07-31  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/49112
	* gfortran.dg/abstract_type_6.f03: Modified.
	* gfortran.dg/typebound_proc_24.f03: New.

From-SVN: r176971
2011-07-31 12:25:07 +02:00
Revital Eres
413e50a27d SMS: Misc. fixes
From-SVN: r176970
2011-07-31 10:21:01 +00:00
Tom de Vries
f047e5183b re PR middle-end/43513 (The stack pointer is adjusted twice)
2011-07-31  Tom de Vries  <tom@codesourcery.com>

	PR middle-end/43513
	* tree-ssa-loop-ivopts.c (may_be_unaligned_p): Use max of
	get_object_alignment and TYPE_ALIGN.

From-SVN: r176969
2011-07-31 10:05:07 +00:00
Tom de Vries
2a6dcb7e73 re PR middle-end/43513 (The stack pointer is adjusted twice)
2011-07-31  Tom de Vries  <tom@codesourcery.com>

	PR middle-end/43513
	* testsuite/libmudflap.c/fail31-frag.c: Adapt testcase to prevent
	folding of alloca.

From-SVN: r176968
2011-07-31 10:02:12 +00:00
GCC Administrator
22d2fec035 Daily bump.
From-SVN: r176967
2011-07-31 00:17:46 +00:00