Andreas Krebbel [Tue, 27 May 2008 11:41:10 +0000 (11:41 +0000)]
defaults.h (TARGET_MEM_CONSTRAINT): New target macro added.
2008-05-27 Andreas Krebbel <krebbel1@de.ibm.com>
* defaults.h (TARGET_MEM_CONSTRAINT): New target macro added.
* postreload.c (reload_cse_simplify_operands): Replace 'm'
constraint with TARGET_MEM_CONSTRAINT.
* recog.c (asm_operand_ok, preprocess_constraints,
constrain_operands): Likewise.
* regclass.c (record_reg_classes): Likewise.
* reload.c (find_reloads, alternative_allows_const_pool_ref):
Likewise.
* reload1.c (maybe_fix_stack_asms): Likewise.
* stmt.c (parse_output_constraint, parse_input_constraint):
Likewise.
* recog.h: Adjust comment.
* genpreds.c (generic_constraint_letters): Remove 'm' constraint.
* genoutput.c (note_constraint): Don't emit error for 'm'
constraint.
* doc/md.texi: Add a note to description of 'm' constraint.
* doc/tm.texi: Document the new TARGET_MEM_CONSTRAINT macro.
From-SVN: r136011
Arnaud Charlet [Tue, 27 May 2008 11:00:39 +0000 (13:00 +0200)]
Resync.
From-SVN: r136010
Eric Botcazou [Tue, 27 May 2008 11:00:38 +0000 (11:00 +0000)]
tree-sra.c (sra_type_can_be_decomposed_p): Make sure that the bitfield is of integral type before testing its precision.
* tree-sra.c (sra_type_can_be_decomposed_p) <RECORD_TYPE>: Make sure
that the bitfield is of integral type before testing its precision.
From-SVN: r136009
Vincent Celier [Tue, 27 May 2008 11:00:07 +0000 (13:00 +0200)]
2008-05-27 Vincent Celier <celier@adacore.com>
* gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb,
prj.ads, makegpr.adb, makeutl.adb, clean.adb, prj-nmsc.adb,
mlib-tgt.adb, prj-env.adb, prj-env.ads:
(Path_Information): New record type
Use component of type Path_Information when there are two paths, one in
canonical format and one in display format.
Update the project manager to these new components.
From-SVN: r136008
Arnaud Charlet [Tue, 27 May 2008 10:59:55 +0000 (12:59 +0200)]
bindgen.adb: Update comments.
* bindgen.adb: Update comments.
* s-tasinf-mingw.adb: Add "with" of System.OS_Interface
From-SVN: r136007
Arnaud Charlet [Tue, 27 May 2008 10:44:34 +0000 (12:44 +0200)]
Resync
From-SVN: r136006
Robert Dewar [Tue, 27 May 2008 10:44:21 +0000 (12:44 +0200)]
makeutl.adb: Minor reformatting
2008-05-27 Robert Dewar <dewar@adacore.com>
* makeutl.adb: Minor reformatting
* prj-nmsc.adb: Minor reformatting
* s-stausa.adb: Minor reformatting
* s-stausa.ads: Minor reformatting
* sem_ch6.adb: Minor reformatting
From-SVN: r136005
Thomas Quinot [Tue, 27 May 2008 10:44:05 +0000 (12:44 +0200)]
sem_res.adb: Minor comment fixes
2008-05-27 Thomas Quinot <quinot@adacore.com>
* sem_res.adb: Minor comment fixes
From-SVN: r136004
Arnaud Charlet [Tue, 27 May 2008 10:14:41 +0000 (12:14 +0200)]
Resync.
From-SVN: r136003
Thomas Quinot [Tue, 27 May 2008 10:14:25 +0000 (12:14 +0200)]
(System.File_IO.{Close, Delete, Reset}): Change File parameter from "in out AFCB_Ptr" to "access AFCB_Ptr".
2008-05-27 Thomas Quinot <quinot@adacore.com>
(System.File_IO.{Close, Delete, Reset}):
Change File parameter from "in out AFCB_Ptr" to "access AFCB_Ptr".
(Ada.*_IO.{Close, Delete, Reset, Set_Mode}):
Pass File parameter by reference.
From-SVN: r136002
Ed Schonberg [Tue, 27 May 2008 10:14:09 +0000 (12:14 +0200)]
2008-05-27 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb:
(Get_Discr_Value): Remove obsolete code that failed to find the value
of a discriminant for an inherited task component appearing in a type
extension.
From-SVN: r136001
Vincent Celier [Tue, 27 May 2008 10:14:01 +0000 (12:14 +0200)]
2008-05-27 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb:
(Check_File): Make sure that a unit that replaces the same unit in a
project being extended is properly processed.
From-SVN: r136000
Quentin Ochem [Tue, 27 May 2008 10:13:53 +0000 (12:13 +0200)]
s-stausa.adb (Initialize): Updated result initialization, and initialization of environment stack.
2008-05-27 Quentin Ochem <ochem@adacore.com>
* s-stausa.adb (Initialize): Updated result initialization, and
initialization of environment stack.
(Fill_Stack): Improved computation of the pattern zone, taking into
account already filled at the calling point.
(Get_Usage_Range): Now uses Min_Measure and Max_Measure instead of
Measure and Overflow_Guard.
(Report_Result): Fixed computation of the result using new fields of
Stack_Analyzer.
* s-stausa.ads (Initialize_Analyzer): Replaced Size / Overflow_Guard
params by more explicit Stack_Size / Max_Pattern_Size params.
(Stack_Analyzer): Added distinct Stack_Size & Pattern_Size fields.
Added Stack_Used_When_Filling field.
(Task_Result): Replaced Measure / Overflow_Guard by more explicit
Min_Measure and Max_Measure fields.
* s-tassta.adb (Task_Wrapper): Updated call to Initialize_Analyzer.
From-SVN: r135999
Arnaud Charlet [Tue, 27 May 2008 10:13:45 +0000 (12:13 +0200)]
* exp_ch6.adb: Minor reformatting
From-SVN: r135998
Thomas Quinot [Tue, 27 May 2008 10:13:35 +0000 (12:13 +0200)]
exp_aggr.adb: Add ??? comment Fix typo
2008-05-27 Thomas Quinot <quinot@adacore.com>
* exp_aggr.adb: Add ??? comment
Fix typo
From-SVN: r135997
Thomas Quinot [Tue, 27 May 2008 10:13:25 +0000 (12:13 +0200)]
makeutl.adb: Minor code reorganization
2008-05-27 Thomas Quinot <quinot@adacore.com>
* makeutl.adb: Minor code reorganization
From-SVN: r135996
Arnaud Charlet [Tue, 27 May 2008 09:30:35 +0000 (09:30 +0000)]
* gnat.dg/interface5.ad[sb]: New test.
From-SVN: r135995
Arnaud Charlet [Tue, 27 May 2008 09:24:13 +0000 (11:24 +0200)]
Resync.
From-SVN: r135994
Vincent Celier [Tue, 27 May 2008 09:20:48 +0000 (11:20 +0200)]
2008-05-27 Vincent Celier <celier@adacore.com>
* makeutl.ads, makeutl.adb:
(Set_Location): New procedure
(Get_Location): New function
(Update_Main): New procedure
From-SVN: r135993
Ed Schonberg [Tue, 27 May 2008 09:20:38 +0000 (11:20 +0200)]
2008-05-27 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb:
(Is_Interface_Conformant): Handle properly a primitive operation that
overrides an interface function with a controlling access result.
(Type_Conformance): If Skip_Controlling_Formals is true, when matching
inherited and overriding operations, omit as well the conformance check
on result types, to prevent spurious errors.
From-SVN: r135992
Arnaud Charlet [Tue, 27 May 2008 09:20:28 +0000 (11:20 +0200)]
* sem_ch3.adb: Minor reformatting
From-SVN: r135991
Vincent Celier [Tue, 27 May 2008 09:20:12 +0000 (11:20 +0200)]
2008-05-27 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb:
(Process_Sources_In_Multi_Language_Mode): Check that there are not two
sources of the same project that have the same object file name.
(Find_Explicit_Sources): Always remove a source exception that was not
found.
From-SVN: r135990
Arnaud Charlet [Tue, 27 May 2008 09:11:45 +0000 (09:11 +0000)]
* gnat.dg/sync1.ad[sb]: New test.
From-SVN: r135989
Arnaud Charlet [Tue, 27 May 2008 09:11:02 +0000 (11:11 +0200)]
Resync.
From-SVN: r135988
Eric Botcazou [Tue, 27 May 2008 09:10:01 +0000 (11:10 +0200)]
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
Vincent Celier [Tue, 27 May 2008 09:09:47 +0000 (11:09 +0200)]
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
Arnaud Charlet [Tue, 27 May 2008 08:55:46 +0000 (10:55 +0200)]
Resync
From-SVN: r135985
Thomas Quinot [Tue, 27 May 2008 08:50:54 +0000 (10:50 +0200)]
exp_dist.adb: Minor reformating
2008-05-27 Thomas Quinot <quinot@adacore.com>
* exp_dist.adb: Minor reformating
From-SVN: r135984
Doug Rupp [Tue, 27 May 2008 08:50:43 +0000 (10:50 +0200)]
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
Vincent Celier [Tue, 27 May 2008 08:50:31 +0000 (10:50 +0200)]
xsnames.adb: Remove unused variable Oname
2008-05-27 Vincent Celier <celier@adacore.com>
* xsnames.adb: Remove unused variable Oname
From-SVN: r135982
Vincent Celier [Tue, 27 May 2008 08:50:22 +0000 (10:50 +0200)]
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
Vincent Celier [Tue, 27 May 2008 08:50:13 +0000 (10:50 +0200)]
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
Gary Dismukes [Tue, 27 May 2008 08:50:04 +0000 (10:50 +0200)]
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
Ed Schonberg [Tue, 27 May 2008 08:49:55 +0000 (10:49 +0200)]
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
Ed Schonberg [Tue, 27 May 2008 08:49:47 +0000 (10:49 +0200)]
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
Trevor Smigiel [Tue, 27 May 2008 08:30:09 +0000 (08:30 +0000)]
Add TImode libgcc functions for mul and div on SPU.
From-SVN: r135975
Trevor Smigiel [Tue, 27 May 2008 08:22:20 +0000 (08:22 +0000)]
Add TImode libgcc functions for mul and div.
From-SVN: r135974
Trevor Smigiel [Tue, 27 May 2008 08:19:45 +0000 (08:19 +0000)]
Add TImode libgcc functions for mul and div.
From-SVN: r135973
Kaveh R. Ghazi [Tue, 27 May 2008 06:47:29 +0000 (06:47 +0000)]
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
Alexandre Oliva [Tue, 27 May 2008 05:48:02 +0000 (05:48 +0000)]
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
GCC Administrator [Tue, 27 May 2008 00:17:44 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r135965
Steven Bosscher [Mon, 26 May 2008 23:37:05 +0000 (23:37 +0000)]
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
Daniel Franke [Mon, 26 May 2008 20:41:20 +0000 (16:41 -0400)]
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
Daniel Franke [Mon, 26 May 2008 20:18:04 +0000 (16:18 -0400)]
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
Paolo Carlini [Mon, 26 May 2008 19:18:24 +0000 (19:18 +0000)]
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
Eric Botcazou [Mon, 26 May 2008 18:23:38 +0000 (18:23 +0000)]
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
Tristan Gingold [Mon, 26 May 2008 17:44:50 +0000 (17:44 +0000)]
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
Andy Hutchinson [Mon, 26 May 2008 17:19:09 +0000 (17:19 +0000)]
re PR target/34932 ([avr] ICE in reload)
PR target/34932
* config/avr/avr.md (*addhi3_zero_extend2): Remove.
From-SVN: r135952
Arnaud Charlet [Mon, 26 May 2008 15:53:31 +0000 (17:53 +0200)]
Resync.
From-SVN: r135951
Sergey Rybin [Mon, 26 May 2008 15:52:24 +0000 (17:52 +0200)]
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
Arnaud Charlet [Mon, 26 May 2008 15:52:16 +0000 (17:52 +0200)]
* sem_attr.adb: Add some ??? comments for previous change
From-SVN: r135949
Arnaud Charlet [Mon, 26 May 2008 15:52:07 +0000 (17:52 +0200)]
* s-vaflop.ads: Add comments for previous change
From-SVN: r135948
Doug Rupp [Mon, 26 May 2008 15:51:58 +0000 (17:51 +0200)]
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
Arnaud Charlet [Mon, 26 May 2008 15:51:48 +0000 (17:51 +0200)]
* exp_vfpt.ads: Add ??? comment for last change
From-SVN: r135946
Arnaud Charlet [Mon, 26 May 2008 15:51:38 +0000 (17:51 +0200)]
* exp_vfpt.adb: Minor reformatting
From-SVN: r135945
Arnaud Charlet [Mon, 26 May 2008 15:51:29 +0000 (17:51 +0200)]
* exp_ch6.adb: Add ??? comment for previous change
From-SVN: r135944
Richard Guenther [Mon, 26 May 2008 15:51:16 +0000 (15:51 +0000)]
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
Eric Botcazou [Mon, 26 May 2008 15:51:15 +0000 (17:51 +0200)]
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
Gary Dismukes [Mon, 26 May 2008 15:50:54 +0000 (17:50 +0200)]
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
Arnaud Charlet [Mon, 26 May 2008 15:21:23 +0000 (17:21 +0200)]
Resync.
From-SVN: r135940
Arnaud Charlet [Mon, 26 May 2008 15:16:39 +0000 (15:16 +0000)]
* gnat.dg/specs/array_no_def_init.ads: New test.
From-SVN: r135939
Gary Dismukes [Mon, 26 May 2008 15:15:14 +0000 (17:15 +0200)]
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
Doug Rupp [Mon, 26 May 2008 15:15:05 +0000 (17:15 +0200)]
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
Ed Schonberg [Mon, 26 May 2008 15:14:52 +0000 (17:14 +0200)]
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
Thomas Quinot [Mon, 26 May 2008 14:43:50 +0000 (14:43 +0000)]
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
H.J. Lu [Mon, 26 May 2008 13:59:56 +0000 (13:59 +0000)]
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
Arnaud Charlet [Mon, 26 May 2008 13:46:21 +0000 (13:46 +0000)]
* gnat.dg/pak.ad[sb]: New test.
From-SVN: r135926
Arnaud Charlet [Mon, 26 May 2008 13:43:57 +0000 (15:43 +0200)]
Resync.
From-SVN: r135925
Thomas Quinot [Mon, 26 May 2008 13:43:43 +0000 (15:43 +0200)]
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
Javier Miranda [Mon, 26 May 2008 13:43:18 +0000 (15:43 +0200)]
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
Kai Tietz [Mon, 26 May 2008 13:17:43 +0000 (13:17 +0000)]
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
Arnaud Charlet [Mon, 26 May 2008 13:13:24 +0000 (15:13 +0200)]
Resync.
From-SVN: r135920
Arnaud Charlet [Mon, 26 May 2008 13:12:45 +0000 (15:12 +0200)]
* sem_ch3.adb: Minor reformatting
From-SVN: r135919
Ed Schonberg [Mon, 26 May 2008 13:12:35 +0000 (15:12 +0200)]
exp_ch4.adb (Expand_Concatenate_Other): Add explicit constraint checks on the upper bound if...
2008-05-26 Ed Schonberg <schonberg@adacore.com>
* exp_ch4.adb (Expand_Concatenate_Other): Add explicit constraint
checks on the upper bound if the index type is a modular type, to
prevent wrap-around computations when size is close to upper bound of
type.
From-SVN: r135918
Arnaud Charlet [Mon, 26 May 2008 12:45:50 +0000 (14:45 +0200)]
Resync.
From-SVN: r135917
Hristian Kirtchev [Mon, 26 May 2008 12:45:19 +0000 (14:45 +0200)]
exp_ch4.adb (Expand_N_Type_Conversion): Minor code reformatting.
2008-05-26 Hristian Kirtchev <kirtchev@adacore.com>
* exp_ch4.adb (Expand_N_Type_Conversion): Minor code reformatting.
Generate a tag check when the result subtype of a function, defined by
an access definition, designates a specific tagged type.
(Make_Tag_Check): New routine.
From-SVN: r135916
Arnaud Charlet [Mon, 26 May 2008 12:45:08 +0000 (14:45 +0200)]
* sinfo.ads: Minor reformatting
From-SVN: r135915
Ed Schonberg [Mon, 26 May 2008 12:44:53 +0000 (14:44 +0200)]
sem_ch12.adb (Remove_Parent): Use specification of instance to retrieve generic parent...
2008-05-26 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Remove_Parent): Use specification of instance
to retrieve generic parent,
to handle properly the case where the instance is a child unit.
Add guard to handle properly wrapper packages.
Minor reformatting
From-SVN: r135914
Richard Guenther [Mon, 26 May 2008 12:38:19 +0000 (12:38 +0000)]
re PR middle-end/36300 (Incorrect type used for inlined expression)
2008-05-26 Richard Guenther <rguenther@suse.de>
PR middle-end/36300
* fold-const.c (extract_muldiv_1): Use TYPE_OVERFLOW_WRAPS,
not TYPE_UNSIGNED. Use TYPE_PRECISION instead of GET_MODE_SIZE.
* gcc.dg/pr36300-1.c: New testcase.
* gcc.dg/pr36300-2.c: Likewise.
From-SVN: r135913
Arnaud Charlet [Mon, 26 May 2008 11:43:27 +0000 (11:43 +0000)]
* ceinfo.adb, csinfo.adb: Remove warnings. Update headers.
From-SVN: r135912
Eric Botcazou [Mon, 26 May 2008 10:22:30 +0000 (10:22 +0000)]
gigi.h (gigi): Remove bogus ATTRIBUTE_UNUSED marker.
* gigi.h (gigi): Remove bogus ATTRIBUTE_UNUSED marker.
(builtin_decl_for): Likewise.
* trans.c (gigi): Likewise.
* utils.c (def_builtin_1): Fix formatting.
From-SVN: r135911
Arnaud Charlet [Mon, 26 May 2008 09:46:06 +0000 (09:46 +0000)]
set_in_pproc.adb: New test.
* gnat.dg/set_in_pproc.adb: New test.
* gnat.dg/modular2.adb: New test.
From-SVN: r135910
Arnaud Charlet [Mon, 26 May 2008 09:42:22 +0000 (11:42 +0200)]
Resync.
From-SVN: r135909
Ed Schonberg [Mon, 26 May 2008 09:41:37 +0000 (11:41 +0200)]
2008-05-26 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb:
(Remove_Parent): If the enclosing scope is an instance whose generic
parent is declared within some parent scope of the just completed
instance, make full views of the entities in that parent visible, when
applicable.
From-SVN: r135908
Jose Ruiz [Mon, 26 May 2008 09:41:28 +0000 (11:41 +0200)]
2008-05-26 Jose Ruiz <ruiz@adacore.com>
* s-osinte-aix.adb:
(To_Target_Priority): Setting the time slice value to 0 or greater sets
the scheduling policy to FIFO within priorities or round-robin
respectively.
Hence, the priority must be set in this case to the one selected by the
user.
From-SVN: r135907
Pascal Obry [Mon, 26 May 2008 09:41:20 +0000 (11:41 +0200)]
sem_aggr.adb: Minor reformatting.
2008-05-26 Pascal Obry <obry@adacore.com>
* sem_aggr.adb: Minor reformatting.
From-SVN: r135906
Sergey Rybin [Mon, 26 May 2008 09:41:12 +0000 (11:41 +0200)]
gnat_ugn.texi: Add description for the new gnatcheck rule - Separate_Numeric_Error_Handlers.
2008-05-26 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi: Add description for the new gnatcheck rule -
Separate_Numeric_Error_Handlers.
From-SVN: r135905
Robert Dewar [Mon, 26 May 2008 09:41:03 +0000 (11:41 +0200)]
2008-05-26 Robert Dewar <dewar@adacore.com>
* exp_ch2.adb:
(Expand_Current_Value): Properly type generated integer literal
From-SVN: r135904
Robert Dewar [Mon, 26 May 2008 09:40:55 +0000 (11:40 +0200)]
g-heasor.ads: Minor comment fix (unit is now pure)
2008-05-26 Robert Dewar <dewar@adacore.com>
* g-heasor.ads: Minor comment fix (unit is now pure)
From-SVN: r135903
Robert Dewar [Mon, 26 May 2008 09:40:47 +0000 (11:40 +0200)]
s-carun8.ads: Minor reformatting
2008-05-26 Robert Dewar <dewar@adacore.com>
* s-carun8.ads: Minor reformatting
From-SVN: r135902
Robert Dewar [Mon, 26 May 2008 09:40:39 +0000 (11:40 +0200)]
osint.ads: Minor reformatting
2008-05-26 Robert Dewar <dewar@adacore.com>
* osint.ads: Minor reformatting
From-SVN: r135901
Ed Schonberg [Mon, 26 May 2008 09:40:31 +0000 (11:40 +0200)]
2008-05-26 Ed Schonberg <schonberg@adacore.com>
* inline.adb:
(Cleanup_Scopes): For a protected operation, transfer finalization list
to protected body subprogram, to force cleanup actions when needed.
From-SVN: r135900
Robert Dewar [Mon, 26 May 2008 09:40:23 +0000 (11:40 +0200)]
gnatname.adb: Minor reformatting
2008-05-26 Robert Dewar <dewar@adacore.com>
* gnatname.adb: Minor reformatting
From-SVN: r135899
Robert Dewar [Mon, 26 May 2008 09:39:55 +0000 (11:39 +0200)]
sem_cat.adb: Minor reformatting
2008-05-26 Robert Dewar <dewar@adacore.com>
* sem_cat.adb: Minor reformatting
From-SVN: r135898
Vincent Celier [Mon, 26 May 2008 09:39:37 +0000 (11:39 +0200)]
2008-05-26 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb:
(Process_Project_Level_Simple_Attributes): process attribute Library_GCC
* prj.ads:
(Project_Configuration): New component Shared_Lib_Driver
From-SVN: r135897
Hristian Kirtchev [Mon, 26 May 2008 09:39:19 +0000 (11:39 +0200)]
exp_ch3.adb (Build_Init_Statements): Alphabetize local variables.
2008-05-26 Hristian Kirtchev <kirtchev@adacore.com>
* exp_ch3.adb (Build_Init_Statements): Alphabetize local variables.
Create the statements which map a string name to protected or task
entry indix.
* exp_ch9.adb: Add with and use clause for Stringt.
Minor code reformatting.
(Build_Entry_Names): New routine.
(Make_Initialize_Protection, Make_Task_Create_Call): Generate a value
for flag Build_Entry_Names which controls the allocation of the data
structure for the string names of entries.
* exp_ch9.ads (Build_Entry_Names): New subprogram.
* exp_util.adb (Entry_Names_OK): New function.
* exp_util.ads (Entry_Names_OK): New function.
* rtsfind.ads: Add RO_PE_Set_Entry_Name and RO_TS_Set_Entry_Name to
enumerations RE_Id and RE_Unit_Table.
* s-taskin.adb Add with and use clause for Ada.Unchecked_Deallocation.
(Free_Entry_Names_Array): New routine.
* s-taskin.ads: Comment reformatting.
Add types String_Access, Entry_Names_Array, Entry_Names_Array_Access.
Add component Entry_Names to record Ada_Task_Control_Block.
(Free_Entry_Names_Array): New routine.
* s-tassta.adb (Create_Task): If flag Build_Entry_Names is set,
dynamically allocate an array
of string pointers. This structure holds string entry names.
(Free_Entry_Names): New routine.
(Free_Task, Vulnerable_Free_Task): Deallocate the entry names array.
(Set_Entry_Names): New routine.
* s-tassta.ads:
(Create_Task): Add formal Build_Entry_Names. The flag is used to
control the allocation of the data structure which stores entry names.
(Set_Entry_Name): New routine.
* s-tpoben.adb:
Add with and use clause for Ada.Unchecked_Conversion.
(Finalize): Deallocate the entry names array.
(Free_Entry_Names): New routine.
(Initialize_Protection_Entries): When flag Build_Entry_Names is set,
create an array of string pointers to hold the entry names.
(Set_Entry_Name): New routine.
* s-tpoben.ads:
Add field Entry_Names to record Protection_Entries.
(Initialize_Protection_Entries): Add formal Build_Entry_Names.
(Set_Entry_Name): New routine.
From-SVN: r135896
Kai Tietz [Mon, 26 May 2008 08:28:54 +0000 (08:28 +0000)]
mingw32.h (STD_MINGW): Set to true for target w64.
2008-05-26 Kai Tietz <kai.tietz@onevision.com>
* mingw32.h (STD_MINGW): Set to true for target w64.
From-SVN: r135894
Daniel Franke [Mon, 26 May 2008 07:43:17 +0000 (03:43 -0400)]
re PR bootstrap/36331 (Gcc failed to bootstrap)
2008-05-26 Daniel Franke <franke.daniel@gmail.com>
PR bootstrap/36331
* c-cppbuiltin.c (define__GNUC__): Re-add definition of __GNUG__.
From-SVN: r135892
Dominique d'Humieres [Mon, 26 May 2008 06:38:02 +0000 (08:38 +0200)]
darwin-c.c: Include "incpath.h" instead of "c-incpath.h".
2008-05-26 Dominique Dhumieres <dominiq@lps.ens.fr>
* config/darwin-c.c: Include "incpath.h" instead of "c-incpath.h".
* config/t-darwin: Use "incpath.h" instead of "c-incpath.h".
From-SVN: r135891
Paolo Carlini [Mon, 26 May 2008 02:19:57 +0000 (02:19 +0000)]
tuple: Ifndef __GXX_EXPERIMENTAL_CXX0X__ just error out.
2008-05-25 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/tuple: Ifndef __GXX_EXPERIMENTAL_CXX0X__ just error out.
* include/std/date_time: Likewise.
* include/std/system_error: Likewise.
* include/std/type_traits: Likewise; fix typo in macro name.
* include/std/regex: Likewise.
* include/std/random: Likewise.
* include/std/unordered_map: Likewise.
* include/std/condition_variable: Likewise.
* include/std/unordered_set: Likewise.
* include/std/mutex: Likewise.
* include/std/array: Likewise.
* include/c_std/cmath: Fix obsolete comment.
* include/c_global/cmath: Likewise.
From-SVN: r135890