* gcc's symbol table
@ 2000-08-02 19:07 Marc Tardif
2000-08-03 4:55 ` Falk Hueffner
0 siblings, 1 reply; 3+ messages in thread
From: Marc Tardif @ 2000-08-02 19:07 UTC (permalink / raw)
To: gcc
I've heard that gcc uses gperf to create a perfect hash function for the
symbol table. Once a key is hashed and retrieved from the table, is it
necessary to strcmp in order to verify that the key matches the symbol?
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: gcc's symbol table
2000-08-02 19:07 gcc's symbol table Marc Tardif
@ 2000-08-03 4:55 ` Falk Hueffner
0 siblings, 0 replies; 3+ messages in thread
From: Falk Hueffner @ 2000-08-03 4:55 UTC (permalink / raw)
To: gcc
Marc Tardif <intmktg@CAM.ORG> writes:
> I've heard that gcc uses gperf to create a perfect hash function for
> the symbol table. Once a key is hashed and retrieved from the table,
> is it necessary to strcmp in order to verify that the key matches
> the symbol?
The perfect hash table is only used to recognize keywords, since
generating a perfect hash is costly. So a strcmp is neccesary to check
if it was a keyword at all. If a token would be known to be a keyword,
the strcmp would be unnecessary.
Falk
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: gcc's symbol table
@ 2000-08-02 19:34 Mike Stump
0 siblings, 0 replies; 3+ messages in thread
From: Mike Stump @ 2000-08-02 19:34 UTC (permalink / raw)
To: gcc, intmktg
> Date: Wed, 2 Aug 2000 22:06:17 -0400 (EDT)
> From: Marc Tardif <intmktg@CAM.ORG>
> To: gcc@gcc.gnu.org
> I've heard that gcc uses gperf to create a perfect hash function for
> the symbol table. Once a key is hashed and retrieved from the table,
> is it necessary to strcmp in order to verify that the key matches
> the symbol?
Yes, it performs a strcmp after. If you would like to see it, check
out:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/~checkout~/egcs/gcc/cp/hash.h?rev=1.12&content-type=text/plain
Hope this helps.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2000-08-03 4:55 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-08-02 19:07 gcc's symbol table Marc Tardif
2000-08-03 4:55 ` Falk Hueffner
2000-08-02 19:34 Mike Stump
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).