mirror of
https://github.com/cc65/cc65.git
synced 2024-11-18 15:05:14 +00:00
Minor code optimization.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5883 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
757b400aa1
commit
a3ae2e9125
@ -428,15 +428,18 @@ SymEntry* SymFindAny (SymTable* Scope, const StrBuf* Name)
|
|||||||
* never create a new symbol, since this can only be done in one specific
|
* never create a new symbol, since this can only be done in one specific
|
||||||
* scope.
|
* scope.
|
||||||
*/
|
*/
|
||||||
{
|
{
|
||||||
|
/* Generate the name hash */
|
||||||
|
unsigned Hash = HashBuf (Name);
|
||||||
|
|
||||||
|
/* Search for the symbol */
|
||||||
SymEntry* Sym;
|
SymEntry* Sym;
|
||||||
do {
|
do {
|
||||||
/* Search in the current table. Ignore entries flagged with SF_UNUSED,
|
/* Search in the current table. Ignore entries flagged with SF_UNUSED,
|
||||||
* because for such symbols there is a real entry in one of the parent
|
* because for such symbols there is a real entry in one of the parent
|
||||||
* scopes.
|
* scopes.
|
||||||
*/
|
*/
|
||||||
unsigned Hash = HashBuf (Name) % Scope->TableSlots;
|
if (SymSearchTree (Scope->Table[Hash % Scope->TableSlots], Name, &Sym) == 0) {
|
||||||
if (SymSearchTree (Scope->Table[Hash], Name, &Sym) == 0) {
|
|
||||||
if (Sym->Flags & SF_UNUSED) {
|
if (Sym->Flags & SF_UNUSED) {
|
||||||
Sym = 0;
|
Sym = 0;
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user