2
0
mirror of git://gcc.gnu.org/git/gcc.git synced 2025-03-24 16:00:56 +08:00

87661 Commits

Author SHA1 Message Date
Arnaud Charlet
dd383eebef * gnat.dg/sync1.ad[sb]: New test.
From-SVN: r135989
2008-05-27 11:11:45 +02:00
Arnaud Charlet
7bf402c1bd Resync.
From-SVN: r135988
2008-05-27 11:11:02 +02:00
Eric Botcazou
81aa4e379b system-darwin-ppc.ads (Always_Compatible_Rep): Set to False.
2008-05-27  Eric Botcazou  <ebotcazou@adacore.com>

	* system-darwin-ppc.ads (Always_Compatible_Rep): Set to False.
	* system-darwin-x86.ads (Always_Compatible_Rep): Likewise.
	* system-freebsd-x86.ads (Always_Compatible_Rep): Likewise.
	* system-linux-ppc.ads (Always_Compatible_Rep): Likewise.
	* system-linux-x86_64.ads (Always_Compatible_Rep): Likewise.
	* system-linux-x86.ads (Always_Compatible_Rep): Likewise.
	* system-mingw.ads (Always_Compatible_Rep): Likewise.
	* system-solaris-sparc.ads (Always_Compatible_Rep): Likewise.
	* system-solaris-sparcv9.ads (Always_Compatible_Rep): Likewise.
	* system-solaris-x86.ads (Always_Compatible_Rep): Likewise.

From-SVN: r135987
2008-05-27 11:10:01 +02:00
Vincent Celier
32ffda3f89 2008-05-27 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb:
	(Check_Library): Allow standard project to be extended as a static
	library project.
	(Get_Mains): Do not inherit attribute Main in an extending library
	project.

From-SVN: r135986
2008-05-27 11:09:47 +02:00
Arnaud Charlet
52268145ef Resync
From-SVN: r135985
2008-05-27 10:55:46 +02:00
Thomas Quinot
8e4bea294b exp_dist.adb: Minor reformating
2008-05-27  Thomas Quinot  <quinot@adacore.com>

	* exp_dist.adb: Minor reformating

From-SVN: r135984
2008-05-27 10:50:54 +02:00
Doug Rupp
612c533690 2008-05-27 Doug Rupp <rupp@adacore.com>
* exp_ch6.adb:
	(Expand_N_Function_Call): Fix comments. Minor reformatting.

	* exp_vfpt.ads:
	(Expand_Vax_Foreign_Return): Fix comments.

From-SVN: r135983
2008-05-27 10:50:43 +02:00
Vincent Celier
f6e8d321dd xsnames.adb: Remove unused variable Oname
2008-05-27  Vincent Celier  <celier@adacore.com>

	* xsnames.adb: Remove unused variable Oname

From-SVN: r135982
2008-05-27 10:50:31 +02:00
Vincent Celier
b3af75af77 prj-attr.adb: Add new project level attribute Map_File_Option
2008-05-27  Vincent Celier  <celier@adacore.com>

	* prj-attr.adb: Add new project level attribute Map_File_Option
	
	* prj-nmsc.adb (Process_Linker): Process new attribute Map_File_Option
	
	* prj.ads: Minor reformatting and comment update
	(Project_Configuration): New component Map_File_Option
	
	* snames.adb: New standard name Map_File_Option
	
	* snames.ads: New standard name Map_File_Option

From-SVN: r135981
2008-05-27 10:50:22 +02:00
Vincent Celier
eca5286b1c gnat_ugn.texi: Add succinct documentation for attribute Excluded_Source_List_File
2008-05-27  Vincent Celier  <celier@adacore.com>

	* gnat_ugn.texi:
	Add succinct documentation for attribute Excluded_Source_List_File

From-SVN: r135980
2008-05-27 10:50:13 +02:00
Gary Dismukes
491016e570 sem_ch3.adb (Fixup_Bad_Constraint): Set the Etype on the bad subtype to the known type entity E...
2008-05-27  Gary Dismukes  <dismukes@adacore.com>

	* sem_ch3.adb (Fixup_Bad_Constraint): Set the Etype on the bad subtype
	to the known type entity E, rather than setting it to Any_Type. Fixes
	possible blowup in function Base_Init_Proc, as called from Freeze_Entity
	for objects whose type had an illegal constraint.

