This is the mail archive of the
archer-commits@sourceware.org
mailing list for the Archer project.
[SCM] archer-jankratochvil-vla: Merge branch 'archer-jankratochvil-type-refcount' of ssh://sourceware.org/git/archer into archer-jankratochvil-vla
- From: jkratoch at sourceware dot org
- To: archer-commits at sourceware dot org
- Date: 12 Jun 2009 23:41:36 -0000
- Subject: [SCM] archer-jankratochvil-vla: Merge branch 'archer-jankratochvil-type-refcount' of ssh://sourceware.org/git/archer into archer-jankratochvil-vla
The branch, archer-jankratochvil-vla has been updated
via 45d2678e4e93ad46800ba3b6474a54de449b3369 (commit)
via ce37c3f636a5dc7e8bb57a1e70259188b7095444 (commit)
via 5ab462f150488aee69b94ca1755daef0c8d8007e (commit)
via d6581ecbcc8edd7dadfb44093baba0d996f14aea (commit)
via 4dbe3c7a9fcacfc9810c912b813a7a07d0ff92e7 (commit)
via 81ebf370fe37f61ac55bd3ff64d66901b83696cd (commit)
via a898a7b200a3a31a35be65ac4f68413d7b579ecb (commit)
via c4ad487cb16d25add8ac9c0d38367ca5ed3a8794 (commit)
via 670f24233bbc15fb62dee9c2267c0f22cd03fa71 (commit)
via 4688c31093f8962806654ccd6cd187f76449ded2 (commit)
via 6414d6c855497a8c05f9e4935a311f10e4ee81f9 (commit)
via 0f3afabfe95cacbf8b1d7db284de829a96094024 (commit)
via b582291f6c898df361ee26a5113840cd0f4044cf (commit)
via 394c61d68264eac8322c7b0cbfc093cf8443b354 (commit)
via cfdd89a769cd42d58a977fb0bfe40889bb8b24a1 (commit)
via 1b9ca31e68bae8bc9703c0a98b8f7157324cd385 (commit)
via be645e778f859b9b996db0183fc9deb170674089 (commit)
via ced391d639e9bbb85e780151564a6c4e3b446f5e (commit)
via d196776a2091735a10f1b213109ba71dd9b38e38 (commit)
via cfbc53184b215a037f70aad8a49b87c7ae12dba0 (commit)
via a4170828dee49f1d714b927d8d58d752f718b8ec (commit)
via 259b8197d9883301ed0e36eb7e87f84f08235900 (commit)
via 8da72197d2fed63f540484293da013c0d2a02336 (commit)
via fba47fc03c10e74afaa069c1f7504f63726ebf0e (commit)
via 7384699a5c819053f57177435ee075901c6b27ac (commit)
via 86a6fd26ded3abdd8477fadac88c2f0d8fbd103d (commit)
via 82c47ca870a245321b4e0d5be676e869c6478cdb (commit)
via b81cda185ec63d9007b1bf3194196f4b31b45591 (commit)
via 27305e21926948d6b1ed549d6755521dcb898936 (commit)
via 2565059a0d631e781bb78bb5d293156e18918e31 (commit)
via af3f233a276344d8c817a6d998b88f90f4631e08 (commit)
via a28e0e5db7cd184b4e4af290df6e7289fd20049f (commit)
via 335f903bd2270007d89537d49ed1e19240d0d336 (commit)
via 13a84afcd84e1c4239f642c11f4923805990be8b (commit)
via b701d88201bbf4fe58abfd3fe9cc331bc114a0a4 (commit)
via 05bd28a1266bccb328641243751b99149a84d97f (commit)
via 565c9aa33e55e8e0e69ab465960933814e5962b2 (commit)
via 6d39bcf37f783e342726eed04d1ae3a40ad79df4 (commit)
via 4c31272dcf0f40289a1a3e9d16e5ee991153317a (commit)
via 372af84868fde99f15c4db8786b66e1778b698b6 (commit)
via 76503562fb1712ba45e5cc6d6c376ed86cccb1e9 (commit)
via c7cba6373f7692b9ffe4a7746c6ce95bbcf11d68 (commit)
via 8b15c70b94fa6212b80152f0de488e79bedad5d7 (commit)
via eae12918c2c6620a96b86f9a6612473dfbb6da33 (commit)
via 312fb671d5f76672f0a0a4c674064952843b5797 (commit)
via e83f4f0b6910c27e3d1e6c50dcc04ddd8f68e509 (commit)
via 685b55f764ce7b80bf4eef9e5f92218122453170 (commit)
via 7ee5d55b96c060075710bfdea08ce5d9d57a4d0b (commit)
via 074f3a486ea46e1d067453576539e040f985d604 (commit)
via bc01dce949f1ec4ce53ca670b683adaede5d1b87 (commit)
via b81319240b4a1a714084699e0535b25ae00f28ba (commit)
via 57f72d1723df488f34e9178341852938f301f3e9 (commit)
via bf27a1ec0e149e218c0a381c0b042a7656fd8497 (commit)
via 592c43f5653189b1ac108e487eb9e0042ebd2c0c (commit)
via b36e6aa11412cde83ded346d55e8bdd0f876ec7f (commit)
via 8a0f8bd77ef79343086cec51a87f7665227bf478 (commit)
via c737c68b548d9f779baff5d49d6513a996c9aa73 (commit)
via 6ce3aa262f3cc58533632996970bb30943dbafd1 (commit)
via bf675113da4a123fceca551e31386433a23512f6 (commit)
via eb2e2438ffe1232319d73657570d74726d7ce91b (commit)
via f489d277483737a05eb37cbfe6c922e57bdd5947 (commit)
via 74be40a6fe5885d05289bff6e40e69c33183dc4c (commit)
via 34aabb20445d257f995a7f978b12f555e59eb02e (commit)
via fde63f98995baeb7e99dd3dbf445d75479c26763 (commit)
via 34014599a92bf094a5a58f4d6b27ee159e006c93 (commit)
via 8ce94a1e94e57161644178e91284d20b4199c74a (commit)
via 51224dc570bfebdb7d1dc1c12a706758cf44d6b7 (commit)
via 5d56be8d948d513bb471495f9cc8057c66896740 (commit)
via 858d628d55bc64cadb0a47787e236aee7486f3b3 (commit)
via bc6adcd1f8cceed14e4b244c6796210d2905ce35 (commit)
via 4c7cbb0a2338dbd815667ce0a517c6a4e4a07065 (commit)
via a3c9ee0006fd9734f396c8753500aba05c2133a4 (commit)
via dd57c53d8f54ca0793696ee70482e4669b006308 (commit)
via 351ae25bf0052adb20a7fe51baac6d615abb0068 (commit)
via 9fddf096a5c4873cb46f48bb621ebe66b96d1843 (commit)
via ad80246e559bf16a5d1d30ac8fb3b1978f033f9c (commit)
via 27a0a2c5bd6bdef0bf5bb53d98d0ea6d2f0696c7 (commit)
via 32d7e7fbdc648fcf81cb0f484070344b5e78d223 (commit)
via a23ef5405428e7fe07b4c01ffb1b33000cfacf09 (commit)
via bf4cd77781349b1968616919a12e96b7c74158e8 (commit)
via 77a91124678352c6cd265a189d9e4e9d9323ed8c (commit)
via bc5284cc19ee108242a81b378fcdec6a7691170a (commit)
via 0f12dbcf00ef0b056552f3d30cdfd4663b864cfc (commit)
via 2a8342d67bd977626f44b23a77b46b8293db37d0 (commit)
via 9b78a3616c3ee29f31bfb7daa8d31b4413656dce (commit)
via ea4154c95adef19e78ebaf863fe13dc70636c5cc (commit)
via f68839aaf768188364094f818573495522e66260 (commit)
via e54933a8ab019fbfbd7c7dd6535edad07e25317c (commit)
via 168706ddf9cdf51463ca7e94065d0d1d9f49253b (commit)
via d4c3859e9db37c08cbbf8a007aaf5acaac0848d7 (commit)
via 8306ebb06129191e761824190d242dea45bc4be8 (commit)
via 3cc052ca78860cd389acd5bc814bc0c3bfa578fd (commit)
via 01fd408740e4fe1df642d1536272295d2ca3c833 (commit)
via 048afcd4b95a23ea0ac1cc1df4559860e297796d (commit)
via 60413c457f4d4b381843d6a89c6be865f2cf990d (commit)
via 954a9ab9b93b7607291994bc8f1edd249abd5cf8 (commit)
via 3e71f11fa7b4f4807dfbacb341acc533d12cf5bc (commit)
via 5166d8949e0d58843dffea14b569a27452139cf1 (commit)
via ad1d71b4c2c22c9ade23c661081878f797a86e6f (commit)
via 47211f4a31ff3189bdfc7f4d2deaf6af5c10acc3 (commit)
via 845223f98bd0213365a9de0f352065a6a4b00027 (commit)
via 9f389f7f1218f394e9c8040d204b8a8b5815d013 (commit)
via d0841a7a0349a41128ca895bc04ad346a13883f9 (commit)
via 8fea4e1c2debf5f2602f96de502f35662c73e182 (commit)
via e2b12342b77073638798f3d51f160fa44eacda04 (commit)
via 8bbd6636b6945f701870d267c76f19cd27056831 (commit)
via 69203a1a77818f59613d2e3b17c829924418a9fa (commit)
via 8d4cbb4579424356215c550a5a49644fc6818a9c (commit)
via 77a26251319202d42eb4ddb4604c707ad2ffa179 (commit)
via a3a214309d65d485294811c2b73c8d29a1f95919 (commit)
via 3c9eb299025292769a09d9868c17ac621d232602 (commit)
via 53ad60e6dd9c7ad33571f8db1558729ebb04aab5 (commit)
via 2ec3d727a7305d1dbb28f1fee1ef02450ee82845 (commit)
via 6959c5dd85756c341bf41599a3442c9e18d78746 (commit)
via 61a137e12497d5948d62eb7506ffe11e777e8df2 (commit)
via d1a013a98481217e506ce158dc2e87549b5cd64d (commit)
via c00f4e539f049265ea547d1799fb357b9c610688 (commit)
via efc324e41583e7f096123f2121d5dcd9bbb7567b (commit)
via 61f191dc6d87b039c58dd4cf7d64b07cb06c5b31 (commit)
via 9aa1a1aef45622e854aa732b6e7313dc659cd6a5 (commit)
via 67839f608a5f02f89b0788c540ef758a993651cd (commit)
via 1e292fcd978994da261b81848f5bc68c69cf05f8 (commit)
via 28f8a7dcb7465f0afe190bfbe8770c6be086522f (commit)
via b5bd67ccf12aa51d4f7638a458c55a52d485999f (commit)
via bef88c007a7ae080002beb3ba8a4a8258f59e2cb (commit)
via 00098a51f15b9c5fdbb02aeee3817dd656dfa741 (commit)
via 6b07559d667d8a8c4392b0152bee496060d85a42 (commit)
via 7784b546df3857011e9a25975264d2a1f85a5fca (commit)
via 1e5e2afd7cfa6bb62abb9493a514c70489e19c32 (commit)
via e7fb349f3821b038563752abccf90a5fd252d0d9 (commit)
via 23b92bc2138a7aa498b01e39ebf2183f6cf6de17 (commit)
via a9e3fce8a9858d78e554861e41a7ce32c52d5a2e (commit)
via e87845632a8e4beb6923f78d7b368730671e1cf8 (commit)
via c6749ef83091a93bb81f7ecf6c42d850294e21c3 (commit)
via 6a1a70d26eb39755635b466cb6f50eee602ecf13 (commit)
via 51c892357c62187fa462745acca179c26ccb66b8 (commit)
via c912928872cf4014fb5a223607144bbd5b57db79 (commit)
via 6386feea553f2ddbc0db53a16ea0a1fe854ec84b (commit)
via c2b4ef6eefaa305e2dc627c4eba5cf594c14c5f8 (commit)
via f5890ff18a4276c610380ca21c9fafe2d3e24296 (commit)
via 5e1ef3df87dcf5d535f32cabe29ed74864951914 (commit)
via 274ed8624ae0228ded0d34a89fef930c6660d830 (commit)
via f24a0e8353bd7c6ac79281ca0e79306db60f3026 (commit)
via 5aea0bd7b481870153c42f5e705248072aca77ed (commit)
via 3cbc17db979a9bfa6ad8b6a6b60acf008e4936af (commit)
via 5ed3c6d8fec56cea2cf5593cc10ed394e66f51a8 (commit)
via d65a6e6baa8ed8677ee23de1553ddb136ad0df56 (commit)
via a4f5173a537a9ce6e10c9b7e89d7e8e0dcb34846 (commit)
via 80da459c465687b50b9f41f591dd3c9b557e9bb8 (commit)
via 6ddf1afb85a400d24551d01d38f9cbccde28f058 (commit)
via d8516c7fe64c21f98c81ca96b582616e1bf6e054 (commit)
via 2f6bfc6a33c2f138f438abec0993e0c6eea19c71 (commit)
via a1f05c69a91555fcfde5e0056c8768bf96eb23c0 (commit)
via c6372ab5f91d433418ff6169ff3cc830936aca6f (commit)
via b5e3e370c0aa5c73c5188c4c004e228be3efb1c9 (commit)
via e24ff4483d0bff673eb239913a443d494537549d (commit)
via ac4005abc7a136127ae046db10aa5eaffe7a0aee (commit)
via 546da8d3a3377dc9e427f354e1edb0da4ef9b4c8 (commit)
via 0efdb1199ccffd23a13d30a9e917fb5f7182ad8b (commit)
via 36e31abea910a4676548f886c9833f68b2248391 (commit)
via e52936c1ba43e5e5e1b8ef8af204dc365cc04d63 (commit)
via ab50f59f12b38d09a50cff1a27f2cc79bb64b410 (commit)
via bf0cd74600c9c7305a99e1c3912296d6f8bcd7c5 (commit)
via 3762a5c52929067fe652808aa9560b1f06ef01a6 (commit)
via 7e02d1681fe6880801781375fa78ca29bc3bc27f (commit)
via 6fea4b8aef82dd1c02e76454d9ba4f433e435434 (commit)
via 23c9946e3b77ae32350d2601ed35d4e6f7aba1d9 (commit)
via f3cb6ca5b57df4e72a47143cf951a3ba0703a777 (commit)
from 716e4b23ca866e36079d4f10138a740f65d7a5ed (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email.
- Log -----------------------------------------------------------------
commit 45d2678e4e93ad46800ba3b6474a54de449b3369
Merge: 716e4b23ca866e36079d4f10138a740f65d7a5ed ce37c3f636a5dc7e8bb57a1e70259188b7095444
Author: Jan Kratochvil <jkratoch@host1.dyn.jankratochvil.net>
Date: Sat Jun 13 01:41:22 2009 +0200
Merge branch 'archer-jankratochvil-type-refcount' of ssh://sourceware.org/git/archer into archer-jankratochvil-vla
Conflicts:
gdb/config/i386/nm-cygwin.h
gdb/config/i386/nm-cygwin64.h
gdb/config/mips/nm-irix5.h
gdb/dwarf2loc.c
gdb/dwarf2loc.h
gdb/dwarf2read.c
gdb/findvar.c
gdb/gdbtypes.c
gdb/gdbtypes.h
gdb/testsuite/gdb.base/vla-overflow.c
gdb/testsuite/gdb.mi/nsthrexec.c
gdb/testsuite/gdb.opt/array-from-register-func.c
gdb/testsuite/gdb.python/python-template.cc
gdb/testsuite/gdb.threads/thread-execl.c
gdb/valops.c
-----------------------------------------------------------------------
Summary of changes:
gdb/gdbtypes.c | 32 ++++++++++++++++++--------------
1 files changed, 18 insertions(+), 14 deletions(-)
First 500 lines of diff:
diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
index 73aaf49..ec32200 100644
--- a/gdb/gdbtypes.c
+++ b/gdb/gdbtypes.c
@@ -191,14 +191,13 @@ alloc_type (struct objfile *objfile)
return type;
}
-/* Allocate a new type by an alloc_type call but make the new type discardable
- on next garbage collection by free_all_types. You must call type_mark_used
- during each free_all_types to protect TYPE from being deallocated. */
+/* Declare TYPE as discardable on next garbage collection by free_all_types.
+ You must call type_mark_used during each free_all_types to protect TYPE from
+ being deallocated. */
-static struct type *
-alloc_type_discardable (void)
+static void
+set_type_as_discardable (struct type *type)
{
- struct type *type = alloc_type (NULL);
void **slot;
gdb_assert (!TYPE_DISCARDABLE (type));
@@ -209,21 +208,20 @@ alloc_type_discardable (void)
slot = htab_find_slot (type_discardable_table, type, INSERT);
gdb_assert (!*slot);
*slot = type;
-
- return type;
}
-/* Allocate a new type like alloc_type or alloc_type_discardable copying the
- discardability state of PARENT_TYPE (its current reference count
- notwithstanding). */
+/* Allocate a new type like alloc_type but preserve for it the discardability
+ state of PARENT_TYPE. */
static struct type *
alloc_type_as_parent (struct type *parent_type)
{
+ struct type *new_type = alloc_type (TYPE_OBJFILE (parent_type));
+
if (TYPE_DISCARDABLE (parent_type))
- return alloc_type_discardable ();
+ set_type_as_discardable (new_type);
- return alloc_type (TYPE_OBJFILE (parent_type));
+ return new_type;
}
/* Alloc a new type instance structure, fill it with some defaults,
@@ -3111,7 +3109,7 @@ copy_type_recursive_1 (struct objfile *objfile,
if (*slot != NULL)
return ((struct type_pair *) *slot)->new;
- new_type = alloc_type_discardable ();
+ new_type = alloc_type (NULL);
/* We must add the new type to the hash table immediately, in case
we encounter this type again during a recursive call below. Memory could
@@ -3127,6 +3125,12 @@ copy_type_recursive_1 (struct objfile *objfile,
*TYPE_MAIN_TYPE (new_type) = *TYPE_MAIN_TYPE (type);
TYPE_OBJFILE (new_type) = NULL;
+ /* TYPE_MAIN_TYPE memory copy above rewrote the TYPE_DISCARDABLE flag so we
+ need to initialize it again. And even if TYPE was already discardable
+ NEW_TYPE so far is not registered in TYPE_DISCARDABLE_TABLE. */
+ TYPE_DISCARDABLE (new_type) = 0;
+ set_type_as_discardable (new_type);
+
/* Pre-clear the fields processed by delete_main_type. If DWARF block
evaluations below call error we would leave an unfreeable TYPE. */
TYPE_TARGET_TYPE (new_type) = NULL;
hooks/post-receive
--
Repository for Project Archer.