-C Fix\sbuilding\swith\sSQLITE_OMIT_FOREIGN_KEY\sdefined.
-D 2017-01-30T11:38:19.468
+C Performance\soptimization\sin\ssqlite3ExprAssignVarNumber().
+D 2017-01-31T03:52:34.839
F Makefile.in 5f415e7867296d678fed2e6779aea10c1318b4bc
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
F Makefile.msc b8ca53350ae545e3562403d5da2a69cec79308da
F src/date.c dc3f1391d9297f8c748132813aaffcb117090d6e
F src/dbstat.c 19ee7a4e89979d4df8e44cfac7a8f905ec89b77d
F src/delete.c 0d9d5549d42e79ce4d82ff1db1e6c81e36d2f67c
-F src/expr.c f06f41e5e5daca10fb090e70a2502dcc0dbc992b
+F src/expr.c 27ac552489a34fc85202084dda32d0a2a0664bfb
F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007
F src/fkey.c 2e9aabe1aee76273aff8a84ee92c464e095400ae
F src/func.c c67273e1ec08abbdcc14c189892a3ff6eeece86b
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 4fe879d4b5da6ae0688a7a99004683a234966597
-R c0ed5c24fdff676195cd77401e89700b
-U dan
-Z 6d1b138d17ccacee0c622f2ed331ca89
+P e93d2c49a44af994ff10cc9cc7eafacd5a4f73ab
+R e1972f457267c7c1c09dde68002ccdbd
+U drh
+Z 4723986ca78be7a36581ca020c177062
/* Wildcard of the form "?nnn". Convert "nnn" to an integer and
** use it as the variable number */
i64 i;
- int bOk = 0==sqlite3Atoi64(&z[1], &i, n-1, SQLITE_UTF8);
+ int bOk;
+ if( n==2 ){ /*OPTIMIZATION-IF-TRUE*/
+ i = z[1]-'0'; /* The common case of ?N for a single digit N */
+ bOk = 1;
+ }else{
+ bOk = 0==sqlite3Atoi64(&z[1], &i, n-1, SQLITE_UTF8);
+ }
x = (ynVar)i;
testcase( i==0 );
testcase( i==1 );