From-SVN: r135979
2008-05-27 10:50:04 +02:00
Ed Schonberg
393148620c exp_disp.adb (Build_Dispatch_Tables): For a private type completed by a synchronized tagged type...
2008-05-27  Ed Schonberg  <schonberg@adacore.com>

	* exp_disp.adb (Build_Dispatch_Tables): For a private type completed by
	a synchronized tagged type, do not attempt to build dispatch table for
	full view. The table is built for the corresponding record type, which
	has its own declaration.

From-SVN: r135978
2008-05-27 10:49:55 +02:00
Ed Schonberg
4c4e9ad2b2 sem_attr.adb: add guard to previous patch.
2008-05-27  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb: add guard to previous patch.

From-SVN: r135977
2008-05-27 10:49:47 +02:00
Trevor Smigiel
986a8d9011 Add TImode libgcc functions for mul and div on SPU.
From-SVN: r135975
2008-05-27 08:30:09 +00:00
Trevor Smigiel
b38883e82d Add TImode libgcc functions for mul and div.
From-SVN: r135974
2008-05-27 08:22:20 +00:00
Trevor Smigiel
9bf850280c Add TImode libgcc functions for mul and div.
From-SVN: r135973
2008-05-27 08:19:45 +00:00
Kaveh R. Ghazi
ebe74ac50b pr11832.c: XFAIL on (x86 && ilp32 && pic).
* gcc.c-torture/compile/pr11832.c: XFAIL on (x86 && ilp32 && pic).
	* gcc.c-torture/compile/pr33009.c: Likewise.

From-SVN: r135972
2008-05-27 06:47:29 +00:00
Alexandre Oliva
bced830449 re PR c++/35909 (ICE with bit-field and const references)
gcc/cp/ChangeLog:
PR c++/35909
* call.c (convert_like_real): Convert bitfield to desired type
before creating temporary.
gcc/testsuite/ChangeLog:
PR c++/35909
* g++.dg/conversion/bitfield9.C: New.

From-SVN: r135969
2008-05-27 05:48:02 +00:00
GCC Administrator
48c655bb75 Daily bump.
From-SVN: r135965
2008-05-27 00:17:44 +00:00
Steven Bosscher
02135bc1b4 rs6000.c (rs6000_legitimize_tls_address): Generate new tls_gd_* and tls_ld_* insns instead of an insn sequence.
2008-05-26  Steven Bosscher  <stevenb.gcc@gmail.com>

	* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Generate
	new tls_gd_* and tls_ld_* insns instead of an insn sequence.
	* config/rs6000/rs6000.md (TLSmode, tls_abi_suffix, tls_insn_suffix,
	tls_sysv_suffix): New mode and mode attribute iterators.
	(tls_gd_32, tls_gd_64, tls_ld_32, tls_ld_64): Remove.
	(lts_gd_aix*, tls_gd_sysv*, tls_ld_aix*, tls_ld_sysv*): New patterns.
	(tls_dtprel_*, tls_dtprel_ha_*, tls_dtprel_lo_*, tls_got_dtprel_*,
	tls_tprel_*, tls_tprel_ha_*, tls_tprel_lo_*, tls_got_tprel_*,
	tls_tls_*): Merge 32 bit and 64 bit variants using aforementioned
	iterators.

From-SVN: r135961
2008-05-26 23:37:05 +00:00
Daniel Franke
273d8a65e2 cpp.c (cpp_define_builtins): Fixed warning about comment.
2008-05-26  Daniel Franke  <franke.daniel@gmail.com>

	* cpp.c (cpp_define_builtins): Fixed warning about comment.

From-SVN: r135958
2008-05-26 16:41:20 -04:00
Daniel Franke
3c2a68b3a3 cpp.c (cpp_define_builtins): Remove usage of TARGET_* macros, added FIXME instead.
2008-05-26  Daniel Franke  <franke.daniel@gmail.com>

        * fortran/cpp.c (cpp_define_builtins): Remove usage of TARGET_* macros,
        added FIXME instead.

