diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-07-23 08:01:22 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-07-23 08:01:22 +0000 |
commit | 549ddc37019b416667c09bc068bcbb3fef76a54b (patch) | |
tree | a4e496a40c5256cbc12b038092f4ddbc87150a01 /gcc/ada/targparm.ads | |
parent | d6a9dc1e5c913e8d5b3ce5166354c565638a20f3 (diff) | |
download | gcc-549ddc37019b416667c09bc068bcbb3fef76a54b.tar.gz |
2012-07-23 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch12.adb (Insert_Freeze_Node_For_Instance): Inst is now
a local variable. Retrieve the related instance when processing
a subprogram instantiation. Such instances appear as wrapper
packages.
2012-07-23 Vincent Pucci <pucci@adacore.com>
* system-aix64.ads, system-aix.ads, system-darwin-ppc.ads,
system-hpux.ads, system-linux-alpha.ads,
system-linux-hppa.ads, system-linux-ppc.ads,
system-linux-s390.ads, system-linux-s390x.ads,
system-linux-sh4.ads, system-linux-sparc.ads,
system-lynxos-ppc.ads, system-mingw.ads,
system-solaris-sparc.ads, system-solaris-sparcv9.ads,
system-vms_64.ads, * system-vxworks-arm.ads, system-vxworks-m68k.ads,
system-vxworks-mips.ads, system-vxworks-ppc.ads,
system-vxworks-sparcv9.ads: Support_Atomic_Primitives set to False.
* system-darwin-x86.ads, system-darwin-x86_64.ads,
system-freebsd-x86.ads, system-freebsd-x86_64.ads,
system-hpux-ia64.ads, system-linux-ia64.ads, system-linux-x86.ads,
system-linux-x86_64.ads, system-lynxos-x86.ads,
system-mingw-x86_64.ads, system-solaris-x86.ads,
system-solaris-x86_64.ads, system-vms-ia64.ads,
system-vxworks-x86.ads: Support_Atomic_Primitives set to True.
* s-atopri.adb (Lock_Free_Read_X): New body.
(Lock_Free_Try_Write_X): Support_Atomic_Primitives check added.
(Lock_Free_Try_Write_64): New body.
* s-atopri.ads: New type uint.
(Sync_Compare_And_Swap_64): __sync_val_compare_and_swap_8 intrinsic
import.
(Lock_Free_Read_X): Body moved to s-atopri.adb.
(Lock_Free_Try_Write_64): Similar to other Lock_Free_Try_Write_X
routines.
* targparm.adb: New enumeration literal SAP
(Support_Atomic_Primitives) for type Targparm_Tags. New constant
SAP_Str. New component SAP_Str'Access for array Targparm_Str.
(Get_Target_Parameters): Parse Support_Atomic_Primitives_On_Target
flag.
* targparm.ads: New back-end code generation flag
Support_Atomic_Primitives_On_Target
2012-07-23 Vincent Pucci <pucci@adacore.com>
* gnat_ugn.texi: Dimensionality checking documentation updated.
2012-07-23 Ed Schonberg <schonberg@adacore.com>
* sem_prag.adb (Make_Inline): If the pragma applies to a
subprogram renaming, set inline flags on both the renamed entity
and on the renaming, so that some ASIS queries can be handled
consistently in the absence of expansion.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189772 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/targparm.ads')
-rw-r--r-- | gcc/ada/targparm.ads | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ada/targparm.ads b/gcc/ada/targparm.ads index be1c9af0218..e3210c93664 100644 --- a/gcc/ada/targparm.ads +++ b/gcc/ada/targparm.ads @@ -408,6 +408,14 @@ package Targparm is -- are available. If any of these routines is not available, then -- this flag is False, and the use of aggregates is not permitted. + Support_Atomic_Primitives_On_Target : Boolean := False; + -- If this flag is True, then the back-end support GCC built-in atomic + -- operations for memory model such as atomic load or atomic compare + -- exchange (see the GCC manual for more information). If the flag is + -- False, then the back-end doesn't provide this support. Note this flag is + -- set to True only if the target supports all atomic primitives up to 64 + -- bits. ??? To be modified. + Support_Composite_Assign_On_Target : Boolean := True; -- The assignment of composite objects other than small records and -- arrays whose size is 64-bits or less and is set by an explicit |