diff options
author | drh <drh@noemail.net> | 2019-08-28 11:31:11 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2019-08-28 11:31:11 +0000 |
commit | 010bdb4c7968fa7e50a46633bf359d60b144a33e (patch) | |
tree | 50c6b0d0a85c8ddb76c068329ff571d0ccebb476 /tool/lemon.c | |
parent | 2e51716b1520fc6e681e9578d681e2e60ae6590f (diff) | |
download | sqlite-010bdb4c7968fa7e50a46633bf359d60b144a33e.tar.gz sqlite-010bdb4c7968fa7e50a46633bf359d60b144a33e.zip |
Further improvements to parser speed by enlarging lookup tables to eliminate
the need to do range checking on the index prior to lookup.
FossilOrigin-Name: 47d3e091ae49eb7947af5abef9b5b96b16b86d349e51fe0677795649be6db473
Diffstat (limited to 'tool/lemon.c')
-rw-r--r-- | tool/lemon.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/tool/lemon.c b/tool/lemon.c index 3daa6d38c..893e1d18b 100644 --- a/tool/lemon.c +++ b/tool/lemon.c @@ -4506,7 +4506,9 @@ void ReportTable( */ if( lemp->has_fallback ){ int mx = lemp->nterminal - 1; - while( mx>0 && lemp->symbols[mx]->fallback==0 ){ mx--; } + /* 2019-08-28: Generate fallback entries for every token to avoid + ** having to do a range check on the index */ + /* while( mx>0 && lemp->symbols[mx]->fallback==0 ){ mx--; } */ lemp->tablesize += (mx+1)*szCodeType; for(i=0; i<=mx; i++){ struct symbol *p = lemp->symbols[i]; |