From-SVN: r135956
2008-05-26 16:18:04 -04:00
Paolo Carlini
774c3d8647 cmath (pow(float, int), [...]): Do not define in C++0x mode, per DR 550.
2008-05-26  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/c_global/cmath (pow(float, int), pow(double, int),
	pow(long double, int)): Do not define in C++0x mode, per DR 550.
	* include/tr1_impl/cmath (pow): Do not bring in unconditionally
	from namespace std.
	* include/tr1/cmath (pow(double, double), pow(float, float),
	pow(long double, long double), pow(_Tp, _Up)): Define.
	* include/tr1/complex (pow): Do not bring in from namespace std.
	(pow(const std::complex<_Tp>&, int), pow(const std::complex<_Tp>&,
	const _Tp&), pow(const _Tp&, const std::complex<_Tp>&),
	pow(const std::complex<_Tp>&, const std::complex<_Tp>&)): Define.
	* include/tr1_impl/complex (pow(const std::complex<_Tp>&,
	const _Up&), pow(const _Tp&, const std::complex<_Up>&),
	pow(const std::complex<_Tp>&, const std::complex<_Up>&)): Always
	define.
	* doc/xml/manual/intro.xml: Add an entry for DR 550.
	* testsuite/26_numerics/headers/cmath/dr550.cc: New.
	* testsuite/tr1/8_c_compatibility/cmath/overloads.cc: Adjust.

From-SVN: r135955
2008-05-26 19:18:24 +00:00
Eric Botcazou
ba977e1ad9 re PR tree-optimization/36329 (latent problem with tree inlining)
PR tree-optimization/36329
	* tree.h (CALL_CANNOT_INLINE_P): Add access check.
	* tree-gimple.h (CALL_STMT_CANNOT_INLINE_P): New macro.
	* cgraphbuild.c (initialize_inline_failed): Use the latter
	macro in lieu of the former.
	* ipa-inline.c (cgraph_mark_inline): Likewise.
	(cgraph_decide_inlining_of_small_function): Likewise.
	(cgraph_decide_inlining): Likewise.
	(cgraph_decide_inlining_incrementally): Likewise.

From-SVN: r135954
2008-05-26 18:23:38 +00:00
Tristan Gingold
4d492420f6 avr.md ("call_prologue_saves"): Use hi8(gs())/lo8(gs()) instead of pm_lo8/pm_hi8 to makes this call working on avr6.
* config/avr/avr.md ("call_prologue_saves"): Use hi8(gs())/lo8(gs())
	instead of pm_lo8/pm_hi8 to makes this call working on avr6.
	* config/avr/avr.c (expand_prologue): Tune "call_prologue" 
	optimization for 'avr6' architecture.

Co-Authored-By: Anatoly Sokolov <aesok@post.ru>

From-SVN: r135953
2008-05-26 21:44:50 +04:00
Andy Hutchinson
319a58c6c8 re PR target/34932 ([avr] ICE in reload)
PR target/34932
* config/avr/avr.md (*addhi3_zero_extend2): Remove.

From-SVN: r135952
2008-05-26 17:19:09 +00:00
Arnaud Charlet
094d7cfa2f Resync.
From-SVN: r135951
2008-05-26 17:53:31 +02:00
Sergey Rybin
912c0b9386 tree_io.ads (ASIS_Version_Number): Update because of the changes made in front-end
2008-05-26  Sergey Rybin  <rybin@adacore.com>

	* tree_io.ads (ASIS_Version_Number): Update because of the changes
	made in front-end

From-SVN: r135950
2008-05-26 17:52:24 +02:00
Arnaud Charlet
edde779b94 * sem_attr.adb: Add some ??? comments for previous change
From-SVN: r135949
2008-05-26 17:52:16 +02:00
Arnaud Charlet
45c87b72c7 * s-vaflop.ads: Add comments for previous change
From-SVN: r135948
2008-05-26 17:52:07 +02:00
Doug Rupp
3a5ab1fdfb s-vaflop-vms-alpha.adb: Remove System.IO use clause...
2008-05-26  Doug Rupp  <rupp@adacore.com>

	* s-vaflop-vms-alpha.adb:
	Remove System.IO use clause, to prevent spurious ambiguities when
	package is access through rtsfind.

From-SVN: r135947
2008-05-26 17:51:58 +02:00
Arnaud Charlet
6e96b5434d * exp_vfpt.ads: Add ??? comment for last change
From-SVN: r135946
2008-05-26 17:51:48 +02:00
Arnaud Charlet
fda528a811 * exp_vfpt.adb: Minor reformatting
From-SVN: r135945
2008-05-26 17:51:38 +02:00
Arnaud Charlet
2acde2487a * exp_ch6.adb: Add ??? comment for previous change
From-SVN: r135944
2008-05-26 17:51:29 +02:00
Richard Guenther
26fa9076d9 tree-ssa-sccvn.c (expr_has_constants): Declare.
2008-05-26  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-sccvn.c (expr_has_constants): Declare.
	(visit_reference_op_load): Initialize VN_INFO->has_constants
	properly.

