On Sat, Jun 2, 2012 at 11:31 AM, Basile Starynkevitch <bas...@starynkevitch.net> wrote: > In the MELT meta-plugin (recall that MELT is a high-level domain specific > language to > extend GCC, see http://gcc-melt.org/ for more) we extensively use associative > hash-tables > for that. MELT offers homogeneous hash-tables, e.g. hash-table associating > tree (i.e. > non-null tree pointers) to arbitrary non-null MELT values (e.g. MELT > closures, or MELT > lists, or MELT objects, etc etc), or hash-table associating (non null) gimple > to non > null MELT values. > > So you can have e.g. an hash-table associating each tree (every tree is in > GCC a non-null > pointer to a structure) with data associated to it. Once it has some data you > know that > this tree has been visited.
I'll poke around the MELT source code - In Melt, where in source code may I have a look to see how trees and mapped to the hash table? Are you able to summarize the basics? I.e. the hash for a specific node tree is derived from what data? Pointer address? Thanks for the info.