进行了优化,减少了上帝结构体的符号表占用
This commit is contained in:
@@ -71,10 +71,8 @@ class IfHandle(BaseHandle):
|
||||
Gen = self.Trans.LlvmGen
|
||||
if hasattr(Gen, '_define_constants') and name in Gen._define_constants:
|
||||
return True
|
||||
if name in self.Trans.SymbolTable:
|
||||
info = self.Trans.SymbolTable[name]
|
||||
if info.IsDefine:
|
||||
return True
|
||||
if self.Trans.SymbolTable.is_define(name):
|
||||
return True
|
||||
platform_macros = self._get_platform_macros()
|
||||
return name in platform_macros
|
||||
|
||||
@@ -84,7 +82,7 @@ class IfHandle(BaseHandle):
|
||||
val = Gen._define_constants[name]
|
||||
if isinstance(val, (int, float)):
|
||||
return val
|
||||
if name in self.Trans.SymbolTable:
|
||||
if self.Trans.SymbolTable.has(name):
|
||||
info = self.Trans.SymbolTable[name]
|
||||
if info.IsDefine:
|
||||
val = info.DefineValue
|
||||
|
||||
Reference in New Issue
Block a user