From-SVN: r135943
2008-05-26 15:51:16 +00:00
Eric Botcazou
6054bf2a35 s-casi16.adb (Uhalf): Rewrite it as integer with small alignment.
2008-05-26  Eric Botcazou  <ebotcazou@adacore.com>

	* s-casi16.adb (Uhalf): Rewrite it as integer with small alignment.
	(Compare_Array_S16): Adjust for above change.
	* s-casi32.adb (Uword): Likewise.
	(Compare_Array_S32): Likewise.
	* s-casi64.adb (Uword): Likewise.
	(Compare_Array_S64): Likewise.
	* s-caun16.adb (Uhalf): Likewise.
	(Compare_Array_U16): Likewise.
	* s-caun32.adb (Uword): Likewise.
	(Compare_Array_U32): Likewise.
	* s-caun64.adb (Uword): Likewise.
	(Compare_Array_U64): Likewise.

From-SVN: r135942
2008-05-26 17:51:15 +02:00
Gary Dismukes
1ce1f00536 exp_ch3.adb (Expand_N_Object_Declaration): Remove checks for No_Default_Initialization...
2008-05-26  Gary Dismukes  <dismukes@adacore.com>

	* exp_ch3.adb (Expand_N_Object_Declaration): Remove checks for
	No_Default_Initialization, which is now delayed until the freeze point
	of the object. Add a comment about deferral of the check.
	
	* freeze.adb (Freeze_Entity): The check for No_Default_Initialization
	on objects is moved here.

From-SVN: r135941
2008-05-26 17:50:54 +02:00
Arnaud Charlet
9019f3fcc7 Resync.
From-SVN: r135940
2008-05-26 17:21:23 +02:00
Arnaud Charlet
4f2b873ae9 * gnat.dg/specs/array_no_def_init.ads: New test.
From-SVN: r135939
2008-05-26 17:16:39 +02:00
Gary Dismukes
c5ecf679d5 exp_ch3.adb (Build_Array_Init_Proc): Only set Init_Proc to a dummy init proc entity when...
2008-05-26  Gary Dismukes  <dismukes@adacore.com>

	* exp_ch3.adb (Build_Array_Init_Proc): Only set Init_Proc to a dummy
	init proc entity when there is actual default initialization associated
	with the component type, to avoid spurious errors on objects of scalar
	array types that are marked Is_Public when No_Default_Initialization
	applies.

From-SVN: r135938
2008-05-26 17:15:14 +02:00
Doug Rupp
c986420eb0 2008-05-26 Doug Rupp <rupp@adacore.com>
* s-vaflop.adb:
	(Return_D, Return_F, Return_G): New functions.

	* s-vaflop.ads:
	(Return_D, Return_F, Return_G): New functions.

	* exp_vfpt.adb:
	(Expand_Vax_Foreign_Return): New procedure

	* exp_vfpt.ads:
	(Expand_Vax_Foreign_Return): New procedure

	* rtsfind.ads:
	(RE_Return_D, RE_Return_F, RE_Return_G): New RE_Ids
	(RE_Return_D, RE_Return_F, RE_Return_G): New RE_Unit_Table elements

	* exp_ch6.adb:
	Import Exp_Vfpt
	(Expand_N_Function_Call): Call Expand_Vax_Foreign_Return.

	* s-vaflop-vms-alpha.adb:
	(Return_D, Return_F, Return_G): New functions.

