Fix a harmless compiler warning that crops up with SQLITE_MAX_MMAP_SIZE=0.
Performance enhancements and size reduction for sqlite3VXPrintf()
Clean up some obsolete "register" declarations in printf.c.
Experiments with the optimization of ORDER BY and GROUP BY clauses.
Adjust the query planner to keep track of the number of ORDER BY terms
satisfied.  Still doesn't do anything with this information.  Some tests
fail after this check-in, but all failures are believed to be benign.  The
failures will be addressed at a later stage.
Make the partial-ORDER-BY information in the query planner available to the
SELECT code generator.  Still doesn't make a difference in the generated code.
First attempt at getting block-sort to work.  This is an incremental check-in.
There are many problems still to be worked out.
Make sure the where.c query planner never reports that the number of ORDER BY
terms that are satisfied by indices is negative.
Avoid reusing temporary registers in co-routines when doing
block-sorting.
Fix a problem in the block-sort logic that can arise if the VDBE opcode
array is resized while the block-sort logic is being coded.  "make test"
now runs to completion, though there are still 17 failures.
Make it possible for block-sort to use the OP_SorterOpen sorter in addition
to a generic OP_OpenEphemeral.
Avoid some unnecessary calls to sqlite3VdbeRecordUnpack() that were being made when merging data from two or more temp files together in vdbesort.c
Fix query planner weights associated with choosing block-sorting.  Fix
block sorting of tables with collating functions.  Fix various test cases.
All "veryquick" tests are now passing, though more tests need to be added.
Merge the vdbesort.c optimization from trunk.
Add an experimental fix to avoid attempting to mmap memory from an offset that is not a multiple of the system page size on systems with page sizes larger than 32KB.
Add a test to ensure os_unix.c works with 64KiB OS pages.
Fix an unnecessarily obtuse use of a bitmask flag.
Convert expressions of the form "X IN (?)" with exactly one value on the
RHS of the IN into equality tests:  "X=?".  Add test cases to verify that
statements work correctly on this corner case.
Fix for ticket [e39d032577df6942].
Previous check-in is not quite correct.  "x IN (?)" is not exactly the same
as "x==?" do to collation and affinity issues.  The correct converstion should
be to "x==(+? COLLATE binary)".  The current check-in fixes this problem and
provides test cases.  Ticket [e39d032577df69]
Fix harmless compiler warnings.