On 09/10/2013 08:30 AM, Jakub Jelinek wrote:
On Tue, Sep 10, 2013 at 07:42:42AM -0400, Andrew MacLeod wrote:
On 09/10/2013 01:27 AM, Jakub Jelinek wrote:
On Mon, Sep 09, 2013 at 08:39:16PM -0600, Jeff Law wrote:
On 09/09/2013 06:59 PM, Andrew MacLeod wrote:
Whilst poking around, I discovered these hast table functions and the
macro are no longer used anywhere in the compiler.
bootstraps on x86_64-unknown-linux-gnu.
Probably obvious but in case I missed something...  OK?
If they're unused, eliminate them.  OK for the trunk.
Those macros were added last year together with hash-table.h,
just nothing uses them so far, but they are counterparts of the
hashtab.h traversal function which is used in various parts.

So removing it is IMHO a mistake.


Are you sure?   FOR_EACH_HASH_TABLE_ELEMENT was added in April of
this year as part of the hash table work, and it is used in a number
of places.   This one (FOR_EACH_HTAB_ELEMENT) was added in 2005 and
would seem to be obsolete now...
I stand corrected, still I think it is a mistake to remove it, because
the C++ alternative to htab_t only supports a subset of uses of the older
C htab_t, e.g. it can't cope with GC.  So FTTB some of the hash tables
in the newly added code (most recently e.g. ubsan) need to use the C
htab_t and could make use of the traversal iterator infrastructure.

        
Really? If it were useful I would have thought they'd be using it now.

In any case, it doesn't belong in tree-flow.h.. . shouldn't these functions and macros be in hashtab.h then?

I could move them there...

Andrew



Andrew

Reply via email to