From-SVN: r135937
2008-05-26 17:15:05 +02:00
Ed Schonberg
a66996b300 sem_attr.adb: (Resolve_Attribute, case 'address): S (A ..
2008-05-26  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb:
	(Resolve_Attribute, case 'address):  S (A .. B)' address can be safely
	converted to S (A)'address only if A .. B is known to be a non-null
	range.

From-SVN: r135936
2008-05-26 17:14:52 +02:00
Thomas Quinot
d693e39d02 2008-05-26 Thomas Quinot <quinot@adacore.com>
* rtsfind.ads, rtsfind.adb:
	(RE_Get_RACW): New runtime library entity provided by PolyORB s-parint.
	(Check_RPC): Support per-PCS-kind API versioning.
	
	exp_dist.ads, exp_dist.adb:
	(Build_Stub_Tag, Get_Stub_Elements): New utility subprograms.
	(PolyORB_Support.Add_RACW_From_Any): Offload common code to new runtime
	 library function Get_RACW.
	(PolyORB_Support.Add_RACW_To_Any): Offload common code to new runtime
	library function Get_Reference.
	(PolyORB_Support.Add_RACW_Read_Attribute): Use Get_RACW instead of going
	through an intermediate Any.
	(PolyORB_Support.Add_RACW_Write_Attribute): Use Get_Reference instead of
	going through an intermediate Any.
	
	* sem_dist.adb: Minor reformatting.

From-SVN: r135932
2008-05-26 16:43:50 +02:00
H.J. Lu
76fe54f07a re PR middle-end/36253 (Caller-save stack slot may not have proper alignment)
2008-05-26  H.J. Lu  <hongjiu.lu@intel.com>

	PR middle-end/36253
	* caller-save.c (insert_restore): Verify alignment of spill
	space.
	(insert_save): Likewise.

	* cfgexpand.c (LOCAL_ALIGNMENT): Removed.

	* defaults.h (LOCAL_ALIGNMENT): New. Provide default.
	(STACK_SLOT_ALIGNMENT): Likewise.

	* function.c (LOCAL_ALIGNMENT): Removed.
	(get_stack_local_alignment): New.
	(assign_stack_local): Use it.  Set alignment on stack slot.
	(assign_stack_temp_for_type): Use get_stack_local_alignment.

	* config/i386/i386.h (LOCAL_ALIGNMENT): Updated.
	(STACK_SLOT_ALIGNMENT): New.

	* config/i386/i386.c (ix86_local_alignment): Handle caller-save
	stack slot in XFmode.

	* doc/tm.texi (STACK_SLOT_ALIGNMENT): New.

From-SVN: r135927
2008-05-26 06:59:56 -07:00
Arnaud Charlet
e94a83856f * gnat.dg/pak.ad[sb]: New test.
From-SVN: r135926
2008-05-26 15:46:21 +02:00
Arnaud Charlet
ad89bc8dc5 Resync.
From-SVN: r135925
2008-05-26 15:43:57 +02:00
Thomas Quinot
4babc15de3 exp_ch5.adb (Make_Tag_Ctrl_Assignment): Add missing guard on condition for assignment to temporary.
2008-05-26  Thomas Quinot  <quinot@adacore.com>

	* exp_ch5.adb (Make_Tag_Ctrl_Assignment): Add missing guard on
	condition for assignment to temporary.

From-SVN: r135924
2008-05-26 15:43:43 +02:00
Javier Miranda
ce2b6ba521 einfo.ads (Abstract_Interface_Alias): Renamed as Interface_Alias.
2008-05-26  Javier Miranda  <miranda@adacore.com>

	* einfo.ads (Abstract_Interface_Alias): Renamed as Interface_Alias.
	(Set_Abstract_Interface_Alias): Renamed as Set_Interface_Alias.
	(Is_Internal): Adding documentation on internal entities that have
 	attribute Interface_Alias (old attribute Abstract_Interface_Alias)

	* einfo.adb (Abstract_Interface_Alias): Renamed as Interface_Alias.
	(Set_Abstract_Interface_Alias): Renamed as Set_Interface_Alias.
 	Added assertion to force entities with this attribute to have
 	attribute Is_Internal set to True.
	(Next_Tag_Component): Simplify assertion using attribute Is_Tag.

	* sem_ch3.adb (Derive_Interface_Subprograms): This subprogram has been
 	renamed as Derive_Progenitor_Subprograms. In addition, its code is
 	a new implementation.
	(Add_Interface_Tag_Components): Remove special management of
	synchronized interfaces.
	(Analyze_Interface_Declaration): Minor reformating
	(Build_Derived_Record_Type): Minor reformating
	(Check_Abstract_Overriding): Avoid reporting error in case of abstract
 	predefined primitive inherited from interface type because the body of
 	internally generated predefined primitives of tagged types are generated
 	later by Freeze_Type
	(Derive_Subprogram): Avoid generating an internal name if the parent
 	subprogram overrides an interface primitive.
	(Derive_Subprograms): New implementation that keeps separate the
 	management of tagged types not implementing interfaces, from tagged
 	types that implement interfaces.
	(Is_Progenitor): New implementation.
	(Process_Full_View): Add documentation
	(Record_Type_Declaration): Replace call to Derive_Interface_Subprograms
 	by call to Derive_Progenitor_Subprograms.

	* sem_ch6.ads (Is_Interface_Conformant): New subprogram.
	(Check_Subtype_Conformant, Subtype_Conformant): Adding new argument
 	Skip_Controlling_Formals.

	* sem_ch6.adb (Is_Interface_Conformant): New subprogram.
	(Check_Conventions): New implementation. Remove local subprogram
 	Skip_Check. Remove formal Search_From of routine Check_Convention.
	(Check_Subtype_Conformant, Subtype_Conformant): Adding new argument
 	Skip_Controlling_Formals.
	(New_Overloaded_Entity): Enable addition of predefined dispatching
 	operations.

	* sem_disp.ads
	(Find_Primitive_Covering_Interface): New subprogram.

	* sem_disp.adb (Check_Dispatching_Operation): Disable registering
 	the task body procedure as a primitive of the corresponding tagged
 	type.
	(Check_Operation_From_Private_Type): Avoid adding twice an entity
 	to the list of primitives.
	(Find_Primitive_Covering_Interface): New subprogram.
	(Override_Dispatching_Operation): Add documentation.

	* sem_type.adb (Covers): Minor reformatings

	* sem_util.ads (Collect_Abstract_Interfaces): Renamed as
	Collect_Interfaces.
 	Rename formal.
	(Has_Abstract_Interfaces): Renamed as Has_Interfaces.
	(Implements_Interface): New subprogram.
	(Is_Parent): Removed.
	(Primitive_Names_Match): New subprogram.
	(Remove_Homonym): Moved here from Derive_Interface_Subprograms.
	(Ultimate_Alias): New subprogram.

	* sem_util.adb (Collect_Abstract_Interfaces): Renamed as
	Collect_Interfaces.
 	Remove special management for synchronized types. Rename formal. Remove
 	internal subprograms Interface_Present_In_Parent and Add_Interface.
	(Has_Abstract_Interfaces): Renamed as Has_Interfaces. Replace assertion
 	on non-record types by code to return false in such case.
	(Implements_Interface): New subprogram.
	(Is_Parent): Removed. No special management is now required for
 	synchronized types covering interfaces.
	(Primitive_Names_Match): New subprogram.
	(Remove_Homonym): Moved here from Derive_Interface_Subprograms.
	(Ultimate_Alias): New subprogram.

	* exp_ch3.adb (Add_Internal_Interface_Entities): New subprogram.
 	Add internal entities associated with secondary dispatch tables to
 	the list of tagged type primitives that are not interfaces.
	(Freeze_Record_Type): Add new call to Add_Internal_Interface_Entities
	(Make_Predefined_Primitive_Specs): Code reorganization to improve
 	the management of predefined equality operator. In addition, if
 	the type has an equality function corresponding with a primitive
 	defined in an interface type, the inherited equality is abstract
 	as well, and no body can be created for it.

	* exp_disp.ads (Is_Predefined_Dispatching_Operation): Moved from
 	exp_util to exp_disp.
	(Is_Predefined_Interface_Primitive): New subprogram. Returns True if
 	an entity corresponds with one of the predefined primitives required
 	to implement interfaces.
	Update copyright notice.

	* exp_disp.adb (Set_All_DT_Position): Add assertion. Exclude from the
 	final check on abstract subprograms all the primitives associated with
 	interface primitives because they must be visible in the public and
 	private part.
	(Write_DT): Use Find_Dispatching_Type to locate the name of the
	interface type. This allows the use of this routine, for debugging
	purposes, when the tagged type is not fully decorated.
	(Is_Predefined_Dispatching_Operation): Moved from exp_util to exp_disp.
 	Factorize code calling new subprogram Is_Predefined_Interface_Primitive.
	(Is_Predefined_Interface_Primitive): New subprogram. Returns True if an
 	entity corresponds with one of the predefined primitives required to
 	implement interfaces.

	* exp_util.adb (Find_Interface_ADT): New implementation
	(Find_Interface): Removed.

	* sprint.adb (Sprint_Node_Actual): Generate missing output for the
 	list of interfaces associated with nodes
	N_Formal_Derived_Type_Definition and N_Private_Extension_Declaration.

From-SVN: r135923
2008-05-26 15:43:18 +02:00
Kai Tietz
e5f005e18c i386.md (allocate_stack_worker_64): Make sure argument operand in rax isn't removed.
2008-05-26  Kai Tietz  <kai.tietz@onevision.com>

	PR/36321
	* config/i386/i386.md (allocate_stack_worker_64): Make sure argument operand in
	rax isn't removed.

2008-05-26  Kai Tietz  <kai.tietz@onevision.com>

	* gcc-c.torture/execute/pr36321.c: New.

From-SVN: r135921
2008-05-26 15:17:43 +02:00
Arnaud Charlet
c878b2efd6 Resync.
From-SVN: r135920
2008-05-26 15:13:24 +02:00