-liberty for the type hash
Mark Mitchell
mark@codesourcery.com
Sun Mar 19 10:18:00 GMT 2000
>>>>> "Martin" == Martin v Loewis <martin@loewis.home.cs.tu-berlin.de> writes:
Martin> Right. You might have noticed that I could not have htab_t
Martin> tables as generic GC roots, though. I still needed a
Martin> structure to store the hash value together with the type*,
Martin> so the elements in the hash would not be trees, but
Martin> type_hash pointers.
Yup. That's OK -- we still got big leverage from your change.
Martin> Also, I dumped the contents of the type hash using
Martin> type_as_string (in cc1plus), and noticed that there are
Martin> apparently duplicate function types in the hash table. I
Martin> will have to investigate this further.
Yes. I think I remember seeing something similar. The rules for
exactly which types *must* be shared is unclear to me -- I don't think
it's well-documented anywhere. Ideally, we would share as more than
we do -- but we have a bad habit of altering types for a while, so
it's hard to say exactly when a type is "finished".
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
More information about the Gcc-patches
mailing list