hanchenye-llvm-project/clang/Sema
Steve Naroff 2cd263ff71 Remove SelectorTable/SelectorInfo, simply store all selectors in the central IdentifierTable.
Rationale:

We currently have a separate table to unique ObjC selectors. Since I don't need all the instance data in IdentifierInfo, I thought this would save space (and make more sense conceptually).

It turns out the cost of having duplicate entries for unary selectors (i.e. names without colons) outweighs the cost difference between the IdentifierInfo & SelectorInfo structures. Here is the data:

Two tables:

*** Selector/Identifier Stats:
# Selectors/Identifiers: 51635 
Bytes allocated:         1999824

One table:

*** Identifier Table Stats:
# Identifiers:   49500
Bytes allocated: 1990316

llvm-svn: 42139
2007-09-19 16:18:46 +00:00
..
ASTStreamer.cpp remove some obsolete interfaces. 2007-09-16 19:47:56 +00:00
Makefile fix description 2007-05-23 23:56:42 +00:00
Sema.cpp add actions for deleting expr/stmt nodes. 2007-08-31 04:53:24 +00:00
Sema.h Progress on message expressions... 2007-09-18 23:55:05 +00:00
SemaChecking.cpp Fix 80 col violations. 2007-08-30 17:08:17 +00:00
SemaDecl.cpp Remove SelectorTable/SelectorInfo, simply store all selectors in the central IdentifierTable. 2007-09-19 16:18:46 +00:00
SemaExpr.cpp Remove SelectorTable/SelectorInfo, simply store all selectors in the central IdentifierTable. 2007-09-19 16:18:46 +00:00
SemaExprCXX.cpp Rename statement actions (from Parse-prefix to ActOn-prefix). 2007-09-16 14:56:35 +00:00
SemaStmt.cpp Rename statement actions (from Parse-prefix to ActOn-prefix). 2007-09-16 14:56:35 +00:00
SemaType.cpp Start converting Action methods from Parse-prefix to ActOn-prefix. 2007-09-15 18:49:24 +00:00