aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJavier Miranda <miranda@adacore.com>2007-09-11 13:56:01 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2007-09-11 13:56:01 +0200
commit97695e47b8f2dc37883257edd3858bcca0bbd03d (patch)
treedc0e60fcea3bc13264723d599875a7d3ad8ed3c0 /gcc
parent6e3a2cda3357942e9cb579124f5cdbf827aeafb6 (diff)
downloadgcc-97695e47b8f2dc37883257edd3858bcca0bbd03d.zip
gcc-97695e47b8f2dc37883257edd3858bcca0bbd03d.tar.gz
gcc-97695e47b8f2dc37883257edd3858bcca0bbd03d.tar.bz2
Resync.
From-SVN: r128371
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog21
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 05182f8..1ad4a40 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,24 @@
+2007-09-11 Javier Miranda <miranda@adacore.com>
+
+ * einfo.ads, einfo.adb (Dispatch_Table_Wrapper): New attribute. Present
+ in library level record type entities if we are generating statically
+ allocated dispatch tables.
+
+ * exp_disp.adb (Make_Tags/Make_DT): Replace previous code
+ importing/exporting the _tag declaration by new code
+ importing/exporting the dispatch table wrapper. This change allows us
+ to statically allocate of the TSD.
+ (Make_DT.Export_DT): New procedure.
+ (Build_Static_DT): New function.
+ (Has_DT): New function.
+
+ * freeze.adb (Freeze_Static_Object): Code cleanup: Do not reset flags
+ True_Constant and Current_Value. Required to statically
+ allocate the dispatch tables.
+ (Check_Allocator): Make function iterative instead of recursive.
+ Also return inner allocator node, when present, so that we do not have
+ to look for that node again in the caller.
+
2007-09-11 Jan Hubicka <jh@suse.cz>
* misc.c (gnat_expand_body): Kill.