Preprocessor: 1) Rationalize the "fixed atom" scheme, 2) remove redundant lookups when the text is already available.
This simplification is a prelude to eliminating what I appear unnecessary symbol inserts into tables when tokenizing in the preprecessor, which show up as taking notable time. (Performance issue.) It also simply makes the preprocessor easier to understand, which it is badly in need of.
This commit is contained in:
parent
2f273369e4
commit
6ab3d582d6
10 changed files with 362 additions and 412 deletions
|
|
@ -93,48 +93,6 @@ TPpContext::TPpContext(TParseContext& pc) :
|
|||
for (elsetracker = 0; elsetracker < maxIfNesting; elsetracker++)
|
||||
elseSeen[elsetracker] = false;
|
||||
elsetracker = 0;
|
||||
|
||||
// The following identifies all legal characters in GLSL:
|
||||
|
||||
//for (int c = 0; c < 256; ++c)
|
||||
// languageCharacters[c] = false;
|
||||
//for (int c = 'a'; c <= 'z'; ++c)
|
||||
// languageCharacters[c] = true;
|
||||
//for (int c = 'A'; c <= 'Z'; ++c)
|
||||
// languageCharacters[c] = true;
|
||||
//languageCharacters['_'] = true;
|
||||
//for (int c = '0'; c <= '9'; ++c)
|
||||
// languageCharacters[c] = true;
|
||||
//languageCharacters['.'] = true;
|
||||
//languageCharacters['+'] = true;
|
||||
//languageCharacters['-'] = true;
|
||||
//languageCharacters['/'] = true;
|
||||
//languageCharacters['*'] = true;
|
||||
//languageCharacters['%'] = true;
|
||||
//languageCharacters['<'] = true;
|
||||
//languageCharacters['>'] = true;
|
||||
//languageCharacters['['] = true;
|
||||
//languageCharacters[']'] = true;
|
||||
//languageCharacters['('] = true;
|
||||
//languageCharacters[')'] = true;
|
||||
//languageCharacters['{'] = true;
|
||||
//languageCharacters['}'] = true;
|
||||
//languageCharacters['^'] = true;
|
||||
//languageCharacters['|'] = true;
|
||||
//languageCharacters['&'] = true;
|
||||
//languageCharacters['~'] = true;
|
||||
//languageCharacters['='] = true;
|
||||
//languageCharacters['!'] = true;
|
||||
//languageCharacters[':'] = true;
|
||||
//languageCharacters[';'] = true;
|
||||
//languageCharacters[','] = true;
|
||||
//languageCharacters['?'] = true;
|
||||
//languageCharacters['#'] = true;
|
||||
|
||||
//// white space
|
||||
//languageCharacters[' '] = true;
|
||||
//for (int c = 9; c <= 13; ++c)
|
||||
// languageCharacters[c] = true;
|
||||
}
|
||||
|
||||
TPpContext::~TPpContext()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue