gitlab.com/CoiaPrant/sqlite3@v1.19.1/speedtest1/main_netbsd_amd64.go (about) 1 // Code generated by 'ccgo -export-defines "" -ignore-unsupported-alignment -o speedtest1/main_netbsd_amd64.go -trace-translation-units testdata/sqlite-src-3390300/test/speedtest1.c -Itestdata/sqlite-amalgamation-3390300 -l gitlab.com/CoiaPrant/sqlite3/lib -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1 -D__libc_cond_broadcast=pthread_cond_broadcast -D__libc_cond_destroy=pthread_cond_destroy -D__libc_cond_init=pthread_cond_init -D__libc_cond_signal=pthread_cond_signal -D__libc_cond_wait=pthread_cond_wait -D__libc_mutex_destroy=pthread_mutex_destroy -D__libc_mutex_init=pthread_mutex_init -D__libc_mutex_lock=pthread_mutex_lock -D__libc_mutex_trylock=pthread_mutex_trylock -D__libc_mutex_unlock=pthread_mutex_unlock -D__libc_mutexattr_destroy=pthread_mutexattr_destroy -D__libc_mutexattr_init=pthread_mutexattr_init -D__libc_mutexattr_settype=pthread_mutexattr_settype -D__libc_thr_yield=sched_yield', DO NOT EDIT. 2 3 package main 4 5 import ( 6 "math" 7 "reflect" 8 "sync/atomic" 9 "unsafe" 10 11 "modernc.org/libc" 12 "modernc.org/libc/sys/types" 13 "gitlab.com/CoiaPrant/sqlite3/lib" 14 ) 15 16 var _ = math.Pi 17 var _ reflect.Kind 18 var _ atomic.Value 19 var _ unsafe.Pointer 20 var _ *libc.TLS 21 var _ types.Size_t 22 23 func main() { libc.Start(main1) } 24 25 const ( 26 BIG_ENDIAN = 4321 27 BUFSIZ = 1024 28 BYTE_ORDER = 1234 29 EOF = -1 30 EXIT_FAILURE = 1 31 EXIT_SUCCESS = 0 32 FDATASYNC = 0x0010 33 FDISKSYNC = 0x0040 34 FD_SETSIZE = 256 35 FFILESYNC = 0x0020 36 FILENAME_MAX = 1024 37 FOPEN_MAX = 20 38 FPARSELN_UNESCALL = 0x0f 39 FPARSELN_UNESCCOMM = 0x04 40 FPARSELN_UNESCCONT = 0x02 41 FPARSELN_UNESCESC = 0x01 42 FPARSELN_UNESCREST = 0x08 43 FTS5_TOKENIZE_AUX = 0x0008 44 FTS5_TOKENIZE_DOCUMENT = 0x0004 45 FTS5_TOKENIZE_PREFIX = 0x0002 46 FTS5_TOKENIZE_QUERY = 0x0001 47 FTS5_TOKEN_COLOCATED = 0x0001 48 FULLY_WITHIN = 2 49 F_LOCK = 1 50 F_OK = 0 51 F_TEST = 3 52 F_TLOCK = 2 53 F_ULOCK = 0 54 GETPASS_7BIT = 0x080 55 GETPASS_BUF_LIMIT = 0x004 56 GETPASS_ECHO = 0x020 57 GETPASS_ECHO_NL = 0x400 58 GETPASS_ECHO_STAR = 0x040 59 GETPASS_FAIL_EOF = 0x002 60 GETPASS_FORCE_LOWER = 0x100 61 GETPASS_FORCE_UPPER = 0x200 62 GETPASS_NEED_TTY = 0x001 63 GETPASS_NO_BEEP = 0x010 64 GETPASS_NO_SIGNAL = 0x008 65 HAVE_USLEEP = 1 66 HN_AUTOSCALE = 0x20 67 HN_B = 0x04 68 HN_DECIMAL = 0x01 69 HN_DIVISOR_1000 = 0x08 70 HN_GETSCALE = 0x10 71 HN_NOSPACE = 0x02 72 INT16_MAX = 32767 73 INT16_MIN = -32768 74 INT32_MAX = 2147483647 75 INT32_MIN = -2147483648 76 INT64_MAX = 9223372036854775807 77 INT64_MIN = -9223372036854775808 78 INT8_MAX = 127 79 INT8_MIN = -128 80 INTMAX_MAX = 9223372036854775807 81 INTMAX_MIN = -9223372036854775808 82 INTPTR_MAX = 9223372036854775807 83 INTPTR_MIN = -9223372036854775808 84 INT_FAST16_MAX = 2147483647 85 INT_FAST16_MIN = -2147483648 86 INT_FAST32_MAX = 2147483647 87 INT_FAST32_MIN = -2147483648 88 INT_FAST64_MAX = 9223372036854775807 89 INT_FAST64_MIN = -9223372036854775808 90 INT_FAST8_MAX = 2147483647 91 INT_FAST8_MIN = -2147483648 92 INT_LEAST16_MAX = 32767 93 INT_LEAST16_MIN = -32768 94 INT_LEAST32_MAX = 2147483647 95 INT_LEAST32_MIN = -2147483648 96 INT_LEAST64_MAX = 9223372036854775807 97 INT_LEAST64_MIN = -9223372036854775808 98 INT_LEAST8_MAX = 127 99 INT_LEAST8_MIN = -128 100 LITTLE_ENDIAN = 1234 101 L_INCR = 1 102 L_SET = 0 103 L_XTND = 2 104 L_ctermid = 1024 105 L_cuserid = 9 106 L_tmpnam = 1024 107 NAMEWIDTH = 60 108 NBBY = 8 109 NDEBUG = 1 110 NFDBITS = 32 111 NODEVMAJOR = -1 112 NOT_WITHIN = 0 113 PARTLY_WITHIN = 1 114 PDP_ENDIAN = 3412 115 PTRDIFF_MAX = 9223372036854775807 116 PTRDIFF_MIN = -9223372036854775808 117 P_tmpdir = "/tmp/" 118 RANDOM_MAX = 0x7fffffff 119 RAND_MAX = 0x7fffffff 120 R_OK = 0x04 121 SEEK_CUR = 1 122 SEEK_END = 2 123 SEEK_SET = 0 124 SIG_ATOMIC_MAX = 2147483647 125 SIG_ATOMIC_MIN = -2147483648 126 SIZE_MAX = 18446744073709551615 127 SQLITE3_H = 0 128 SQLITE3_TEXT = 3 129 SQLITE_ABORT = 4 130 SQLITE_ABORT_ROLLBACK = 516 131 SQLITE_ACCESS_EXISTS = 0 132 SQLITE_ACCESS_READ = 2 133 SQLITE_ACCESS_READWRITE = 1 134 SQLITE_ALTER_TABLE = 26 135 SQLITE_ANALYZE = 28 136 SQLITE_ANY = 5 137 SQLITE_API = 0 138 SQLITE_APICALL = 0 139 SQLITE_ATTACH = 24 140 SQLITE_AUTH = 23 141 SQLITE_AUTH_USER = 279 142 SQLITE_BLOB = 4 143 SQLITE_BUSY = 5 144 SQLITE_BUSY_RECOVERY = 261 145 SQLITE_BUSY_SNAPSHOT = 517 146 SQLITE_BUSY_TIMEOUT = 773 147 SQLITE_CALLBACK = 0 148 SQLITE_CANTOPEN = 14 149 SQLITE_CANTOPEN_CONVPATH = 1038 150 SQLITE_CANTOPEN_DIRTYWAL = 1294 151 SQLITE_CANTOPEN_FULLPATH = 782 152 SQLITE_CANTOPEN_ISDIR = 526 153 SQLITE_CANTOPEN_NOTEMPDIR = 270 154 SQLITE_CANTOPEN_SYMLINK = 1550 155 SQLITE_CDECL = 0 156 SQLITE_CHANGESETAPPLY_INVERT = 0x0002 157 SQLITE_CHANGESETAPPLY_NOSAVEPOINT = 0x0001 158 SQLITE_CHANGESETSTART_INVERT = 0x0002 159 SQLITE_CHANGESET_ABORT = 2 160 SQLITE_CHANGESET_CONFLICT = 3 161 SQLITE_CHANGESET_CONSTRAINT = 4 162 SQLITE_CHANGESET_DATA = 1 163 SQLITE_CHANGESET_FOREIGN_KEY = 5 164 SQLITE_CHANGESET_NOTFOUND = 2 165 SQLITE_CHANGESET_OMIT = 0 166 SQLITE_CHANGESET_REPLACE = 1 167 SQLITE_CHECKPOINT_FULL = 1 168 SQLITE_CHECKPOINT_PASSIVE = 0 169 SQLITE_CHECKPOINT_RESTART = 2 170 SQLITE_CHECKPOINT_TRUNCATE = 3 171 SQLITE_CONFIG_COVERING_INDEX_SCAN = 20 172 SQLITE_CONFIG_GETMALLOC = 5 173 SQLITE_CONFIG_GETMUTEX = 11 174 SQLITE_CONFIG_GETPCACHE = 15 175 SQLITE_CONFIG_GETPCACHE2 = 19 176 SQLITE_CONFIG_HEAP = 8 177 SQLITE_CONFIG_LOG = 16 178 SQLITE_CONFIG_LOOKASIDE = 13 179 SQLITE_CONFIG_MALLOC = 4 180 SQLITE_CONFIG_MEMDB_MAXSIZE = 29 181 SQLITE_CONFIG_MEMSTATUS = 9 182 SQLITE_CONFIG_MMAP_SIZE = 22 183 SQLITE_CONFIG_MULTITHREAD = 2 184 SQLITE_CONFIG_MUTEX = 10 185 SQLITE_CONFIG_PAGECACHE = 7 186 SQLITE_CONFIG_PCACHE = 14 187 SQLITE_CONFIG_PCACHE2 = 18 188 SQLITE_CONFIG_PCACHE_HDRSZ = 24 189 SQLITE_CONFIG_PMASZ = 25 190 SQLITE_CONFIG_SCRATCH = 6 191 SQLITE_CONFIG_SERIALIZED = 3 192 SQLITE_CONFIG_SINGLETHREAD = 1 193 SQLITE_CONFIG_SMALL_MALLOC = 27 194 SQLITE_CONFIG_SORTERREF_SIZE = 28 195 SQLITE_CONFIG_SQLLOG = 21 196 SQLITE_CONFIG_STMTJRNL_SPILL = 26 197 SQLITE_CONFIG_URI = 17 198 SQLITE_CONFIG_WIN32_HEAPSIZE = 23 199 SQLITE_CONSTRAINT = 19 200 SQLITE_CONSTRAINT_CHECK = 275 201 SQLITE_CONSTRAINT_COMMITHOOK = 531 202 SQLITE_CONSTRAINT_DATATYPE = 3091 203 SQLITE_CONSTRAINT_FOREIGNKEY = 787 204 SQLITE_CONSTRAINT_FUNCTION = 1043 205 SQLITE_CONSTRAINT_NOTNULL = 1299 206 SQLITE_CONSTRAINT_PINNED = 2835 207 SQLITE_CONSTRAINT_PRIMARYKEY = 1555 208 SQLITE_CONSTRAINT_ROWID = 2579 209 SQLITE_CONSTRAINT_TRIGGER = 1811 210 SQLITE_CONSTRAINT_UNIQUE = 2067 211 SQLITE_CONSTRAINT_VTAB = 2323 212 SQLITE_COPY = 0 213 SQLITE_CORE = 1 214 SQLITE_CORRUPT = 11 215 SQLITE_CORRUPT_INDEX = 779 216 SQLITE_CORRUPT_SEQUENCE = 523 217 SQLITE_CORRUPT_VTAB = 267 218 SQLITE_CREATE_INDEX = 1 219 SQLITE_CREATE_TABLE = 2 220 SQLITE_CREATE_TEMP_INDEX = 3 221 SQLITE_CREATE_TEMP_TABLE = 4 222 SQLITE_CREATE_TEMP_TRIGGER = 5 223 SQLITE_CREATE_TEMP_VIEW = 6 224 SQLITE_CREATE_TRIGGER = 7 225 SQLITE_CREATE_VIEW = 8 226 SQLITE_CREATE_VTABLE = 29 227 SQLITE_DBCONFIG_DEFENSIVE = 1010 228 SQLITE_DBCONFIG_DQS_DDL = 1014 229 SQLITE_DBCONFIG_DQS_DML = 1013 230 SQLITE_DBCONFIG_ENABLE_FKEY = 1002 231 SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER = 1004 232 SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION = 1005 233 SQLITE_DBCONFIG_ENABLE_QPSG = 1007 234 SQLITE_DBCONFIG_ENABLE_TRIGGER = 1003 235 SQLITE_DBCONFIG_ENABLE_VIEW = 1015 236 SQLITE_DBCONFIG_LEGACY_ALTER_TABLE = 1012 237 SQLITE_DBCONFIG_LEGACY_FILE_FORMAT = 1016 238 SQLITE_DBCONFIG_LOOKASIDE = 1001 239 SQLITE_DBCONFIG_MAINDBNAME = 1000 240 SQLITE_DBCONFIG_MAX = 1017 241 SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE = 1006 242 SQLITE_DBCONFIG_RESET_DATABASE = 1009 243 SQLITE_DBCONFIG_TRIGGER_EQP = 1008 244 SQLITE_DBCONFIG_TRUSTED_SCHEMA = 1017 245 SQLITE_DBCONFIG_WRITABLE_SCHEMA = 1011 246 SQLITE_DBSTATUS_CACHE_HIT = 7 247 SQLITE_DBSTATUS_CACHE_MISS = 8 248 SQLITE_DBSTATUS_CACHE_SPILL = 12 249 SQLITE_DBSTATUS_CACHE_USED = 1 250 SQLITE_DBSTATUS_CACHE_USED_SHARED = 11 251 SQLITE_DBSTATUS_CACHE_WRITE = 9 252 SQLITE_DBSTATUS_DEFERRED_FKS = 10 253 SQLITE_DBSTATUS_LOOKASIDE_HIT = 4 254 SQLITE_DBSTATUS_LOOKASIDE_MISS_FULL = 6 255 SQLITE_DBSTATUS_LOOKASIDE_MISS_SIZE = 5 256 SQLITE_DBSTATUS_LOOKASIDE_USED = 0 257 SQLITE_DBSTATUS_MAX = 12 258 SQLITE_DBSTATUS_SCHEMA_USED = 2 259 SQLITE_DBSTATUS_STMT_USED = 3 260 SQLITE_DELETE = 9 261 SQLITE_DENY = 1 262 SQLITE_DEPRECATED = 0 263 SQLITE_DESERIALIZE_FREEONCLOSE = 1 264 SQLITE_DESERIALIZE_READONLY = 4 265 SQLITE_DESERIALIZE_RESIZEABLE = 2 266 SQLITE_DETACH = 25 267 SQLITE_DETERMINISTIC = 0x000000800 268 SQLITE_DIRECTONLY = 0x000080000 269 SQLITE_DONE = 101 270 SQLITE_DROP_INDEX = 10 271 SQLITE_DROP_TABLE = 11 272 SQLITE_DROP_TEMP_INDEX = 12 273 SQLITE_DROP_TEMP_TABLE = 13 274 SQLITE_DROP_TEMP_TRIGGER = 14 275 SQLITE_DROP_TEMP_VIEW = 15 276 SQLITE_DROP_TRIGGER = 16 277 SQLITE_DROP_VIEW = 17 278 SQLITE_DROP_VTABLE = 30 279 SQLITE_EMPTY = 16 280 SQLITE_ENABLE_COLUMN_METADATA = 1 281 SQLITE_ENABLE_FTS5 = 1 282 SQLITE_ENABLE_GEOPOLY = 1 283 SQLITE_ENABLE_MATH_FUNCTIONS = 1 284 SQLITE_ENABLE_MEMORY_MANAGEMENT = 1 285 SQLITE_ENABLE_OFFSET_SQL_FUNC = 1 286 SQLITE_ENABLE_PREUPDATE_HOOK = 1 287 SQLITE_ENABLE_RBU = 1 288 SQLITE_ENABLE_RTREE = 1 289 SQLITE_ENABLE_SESSION = 1 290 SQLITE_ENABLE_SNAPSHOT = 1 291 SQLITE_ENABLE_STAT4 = 1 292 SQLITE_ENABLE_UNLOCK_NOTIFY = 1 293 SQLITE_ERROR = 1 294 SQLITE_ERROR_MISSING_COLLSEQ = 257 295 SQLITE_ERROR_RETRY = 513 296 SQLITE_ERROR_SNAPSHOT = 769 297 SQLITE_EXPERIMENTAL = 0 298 SQLITE_FAIL = 3 299 SQLITE_FCNTL_BEGIN_ATOMIC_WRITE = 31 300 SQLITE_FCNTL_BUSYHANDLER = 15 301 SQLITE_FCNTL_CHUNK_SIZE = 6 302 SQLITE_FCNTL_CKPT_DONE = 37 303 SQLITE_FCNTL_CKPT_START = 39 304 SQLITE_FCNTL_CKSM_FILE = 41 305 SQLITE_FCNTL_COMMIT_ATOMIC_WRITE = 32 306 SQLITE_FCNTL_COMMIT_PHASETWO = 22 307 SQLITE_FCNTL_DATA_VERSION = 35 308 SQLITE_FCNTL_EXTERNAL_READER = 40 309 SQLITE_FCNTL_FILE_POINTER = 7 310 SQLITE_FCNTL_GET_LOCKPROXYFILE = 2 311 SQLITE_FCNTL_HAS_MOVED = 20 312 SQLITE_FCNTL_JOURNAL_POINTER = 28 313 SQLITE_FCNTL_LAST_ERRNO = 4 314 SQLITE_FCNTL_LOCKSTATE = 1 315 SQLITE_FCNTL_LOCK_TIMEOUT = 34 316 SQLITE_FCNTL_MMAP_SIZE = 18 317 SQLITE_FCNTL_OVERWRITE = 11 318 SQLITE_FCNTL_PDB = 30 319 SQLITE_FCNTL_PERSIST_WAL = 10 320 SQLITE_FCNTL_POWERSAFE_OVERWRITE = 13 321 SQLITE_FCNTL_PRAGMA = 14 322 SQLITE_FCNTL_RBU = 26 323 SQLITE_FCNTL_RESERVE_BYTES = 38 324 SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE = 33 325 SQLITE_FCNTL_SET_LOCKPROXYFILE = 3 326 SQLITE_FCNTL_SIZE_HINT = 5 327 SQLITE_FCNTL_SIZE_LIMIT = 36 328 SQLITE_FCNTL_SYNC = 21 329 SQLITE_FCNTL_SYNC_OMITTED = 8 330 SQLITE_FCNTL_TEMPFILENAME = 16 331 SQLITE_FCNTL_TRACE = 19 332 SQLITE_FCNTL_VFSNAME = 12 333 SQLITE_FCNTL_VFS_POINTER = 27 334 SQLITE_FCNTL_WAL_BLOCK = 24 335 SQLITE_FCNTL_WIN32_AV_RETRY = 9 336 SQLITE_FCNTL_WIN32_GET_HANDLE = 29 337 SQLITE_FCNTL_WIN32_SET_HANDLE = 23 338 SQLITE_FCNTL_ZIPVFS = 25 339 SQLITE_FLOAT = 2 340 SQLITE_FORMAT = 24 341 SQLITE_FULL = 13 342 SQLITE_FUNCTION = 31 343 SQLITE_GET_LOCKPROXYFILE = 2 344 SQLITE_IGNORE = 2 345 SQLITE_INDEX_CONSTRAINT_EQ = 2 346 SQLITE_INDEX_CONSTRAINT_FUNCTION = 150 347 SQLITE_INDEX_CONSTRAINT_GE = 32 348 SQLITE_INDEX_CONSTRAINT_GLOB = 66 349 SQLITE_INDEX_CONSTRAINT_GT = 4 350 SQLITE_INDEX_CONSTRAINT_IS = 72 351 SQLITE_INDEX_CONSTRAINT_ISNOT = 69 352 SQLITE_INDEX_CONSTRAINT_ISNOTNULL = 70 353 SQLITE_INDEX_CONSTRAINT_ISNULL = 71 354 SQLITE_INDEX_CONSTRAINT_LE = 8 355 SQLITE_INDEX_CONSTRAINT_LIKE = 65 356 SQLITE_INDEX_CONSTRAINT_LIMIT = 73 357 SQLITE_INDEX_CONSTRAINT_LT = 16 358 SQLITE_INDEX_CONSTRAINT_MATCH = 64 359 SQLITE_INDEX_CONSTRAINT_NE = 68 360 SQLITE_INDEX_CONSTRAINT_OFFSET = 74 361 SQLITE_INDEX_CONSTRAINT_REGEXP = 67 362 SQLITE_INDEX_SCAN_UNIQUE = 1 363 SQLITE_INNOCUOUS = 0x000200000 364 SQLITE_INSERT = 18 365 SQLITE_INTEGER = 1 366 SQLITE_INTERNAL = 2 367 SQLITE_INTERRUPT = 9 368 SQLITE_IOCAP_ATOMIC = 0x00000001 369 SQLITE_IOCAP_ATOMIC16K = 0x00000040 370 SQLITE_IOCAP_ATOMIC1K = 0x00000004 371 SQLITE_IOCAP_ATOMIC2K = 0x00000008 372 SQLITE_IOCAP_ATOMIC32K = 0x00000080 373 SQLITE_IOCAP_ATOMIC4K = 0x00000010 374 SQLITE_IOCAP_ATOMIC512 = 0x00000002 375 SQLITE_IOCAP_ATOMIC64K = 0x00000100 376 SQLITE_IOCAP_ATOMIC8K = 0x00000020 377 SQLITE_IOCAP_BATCH_ATOMIC = 0x00004000 378 SQLITE_IOCAP_IMMUTABLE = 0x00002000 379 SQLITE_IOCAP_POWERSAFE_OVERWRITE = 0x00001000 380 SQLITE_IOCAP_SAFE_APPEND = 0x00000200 381 SQLITE_IOCAP_SEQUENTIAL = 0x00000400 382 SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN = 0x00000800 383 SQLITE_IOERR = 10 384 SQLITE_IOERR_ACCESS = 3338 385 SQLITE_IOERR_AUTH = 7178 386 SQLITE_IOERR_BEGIN_ATOMIC = 7434 387 SQLITE_IOERR_BLOCKED = 2826 388 SQLITE_IOERR_CHECKRESERVEDLOCK = 3594 389 SQLITE_IOERR_CLOSE = 4106 390 SQLITE_IOERR_COMMIT_ATOMIC = 7690 391 SQLITE_IOERR_CONVPATH = 6666 392 SQLITE_IOERR_CORRUPTFS = 8458 393 SQLITE_IOERR_DATA = 8202 394 SQLITE_IOERR_DELETE = 2570 395 SQLITE_IOERR_DELETE_NOENT = 5898 396 SQLITE_IOERR_DIR_CLOSE = 4362 397 SQLITE_IOERR_DIR_FSYNC = 1290 398 SQLITE_IOERR_FSTAT = 1802 399 SQLITE_IOERR_FSYNC = 1034 400 SQLITE_IOERR_GETTEMPPATH = 6410 401 SQLITE_IOERR_LOCK = 3850 402 SQLITE_IOERR_MMAP = 6154 403 SQLITE_IOERR_NOMEM = 3082 404 SQLITE_IOERR_RDLOCK = 2314 405 SQLITE_IOERR_READ = 266 406 SQLITE_IOERR_ROLLBACK_ATOMIC = 7946 407 SQLITE_IOERR_SEEK = 5642 408 SQLITE_IOERR_SHMLOCK = 5130 409 SQLITE_IOERR_SHMMAP = 5386 410 SQLITE_IOERR_SHMOPEN = 4618 411 SQLITE_IOERR_SHMSIZE = 4874 412 SQLITE_IOERR_SHORT_READ = 522 413 SQLITE_IOERR_TRUNCATE = 1546 414 SQLITE_IOERR_UNLOCK = 2058 415 SQLITE_IOERR_VNODE = 6922 416 SQLITE_IOERR_WRITE = 778 417 SQLITE_LAST_ERRNO = 4 418 SQLITE_LIKE_DOESNT_MATCH_BLOBS = 1 419 SQLITE_LIMIT_ATTACHED = 7 420 SQLITE_LIMIT_COLUMN = 2 421 SQLITE_LIMIT_COMPOUND_SELECT = 4 422 SQLITE_LIMIT_EXPR_DEPTH = 3 423 SQLITE_LIMIT_FUNCTION_ARG = 6 424 SQLITE_LIMIT_LENGTH = 0 425 SQLITE_LIMIT_LIKE_PATTERN_LENGTH = 8 426 SQLITE_LIMIT_SQL_LENGTH = 1 427 SQLITE_LIMIT_TRIGGER_DEPTH = 10 428 SQLITE_LIMIT_VARIABLE_NUMBER = 9 429 SQLITE_LIMIT_VDBE_OP = 5 430 SQLITE_LIMIT_WORKER_THREADS = 11 431 SQLITE_LOCKED = 6 432 SQLITE_LOCKED_SHAREDCACHE = 262 433 SQLITE_LOCKED_VTAB = 518 434 SQLITE_LOCK_EXCLUSIVE = 4 435 SQLITE_LOCK_NONE = 0 436 SQLITE_LOCK_PENDING = 3 437 SQLITE_LOCK_RESERVED = 2 438 SQLITE_LOCK_SHARED = 1 439 SQLITE_MISMATCH = 20 440 SQLITE_MISUSE = 21 441 SQLITE_MUTEX_APPDEF = 1 442 SQLITE_MUTEX_FAST = 0 443 SQLITE_MUTEX_NOOP = 1 444 SQLITE_MUTEX_RECURSIVE = 1 445 SQLITE_MUTEX_STATIC_APP1 = 8 446 SQLITE_MUTEX_STATIC_APP2 = 9 447 SQLITE_MUTEX_STATIC_APP3 = 10 448 SQLITE_MUTEX_STATIC_LRU = 6 449 SQLITE_MUTEX_STATIC_LRU2 = 7 450 SQLITE_MUTEX_STATIC_MAIN = 2 451 SQLITE_MUTEX_STATIC_MASTER = 2 452 SQLITE_MUTEX_STATIC_MEM = 3 453 SQLITE_MUTEX_STATIC_MEM2 = 4 454 SQLITE_MUTEX_STATIC_OPEN = 4 455 SQLITE_MUTEX_STATIC_PMEM = 7 456 SQLITE_MUTEX_STATIC_PRNG = 5 457 SQLITE_MUTEX_STATIC_VFS1 = 11 458 SQLITE_MUTEX_STATIC_VFS2 = 12 459 SQLITE_MUTEX_STATIC_VFS3 = 13 460 SQLITE_NOLFS = 22 461 SQLITE_NOMEM = 7 462 SQLITE_NOTADB = 26 463 SQLITE_NOTFOUND = 12 464 SQLITE_NOTICE = 27 465 SQLITE_NOTICE_RECOVER_ROLLBACK = 539 466 SQLITE_NOTICE_RECOVER_WAL = 283 467 SQLITE_NULL = 5 468 SQLITE_OK = 0 469 SQLITE_OK_LOAD_PERMANENTLY = 256 470 SQLITE_OK_SYMLINK = 512 471 SQLITE_OPEN_AUTOPROXY = 0x00000020 472 SQLITE_OPEN_CREATE = 0x00000004 473 SQLITE_OPEN_DELETEONCLOSE = 0x00000008 474 SQLITE_OPEN_EXCLUSIVE = 0x00000010 475 SQLITE_OPEN_EXRESCODE = 0x02000000 476 SQLITE_OPEN_FULLMUTEX = 0x00010000 477 SQLITE_OPEN_MAIN_DB = 0x00000100 478 SQLITE_OPEN_MAIN_JOURNAL = 0x00000800 479 SQLITE_OPEN_MASTER_JOURNAL = 0x00004000 480 SQLITE_OPEN_MEMORY = 0x00000080 481 SQLITE_OPEN_NOFOLLOW = 0x01000000 482 SQLITE_OPEN_NOMUTEX = 0x00008000 483 SQLITE_OPEN_PRIVATECACHE = 0x00040000 484 SQLITE_OPEN_READONLY = 0x00000001 485 SQLITE_OPEN_READWRITE = 0x00000002 486 SQLITE_OPEN_SHAREDCACHE = 0x00020000 487 SQLITE_OPEN_SUBJOURNAL = 0x00002000 488 SQLITE_OPEN_SUPER_JOURNAL = 0x00004000 489 SQLITE_OPEN_TEMP_DB = 0x00000200 490 SQLITE_OPEN_TEMP_JOURNAL = 0x00001000 491 SQLITE_OPEN_TRANSIENT_DB = 0x00000400 492 SQLITE_OPEN_URI = 0x00000040 493 SQLITE_OPEN_WAL = 0x00080000 494 SQLITE_OS_UNIX = 1 495 SQLITE_PERM = 3 496 SQLITE_PRAGMA = 19 497 SQLITE_PREPARE_NORMALIZE = 0x02 498 SQLITE_PREPARE_NO_VTAB = 0x04 499 SQLITE_PREPARE_PERSISTENT = 0x01 500 SQLITE_PROTOCOL = 15 501 SQLITE_RANGE = 25 502 SQLITE_READ = 20 503 SQLITE_READONLY = 8 504 SQLITE_READONLY_CANTINIT = 1288 505 SQLITE_READONLY_CANTLOCK = 520 506 SQLITE_READONLY_DBMOVED = 1032 507 SQLITE_READONLY_DIRECTORY = 1544 508 SQLITE_READONLY_RECOVERY = 264 509 SQLITE_READONLY_ROLLBACK = 776 510 SQLITE_RECURSIVE = 33 511 SQLITE_REINDEX = 27 512 SQLITE_REPLACE = 5 513 SQLITE_ROLLBACK = 1 514 SQLITE_ROW = 100 515 SQLITE_SAVEPOINT = 32 516 SQLITE_SCANSTAT_EST = 2 517 SQLITE_SCANSTAT_EXPLAIN = 4 518 SQLITE_SCANSTAT_NAME = 3 519 SQLITE_SCANSTAT_NLOOP = 0 520 SQLITE_SCANSTAT_NVISIT = 1 521 SQLITE_SCANSTAT_SELECTID = 5 522 SQLITE_SCHEMA = 17 523 SQLITE_SELECT = 21 524 SQLITE_SERIALIZE_NOCOPY = 0x001 525 SQLITE_SESSION_CONFIG_STRMSIZE = 1 526 SQLITE_SESSION_OBJCONFIG_SIZE = 1 527 SQLITE_SET_LOCKPROXYFILE = 3 528 SQLITE_SHM_EXCLUSIVE = 8 529 SQLITE_SHM_LOCK = 2 530 SQLITE_SHM_NLOCK = 8 531 SQLITE_SHM_SHARED = 4 532 SQLITE_SHM_UNLOCK = 1 533 SQLITE_SOUNDEX = 1 534 SQLITE_SOURCE_ID = "2022-09-05 11:02:23 4635f4a69c8c2a8df242b384a992aea71224e39a2ccab42d8c0b0602f1e826e8" 535 SQLITE_STATUS_MALLOC_COUNT = 9 536 SQLITE_STATUS_MALLOC_SIZE = 5 537 SQLITE_STATUS_MEMORY_USED = 0 538 SQLITE_STATUS_PAGECACHE_OVERFLOW = 2 539 SQLITE_STATUS_PAGECACHE_SIZE = 7 540 SQLITE_STATUS_PAGECACHE_USED = 1 541 SQLITE_STATUS_PARSER_STACK = 6 542 SQLITE_STATUS_SCRATCH_OVERFLOW = 4 543 SQLITE_STATUS_SCRATCH_SIZE = 8 544 SQLITE_STATUS_SCRATCH_USED = 3 545 SQLITE_STDCALL = 0 546 SQLITE_STMTSTATUS_AUTOINDEX = 3 547 SQLITE_STMTSTATUS_FILTER_HIT = 8 548 SQLITE_STMTSTATUS_FILTER_MISS = 7 549 SQLITE_STMTSTATUS_FULLSCAN_STEP = 1 550 SQLITE_STMTSTATUS_MEMUSED = 99 551 SQLITE_STMTSTATUS_REPREPARE = 5 552 SQLITE_STMTSTATUS_RUN = 6 553 SQLITE_STMTSTATUS_SORT = 2 554 SQLITE_STMTSTATUS_VM_STEP = 4 555 SQLITE_SUBTYPE = 0x000100000 556 SQLITE_SYNC_DATAONLY = 0x00010 557 SQLITE_SYNC_FULL = 0x00003 558 SQLITE_SYNC_NORMAL = 0x00002 559 SQLITE_SYSAPI = 0 560 SQLITE_TESTCTRL_ALWAYS = 13 561 SQLITE_TESTCTRL_ASSERT = 12 562 SQLITE_TESTCTRL_BENIGN_MALLOC_HOOKS = 10 563 SQLITE_TESTCTRL_BITVEC_TEST = 8 564 SQLITE_TESTCTRL_BYTEORDER = 22 565 SQLITE_TESTCTRL_EXPLAIN_STMT = 19 566 SQLITE_TESTCTRL_EXTRA_SCHEMA_CHECKS = 29 567 SQLITE_TESTCTRL_FAULT_INSTALL = 9 568 SQLITE_TESTCTRL_FIRST = 5 569 SQLITE_TESTCTRL_IMPOSTER = 25 570 SQLITE_TESTCTRL_INTERNAL_FUNCTIONS = 17 571 SQLITE_TESTCTRL_ISINIT = 23 572 SQLITE_TESTCTRL_ISKEYWORD = 16 573 SQLITE_TESTCTRL_LAST = 33 574 SQLITE_TESTCTRL_LOCALTIME_FAULT = 18 575 SQLITE_TESTCTRL_LOGEST = 33 576 SQLITE_TESTCTRL_NEVER_CORRUPT = 20 577 SQLITE_TESTCTRL_ONCE_RESET_THRESHOLD = 19 578 SQLITE_TESTCTRL_OPTIMIZATIONS = 15 579 SQLITE_TESTCTRL_PARSER_COVERAGE = 26 580 SQLITE_TESTCTRL_PENDING_BYTE = 11 581 SQLITE_TESTCTRL_PRNG_RESET = 7 582 SQLITE_TESTCTRL_PRNG_RESTORE = 6 583 SQLITE_TESTCTRL_PRNG_SAVE = 5 584 SQLITE_TESTCTRL_PRNG_SEED = 28 585 SQLITE_TESTCTRL_RESERVE = 14 586 SQLITE_TESTCTRL_RESULT_INTREAL = 27 587 SQLITE_TESTCTRL_SCRATCHMALLOC = 17 588 SQLITE_TESTCTRL_SEEK_COUNT = 30 589 SQLITE_TESTCTRL_SORTER_MMAP = 24 590 SQLITE_TESTCTRL_TRACEFLAGS = 31 591 SQLITE_TESTCTRL_TUNE = 32 592 SQLITE_TESTCTRL_VDBE_COVERAGE = 21 593 SQLITE_TEXT = 3 594 SQLITE_THREADSAFE = 1 595 SQLITE_TOOBIG = 18 596 SQLITE_TRACE_CLOSE = 0x08 597 SQLITE_TRACE_PROFILE = 0x02 598 SQLITE_TRACE_ROW = 0x04 599 SQLITE_TRACE_STMT = 0x01 600 SQLITE_TRANSACTION = 22 601 SQLITE_TXN_NONE = 0 602 SQLITE_TXN_READ = 1 603 SQLITE_TXN_WRITE = 2 604 SQLITE_UPDATE = 23 605 SQLITE_UTF16 = 4 606 SQLITE_UTF16BE = 3 607 SQLITE_UTF16LE = 2 608 SQLITE_UTF16_ALIGNED = 8 609 SQLITE_UTF8 = 1 610 SQLITE_VERSION = "3.39.3" 611 SQLITE_VERSION_NUMBER = 3039003 612 SQLITE_VTAB_CONSTRAINT_SUPPORT = 1 613 SQLITE_VTAB_DIRECTONLY = 3 614 SQLITE_VTAB_INNOCUOUS = 2 615 SQLITE_WARNING = 28 616 SQLITE_WARNING_AUTOINDEX = 284 617 SQLITE_WIN32_DATA_DIRECTORY_TYPE = 1 618 SQLITE_WIN32_TEMP_DIRECTORY_TYPE = 2 619 STDERR_FILENO = 2 620 STDIN_FILENO = 0 621 STDOUT_FILENO = 1 622 TMP_MAX = 308915776 623 UINT16_MAX = 65535 624 UINT32_MAX = 4294967295 625 UINT64_MAX = 18446744073709551615 626 UINT8_MAX = 255 627 UINTMAX_MAX = 18446744073709551615 628 UINTPTR_MAX = 18446744073709551615 629 UINT_FAST16_MAX = 4294967295 630 UINT_FAST32_MAX = 4294967295 631 UINT_FAST64_MAX = 18446744073709551615 632 UINT_FAST8_MAX = 4294967295 633 UINT_LEAST16_MAX = 65535 634 UINT_LEAST32_MAX = 4294967295 635 UINT_LEAST64_MAX = 18446744073709551615 636 UINT_LEAST8_MAX = 255 637 WCHAR_MAX = 0x7fffffff 638 WCHAR_MIN = -2147483648 639 WINT_MAX = 0x7fffffff 640 WINT_MIN = -2147483648 641 W_OK = 0x02 642 X_OK = 0x01 643 X_AMD64_BYTE_SWAP_H_ = 0 644 X_AMD64_INT_CONST_H_ = 0 645 X_AMD64_INT_LIMITS_H_ = 0 646 X_AMD64_INT_MWGWTYPES_H_ = 0 647 X_AMD64_INT_TYPES_H_ = 0 648 X_AMD64_WCHAR_LIMITS_H_ = 0 649 X_BIG_ENDIAN = 4321 650 X_BSD_INT16_T_ = 0 651 X_BSD_INT32_T_ = 0 652 X_BSD_INT64_T_ = 0 653 X_BSD_INT8_T_ = 0 654 X_BSD_INTPTR_T_ = 0 655 X_BSD_UINT16_T_ = 0 656 X_BSD_UINT32_T_ = 0 657 X_BSD_UINT64_T_ = 0 658 X_BSD_UINT8_T_ = 0 659 X_BSD_UINTPTR_T_ = 0 660 X_BYTE_ORDER = 1234 661 X_CS_PATH = 1 662 X_CTYPE_A = 0x0001 663 X_CTYPE_BL = 0x0200 664 X_CTYPE_C = 0x0002 665 X_CTYPE_D = 0x0004 666 X_CTYPE_G = 0x0008 667 X_CTYPE_H_ = 0 668 X_CTYPE_I = 0x0800 669 X_CTYPE_INLINE_H_ = 0 670 X_CTYPE_L = 0x0010 671 X_CTYPE_P = 0x0020 672 X_CTYPE_Q = 0x2000 673 X_CTYPE_R = 0x0400 674 X_CTYPE_S = 0x0040 675 X_CTYPE_T = 0x1000 676 X_CTYPE_U = 0x0080 677 X_CTYPE_X = 0x0100 678 X_FILE_OFFSET_BITS = 64 679 X_FSTDIO = 0 680 X_FTS5_H = 0 681 X_IOFBF = 0 682 X_IOLBF = 1 683 X_IONBF = 2 684 X_LIB_PTHREAD_TYPES_H = 0 685 X_LITTLE_ENDIAN = 1234 686 X_LP64 = 1 687 X_NETBSD_SOURCE = 1 688 X_O_SC_CLK_TCK = 3 689 X_PC_2_SYMLINKS = 13 690 X_PC_ACL_EXTENDED = 14 691 X_PC_CHOWN_RESTRICTED = 7 692 X_PC_FILESIZEBITS = 11 693 X_PC_LINK_MAX = 1 694 X_PC_MAX_CANON = 2 695 X_PC_MAX_INPUT = 3 696 X_PC_MIN_HOLE_SIZE = 15 697 X_PC_NAME_MAX = 4 698 X_PC_NO_TRUNC = 8 699 X_PC_PATH_MAX = 5 700 X_PC_PIPE_BUF = 6 701 X_PC_SYMLINK_MAX = 12 702 X_PC_SYNC_IO = 10 703 X_PC_VDISABLE = 9 704 X_PDP_ENDIAN = 3412 705 X_POSIX2_C_BIND = 200112 706 X_POSIX2_VERSION = 200112 707 X_POSIX_ASYNCHRONOUS_IO = 200112 708 X_POSIX_BARRIERS = 200112 709 X_POSIX_CHOWN_RESTRICTED = 1 710 X_POSIX_CLOCK_SELECTION = -1 711 X_POSIX_CPUTIME = 200112 712 X_POSIX_FSYNC = 1 713 X_POSIX_IPV6 = 0 714 X_POSIX_JOB_CONTROL = 1 715 X_POSIX_MAPPED_FILES = 1 716 X_POSIX_MEMLOCK = 1 717 X_POSIX_MEMLOCK_RANGE = 1 718 X_POSIX_MEMORY_PROTECTION = 1 719 X_POSIX_MESSAGE_PASSING = 200112 720 X_POSIX_MONOTONIC_CLOCK = 200112 721 X_POSIX_NO_TRUNC = 1 722 X_POSIX_PRIORITIZED_IO = -1 723 X_POSIX_PRIORITY_SCHEDULING = 200112 724 X_POSIX_RAW_SOCKETS = 200112 725 X_POSIX_READER_WRITER_LOCKS = 200112 726 X_POSIX_REGEXP = 1 727 X_POSIX_SEMAPHORES = 0 728 X_POSIX_SHARED_MEMORY_OBJECTS = 0 729 X_POSIX_SHELL = 1 730 X_POSIX_SPAWN = 200809 731 X_POSIX_SPIN_LOCKS = 200112 732 X_POSIX_SYNCHRONIZED_IO = 1 733 X_POSIX_THREADS = 200112 734 X_POSIX_THREAD_ATTR_STACKADDR = 200112 735 X_POSIX_THREAD_ATTR_STACKSIZE = 200112 736 X_POSIX_THREAD_CPUTIME = 200112 737 X_POSIX_THREAD_PRIO_PROTECT = 200112 738 X_POSIX_THREAD_SAFE_FUNCTIONS = 200112 739 X_POSIX_TIMERS = 200112 740 X_POSIX_VERSION = 200112 741 X_PT_BARRIERATTR_DEAD = 0xDEAD0808 742 X_PT_BARRIERATTR_MAGIC = 0x88880808 743 X_PT_BARRIER_DEAD = 0xDEAD0008 744 X_PT_BARRIER_MAGIC = 0x88880008 745 X_PT_CONDATTR_DEAD = 0xDEAD0006 746 X_PT_CONDATTR_MAGIC = 0x66660006 747 X_PT_COND_DEAD = 0xDEAD0005 748 X_PT_COND_MAGIC = 0x55550005 749 X_PT_MUTEXATTR_DEAD = 0xDEAD0004 750 X_PT_MUTEXATTR_MAGIC = 0x44440004 751 X_PT_MUTEX_DEAD = 0xDEAD0003 752 X_PT_MUTEX_MAGIC = 0x33330003 753 X_PT_RWLOCKATTR_DEAD = 0xDEAD0909 754 X_PT_RWLOCKATTR_MAGIC = 0x99990909 755 X_PT_RWLOCK_DEAD = 0xDEAD0009 756 X_PT_RWLOCK_MAGIC = 0x99990009 757 X_PT_SPINLOCK_DEAD = 0xDEAD0007 758 X_PT_SPINLOCK_MAGIC = 0x77770007 759 X_PT_SPINLOCK_PSHARED = 0x00000001 760 X_QUAD_HIGHWORD = 1 761 X_QUAD_LOWWORD = 0 762 X_SC_2_CHAR_TERM = 20 763 X_SC_2_C_BIND = 18 764 X_SC_2_C_DEV = 19 765 X_SC_2_FORT_DEV = 21 766 X_SC_2_FORT_RUN = 22 767 X_SC_2_LOCALEDEF = 23 768 X_SC_2_PBS = 80 769 X_SC_2_PBS_ACCOUNTING = 81 770 X_SC_2_PBS_CHECKPOINT = 82 771 X_SC_2_PBS_LOCATE = 83 772 X_SC_2_PBS_MESSAGE = 84 773 X_SC_2_PBS_TRACK = 85 774 X_SC_2_SW_DEV = 24 775 X_SC_2_UPE = 25 776 X_SC_2_VERSION = 17 777 X_SC_AIO_LISTIO_MAX = 51 778 X_SC_AIO_MAX = 52 779 X_SC_ARG_MAX = 1 780 X_SC_ASYNCHRONOUS_IO = 50 781 X_SC_ATEXIT_MAX = 40 782 X_SC_BARRIERS = 43 783 X_SC_BC_BASE_MAX = 9 784 X_SC_BC_DIM_MAX = 10 785 X_SC_BC_SCALE_MAX = 11 786 X_SC_BC_STRING_MAX = 12 787 X_SC_CHILD_MAX = 2 788 X_SC_CLK_TCK = 39 789 X_SC_CLOCK_SELECTION = 49 790 X_SC_COLL_WEIGHTS_MAX = 13 791 X_SC_CPUTIME = 90 792 X_SC_DELAYTIMER_MAX = 92 793 X_SC_EXPR_NEST_MAX = 14 794 X_SC_FSYNC = 29 795 X_SC_GETGR_R_SIZE_MAX = 47 796 X_SC_GETPW_R_SIZE_MAX = 48 797 X_SC_HOST_NAME_MAX = 69 798 X_SC_IOV_MAX = 32 799 X_SC_JOB_CONTROL = 6 800 X_SC_LINE_MAX = 15 801 X_SC_LOGIN_NAME_MAX = 37 802 X_SC_MAPPED_FILES = 33 803 X_SC_MEMLOCK = 34 804 X_SC_MEMLOCK_RANGE = 35 805 X_SC_MEMORY_PROTECTION = 36 806 X_SC_MESSAGE_PASSING = 53 807 X_SC_MONOTONIC_CLOCK = 38 808 X_SC_MQ_OPEN_MAX = 54 809 X_SC_MQ_PRIO_MAX = 55 810 X_SC_NGROUPS_MAX = 4 811 X_SC_NPROCESSORS_CONF = 1001 812 X_SC_NPROCESSORS_ONLN = 1002 813 X_SC_OPEN_MAX = 5 814 X_SC_PAGESIZE = 28 815 X_SC_PAGE_SIZE = 28 816 X_SC_PASS_MAX = 70 817 X_SC_PHYS_PAGES = 121 818 X_SC_PRIORITY_SCHEDULING = 56 819 X_SC_READER_WRITER_LOCKS = 46 820 X_SC_REALTIME_SIGNALS = 94 821 X_SC_REGEXP = 71 822 X_SC_RE_DUP_MAX = 16 823 X_SC_SAVED_IDS = 7 824 X_SC_SCHED_PRI_MAX = 2003 825 X_SC_SCHED_PRI_MIN = 2002 826 X_SC_SCHED_RT_TS = 2001 827 X_SC_SEMAPHORES = 42 828 X_SC_SEM_NSEMS_MAX = 89 829 X_SC_SHARED_MEMORY_OBJECTS = 87 830 X_SC_SHELL = 72 831 X_SC_SIGQUEUE_MAX = 93 832 X_SC_SPAWN = 86 833 X_SC_SPIN_LOCKS = 45 834 X_SC_STREAM_MAX = 26 835 X_SC_SYMLOOP_MAX = 73 836 X_SC_SYNCHRONIZED_IO = 31 837 X_SC_THREADS = 41 838 X_SC_THREAD_ATTR_STACKADDR = 61 839 X_SC_THREAD_ATTR_STACKSIZE = 62 840 X_SC_THREAD_CPUTIME = 91 841 X_SC_THREAD_DESTRUCTOR_ITERATIONS = 57 842 X_SC_THREAD_KEYS_MAX = 58 843 X_SC_THREAD_PRIORITY_SCHEDULING = 63 844 X_SC_THREAD_PRIO_INHERIT = 64 845 X_SC_THREAD_PRIO_PROTECT = 65 846 X_SC_THREAD_PROCESS_SHARED = 66 847 X_SC_THREAD_SAFE_FUNCTIONS = 67 848 X_SC_THREAD_STACK_MIN = 59 849 X_SC_THREAD_THREADS_MAX = 60 850 X_SC_TIMERS = 44 851 X_SC_TIMER_MAX = 88 852 X_SC_TTY_NAME_MAX = 68 853 X_SC_TZNAME_MAX = 27 854 X_SC_V6_ILP32_OFF32 = 74 855 X_SC_V6_ILP32_OFFBIG = 75 856 X_SC_V6_LP64_OFF64 = 76 857 X_SC_V6_LPBIG_OFFBIG = 77 858 X_SC_VERSION = 8 859 X_SC_XOPEN_SHM = 30 860 X_SQLITE3RTREE_H_ = 0 861 X_STDIO_H_ = 0 862 X_STDLIB_H_ = 0 863 X_STRINGS_H_ = 0 864 X_STRING_H_ = 0 865 X_SYS_ANSI_H_ = 0 866 X_SYS_BSWAP_H_ = 0 867 X_SYS_CDEFS_ELF_H_ = 0 868 X_SYS_CDEFS_H_ = 0 869 X_SYS_COMMON_ANSI_H_ = 0 870 X_SYS_COMMON_INT_LIMITS_H_ = 0 871 X_SYS_COMMON_INT_MWGWTYPES_H_ = 0 872 X_SYS_COMMON_INT_TYPES_H_ = 0 873 X_SYS_CTYPE_BITS_H_ = 0 874 X_SYS_ENDIAN_H_ = 0 875 X_SYS_FD_SET_H_ = 0 876 X_SYS_NULL_H_ = 0 877 X_SYS_STDARG_H_ = 0 878 X_SYS_STDINT_H_ = 0 879 X_SYS_TYPES_H_ = 0 880 X_SYS_UNISTD_H_ = 0 881 X_UNISTD_H_ = 0 882 X_X86_64_BSWAP_H_ = 0 883 X_X86_64_CDEFS_H_ = 0 884 X_X86_64_TYPES_H_ = 0 885 X_XOPEN_SHM = 0 886 ) 887 888 type ptrdiff_t = int64 889 890 type size_t = uint64 891 892 type wchar_t = int32 893 894 var zHelp = *(*[2263]int8)(unsafe.Pointer(ts)) 895 896 type va_list = uintptr 897 898 type sqlite_int64 = int64 899 type sqlite_uint64 = uint64 900 type sqlite3_int64 = sqlite_int64 901 type sqlite3_uint64 = sqlite_uint64 902 903 type sqlite3_callback = uintptr 904 905 type sqlite3_file1 = struct{ pMethods uintptr } 906 907 type sqlite3_file = sqlite3_file1 908 type sqlite3_io_methods1 = struct { 909 iVersion int32 910 _ [4]byte 911 xClose uintptr 912 xRead uintptr 913 xWrite uintptr 914 xTruncate uintptr 915 xSync uintptr 916 xFileSize uintptr 917 xLock uintptr 918 xUnlock uintptr 919 xCheckReservedLock uintptr 920 xFileControl uintptr 921 xSectorSize uintptr 922 xDeviceCharacteristics uintptr 923 xShmMap uintptr 924 xShmLock uintptr 925 xShmBarrier uintptr 926 xShmUnmap uintptr 927 xFetch uintptr 928 xUnfetch uintptr 929 } 930 931 type sqlite3_io_methods = sqlite3_io_methods1 932 933 type sqlite3_vfs1 = struct { 934 iVersion int32 935 szOsFile int32 936 mxPathname int32 937 _ [4]byte 938 pNext uintptr 939 zName uintptr 940 pAppData uintptr 941 xOpen uintptr 942 xDelete uintptr 943 xAccess uintptr 944 xFullPathname uintptr 945 xDlOpen uintptr 946 xDlError uintptr 947 xDlSym uintptr 948 xDlClose uintptr 949 xRandomness uintptr 950 xSleep uintptr 951 xCurrentTime uintptr 952 xGetLastError uintptr 953 xCurrentTimeInt64 uintptr 954 xSetSystemCall uintptr 955 xGetSystemCall uintptr 956 xNextSystemCall uintptr 957 } 958 959 type sqlite3_vfs = sqlite3_vfs1 960 type sqlite3_syscall_ptr = uintptr 961 962 type sqlite3_mem_methods1 = struct { 963 xMalloc uintptr 964 xFree uintptr 965 xRealloc uintptr 966 xSize uintptr 967 xRoundup uintptr 968 xInit uintptr 969 xShutdown uintptr 970 pAppData uintptr 971 } 972 973 type sqlite3_mem_methods = sqlite3_mem_methods1 974 975 type sqlite3_destructor_type = uintptr 976 977 type sqlite3_vtab1 = struct { 978 pModule uintptr 979 nRef int32 980 _ [4]byte 981 zErrMsg uintptr 982 } 983 984 type sqlite3_vtab = sqlite3_vtab1 985 type sqlite3_index_info1 = struct { 986 nConstraint int32 987 _ [4]byte 988 aConstraint uintptr 989 nOrderBy int32 990 _ [4]byte 991 aOrderBy uintptr 992 aConstraintUsage uintptr 993 idxNum int32 994 _ [4]byte 995 idxStr uintptr 996 needToFreeIdxStr int32 997 orderByConsumed int32 998 estimatedCost float64 999 estimatedRows sqlite3_int64 1000 idxFlags int32 1001 _ [4]byte 1002 colUsed sqlite3_uint64 1003 } 1004 1005 type sqlite3_index_info = sqlite3_index_info1 1006 type sqlite3_vtab_cursor1 = struct{ pVtab uintptr } 1007 1008 type sqlite3_vtab_cursor = sqlite3_vtab_cursor1 1009 type sqlite3_module1 = struct { 1010 iVersion int32 1011 _ [4]byte 1012 xCreate uintptr 1013 xConnect uintptr 1014 xBestIndex uintptr 1015 xDisconnect uintptr 1016 xDestroy uintptr 1017 xOpen uintptr 1018 xClose uintptr 1019 xFilter uintptr 1020 xNext uintptr 1021 xEof uintptr 1022 xColumn uintptr 1023 xRowid uintptr 1024 xUpdate uintptr 1025 xBegin uintptr 1026 xSync uintptr 1027 xCommit uintptr 1028 xRollback uintptr 1029 xFindFunction uintptr 1030 xRename uintptr 1031 xSavepoint uintptr 1032 xRelease uintptr 1033 xRollbackTo uintptr 1034 xShadowName uintptr 1035 } 1036 1037 type sqlite3_module = sqlite3_module1 1038 1039 type sqlite3_index_constraint = struct { 1040 iColumn int32 1041 op uint8 1042 usable uint8 1043 _ [2]byte 1044 iTermOffset int32 1045 } 1046 1047 type sqlite3_index_orderby = struct { 1048 iColumn int32 1049 desc uint8 1050 _ [3]byte 1051 } 1052 1053 type sqlite3_index_constraint_usage = struct { 1054 argvIndex int32 1055 omit uint8 1056 _ [3]byte 1057 } 1058 1059 type sqlite3_mutex_methods1 = struct { 1060 xMutexInit uintptr 1061 xMutexEnd uintptr 1062 xMutexAlloc uintptr 1063 xMutexFree uintptr 1064 xMutexEnter uintptr 1065 xMutexTry uintptr 1066 xMutexLeave uintptr 1067 xMutexHeld uintptr 1068 xMutexNotheld uintptr 1069 } 1070 1071 type sqlite3_mutex_methods = sqlite3_mutex_methods1 1072 1073 type sqlite3_pcache_page1 = struct { 1074 pBuf uintptr 1075 pExtra uintptr 1076 } 1077 1078 type sqlite3_pcache_page = sqlite3_pcache_page1 1079 1080 type sqlite3_pcache_methods21 = struct { 1081 iVersion int32 1082 _ [4]byte 1083 pArg uintptr 1084 xInit uintptr 1085 xShutdown uintptr 1086 xCreate uintptr 1087 xCachesize uintptr 1088 xPagecount uintptr 1089 xFetch uintptr 1090 xUnpin uintptr 1091 xRekey uintptr 1092 xTruncate uintptr 1093 xDestroy uintptr 1094 xShrink uintptr 1095 } 1096 1097 type sqlite3_pcache_methods2 = sqlite3_pcache_methods21 1098 1099 type sqlite3_pcache_methods1 = struct { 1100 pArg uintptr 1101 xInit uintptr 1102 xShutdown uintptr 1103 xCreate uintptr 1104 xCachesize uintptr 1105 xPagecount uintptr 1106 xFetch uintptr 1107 xUnpin uintptr 1108 xRekey uintptr 1109 xTruncate uintptr 1110 xDestroy uintptr 1111 } 1112 1113 type sqlite3_pcache_methods = sqlite3_pcache_methods1 1114 1115 type sqlite3_snapshot1 = struct{ hidden [48]uint8 } 1116 1117 type sqlite3_snapshot = sqlite3_snapshot1 1118 1119 type sqlite3_rtree_geometry1 = struct { 1120 pContext uintptr 1121 nParam int32 1122 _ [4]byte 1123 aParam uintptr 1124 pUser uintptr 1125 xDelUser uintptr 1126 } 1127 1128 type sqlite3_rtree_geometry = sqlite3_rtree_geometry1 1129 type sqlite3_rtree_query_info1 = struct { 1130 pContext uintptr 1131 nParam int32 1132 _ [4]byte 1133 aParam uintptr 1134 pUser uintptr 1135 xDelUser uintptr 1136 aCoord uintptr 1137 anQueue uintptr 1138 nCoord int32 1139 iLevel int32 1140 mxLevel int32 1141 _ [4]byte 1142 iRowid sqlite3_int64 1143 rParentScore sqlite3_rtree_dbl 1144 eParentWithin int32 1145 eWithin int32 1146 rScore sqlite3_rtree_dbl 1147 apSqlParam uintptr 1148 } 1149 1150 type sqlite3_rtree_query_info = sqlite3_rtree_query_info1 1151 1152 type sqlite3_rtree_dbl = float64 1153 1154 type Fts5ExtensionApi1 = struct { 1155 iVersion int32 1156 _ [4]byte 1157 xUserData uintptr 1158 xColumnCount uintptr 1159 xRowCount uintptr 1160 xColumnTotalSize uintptr 1161 xTokenize uintptr 1162 xPhraseCount uintptr 1163 xPhraseSize uintptr 1164 xInstCount uintptr 1165 xInst uintptr 1166 xRowid uintptr 1167 xColumnText uintptr 1168 xColumnSize uintptr 1169 xQueryPhrase uintptr 1170 xSetAuxdata uintptr 1171 xGetAuxdata uintptr 1172 xPhraseFirst uintptr 1173 xPhraseNext uintptr 1174 xPhraseFirstColumn uintptr 1175 xPhraseNextColumn uintptr 1176 } 1177 1178 type Fts5ExtensionApi = Fts5ExtensionApi1 1179 type Fts5PhraseIter1 = struct { 1180 a uintptr 1181 b uintptr 1182 } 1183 1184 type Fts5PhraseIter = Fts5PhraseIter1 1185 1186 type fts5_extension_function = uintptr 1187 type fts5_tokenizer1 = struct { 1188 xCreate uintptr 1189 xDelete uintptr 1190 xTokenize uintptr 1191 } 1192 1193 type fts5_tokenizer = fts5_tokenizer1 1194 1195 type fts5_api1 = struct { 1196 iVersion int32 1197 _ [4]byte 1198 xCreateTokenizer uintptr 1199 xFindTokenizer uintptr 1200 xCreateFunction uintptr 1201 } 1202 1203 type fts5_api = fts5_api1 1204 type ssize_t = int64 1205 1206 type __sfpos = struct { 1207 _pos int64 1208 _mbstate_in struct { 1209 __mbstateL int64 1210 _ [120]byte 1211 } 1212 _mbstate_out struct { 1213 __mbstateL int64 1214 _ [120]byte 1215 } 1216 } 1217 1218 type fpos_t = __sfpos 1219 1220 type __sbuf = struct { 1221 _base uintptr 1222 _size int32 1223 _ [4]byte 1224 } 1225 1226 type __sFILE = struct { 1227 _p uintptr 1228 _r int32 1229 _w int32 1230 _flags uint16 1231 _file int16 1232 _ [4]byte 1233 _bf struct { 1234 _base uintptr 1235 _size int32 1236 _ [4]byte 1237 } 1238 _lbfsize int32 1239 _ [4]byte 1240 _cookie uintptr 1241 _close uintptr 1242 _read uintptr 1243 _seek uintptr 1244 _write uintptr 1245 _ext struct { 1246 _base uintptr 1247 _size int32 1248 _ [4]byte 1249 } 1250 _up uintptr 1251 _ur int32 1252 _ubuf [3]uint8 1253 _nbuf [1]uint8 1254 _flush uintptr 1255 _lb_unused [8]int8 1256 _blksize int32 1257 _ [4]byte 1258 _offset int64 1259 } 1260 1261 type FILE = __sFILE 1262 1263 type off_t = int64 1264 1265 type locale_t = uintptr 1266 1267 type int8_t = int8 1268 1269 type uint8_t = uint8 1270 1271 type int16_t = int16 1272 1273 type uint16_t = uint16 1274 1275 type int32_t = int32 1276 1277 type uint32_t = uint32 1278 1279 type int64_t = int64 1280 1281 type uint64_t = uint64 1282 1283 type u_int8_t = uint8_t 1284 type u_int16_t = uint16_t 1285 type u_int32_t = uint32_t 1286 type u_int64_t = uint64_t 1287 1288 type in_addr_t = uint32 1289 1290 type in_port_t = uint16 1291 1292 func __byte_swap_u64_variable(tls *libc.TLS, x uint64_t) uint64_t { 1293 panic(`/usr/include/machine/byte_swap.h:50:2: assembler statements not supported`) 1294 return x 1295 } 1296 1297 func __byte_swap_u32_variable(tls *libc.TLS, x uint32_t) uint32_t { 1298 panic(`/usr/include/machine/byte_swap.h:59:2: assembler statements not supported`) 1299 return x 1300 } 1301 1302 func __byte_swap_u16_variable(tls *libc.TLS, x uint16_t) uint16_t { 1303 panic(`/usr/include/machine/byte_swap.h:68:2: assembler statements not supported`) 1304 return x 1305 } 1306 1307 type intptr_t = int64 1308 1309 type uintptr_t = uint64 1310 1311 type int_least8_t = int8 1312 type uint_least8_t = uint8 1313 type int_least16_t = int16 1314 type uint_least16_t = uint16 1315 type int_least32_t = int32 1316 type uint_least32_t = uint32 1317 type int_least64_t = int64 1318 type uint_least64_t = uint64 1319 1320 type int_fast8_t = int32 1321 type uint_fast8_t = uint32 1322 type int_fast16_t = int32 1323 type uint_fast16_t = uint32 1324 type int_fast32_t = int32 1325 type uint_fast32_t = uint32 1326 type int_fast64_t = int64 1327 type uint_fast64_t = uint64 1328 1329 type intmax_t = int64 1330 type uintmax_t = uint64 1331 1332 type u_char = uint8 1333 type u_short = uint16 1334 type u_int = uint32 1335 type u_long = uint64 1336 1337 type unchar = uint8 1338 type ushort = uint16 1339 type uint = uint32 1340 type ulong = uint64 1341 1342 type u_quad_t = uint64_t 1343 type quad_t = int64_t 1344 type qaddr_t = uintptr 1345 1346 type longlong_t = int64_t 1347 type u_longlong_t = uint64_t 1348 1349 type blkcnt_t = int64_t 1350 type blksize_t = int32_t 1351 1352 type fsblkcnt_t = uint64 1353 1354 type fsfilcnt_t = uint64 1355 1356 type caddr_t = uintptr 1357 1358 type daddr_t = int64_t 1359 1360 type dev_t = uint64_t 1361 type fixpt_t = uint32_t 1362 1363 type gid_t = uint32 1364 1365 type id_t = uint32_t 1366 type ino_t = uint64_t 1367 type key_t = int64 1368 1369 type mode_t = uint32 1370 1371 type nlink_t = uint32_t 1372 1373 type pid_t = int32 1374 type lwpid_t = int32_t 1375 type rlim_t = uint64_t 1376 type segsz_t = int32_t 1377 type swblk_t = int32_t 1378 1379 type uid_t = uint32 1380 1381 type mqd_t = int32 1382 1383 type cpuid_t = uint64 1384 1385 type psetid_t = int32 1386 1387 type clock_t = uint32 1388 1389 type time_t = int64 1390 1391 type clockid_t = int32 1392 1393 type timer_t = int32 1394 1395 type suseconds_t = int32 1396 1397 type useconds_t = uint32 1398 1399 type fd_set1 = struct{ fds_bits [8]uint32 } 1400 1401 type fd_set = fd_set1 1402 1403 type kauth_cred_t = uintptr 1404 1405 type pri_t = int32 1406 1407 type pthread_spin_t = uint8 1408 1409 type pthread_queue_struct_t = struct { 1410 ptqh_first uintptr 1411 ptqh_last uintptr 1412 } 1413 1414 type pthread_queue_t = pthread_queue_struct_t 1415 type __pthread_attr_st = struct { 1416 pta_magic uint32 1417 pta_flags int32 1418 pta_private uintptr 1419 } 1420 1421 type __pthread_mutex_st = struct { 1422 ptm_magic uint32 1423 ptm_errorcheck uint8 1424 ptm_pad1 [3]uint8_t 1425 __8 struct{ ptm_ceiling uint8 } 1426 ptm_pad2 [3]uint8_t 1427 _ [4]byte 1428 ptm_owner pthread_t 1429 ptm_waiters uintptr 1430 ptm_recursed uint32 1431 _ [4]byte 1432 ptm_spare2 uintptr 1433 } 1434 1435 type __pthread_mutexattr_st = struct { 1436 ptma_magic uint32 1437 _ [4]byte 1438 ptma_private uintptr 1439 } 1440 1441 type __pthread_cond_st = struct { 1442 ptc_magic uint32 1443 ptc_lock uint8 1444 _ [3]byte 1445 ptc_waiters pthread_queue_t 1446 ptc_mutex uintptr 1447 ptc_private uintptr 1448 } 1449 1450 type __pthread_condattr_st = struct { 1451 ptca_magic uint32 1452 _ [4]byte 1453 ptca_private uintptr 1454 } 1455 1456 type __pthread_rwlock_st = struct { 1457 ptr_magic uint32 1458 ptr_interlock uint8 1459 _ [3]byte 1460 ptr_rblocked pthread_queue_t 1461 ptr_wblocked pthread_queue_t 1462 ptr_nreaders uint32 1463 _ [4]byte 1464 ptr_owner pthread_t 1465 ptr_private uintptr 1466 } 1467 1468 type __pthread_rwlockattr_st = struct { 1469 ptra_magic uint32 1470 _ [4]byte 1471 ptra_private uintptr 1472 } 1473 1474 type __pthread_barrier_st = struct { 1475 ptb_magic uint32 1476 ptb_lock pthread_spin_t 1477 _ [3]byte 1478 ptb_waiters pthread_queue_t 1479 ptb_initcount uint32 1480 ptb_curcount uint32 1481 ptb_generation uint32 1482 _ [4]byte 1483 ptb_private uintptr 1484 } 1485 1486 type __pthread_barrierattr_st = struct { 1487 ptba_magic uint32 1488 _ [4]byte 1489 ptba_private uintptr 1490 } 1491 1492 type pthread_t = uintptr 1493 type pthread_attr_t = __pthread_attr_st 1494 type pthread_mutex_t = __pthread_mutex_st 1495 type pthread_mutexattr_t = __pthread_mutexattr_st 1496 type pthread_cond_t = __pthread_cond_st 1497 type pthread_condattr_t = __pthread_condattr_st 1498 type __pthread_once_st = struct { 1499 pto_mutex pthread_mutex_t 1500 pto_done int32 1501 _ [4]byte 1502 } 1503 1504 type pthread_once_t = __pthread_once_st 1505 type __pthread_spinlock_st = struct { 1506 pts_magic uint32 1507 pts_spin uint8 1508 _ [3]byte 1509 pts_flags int32 1510 } 1511 1512 type pthread_spinlock_t = __pthread_spinlock_st 1513 type pthread_rwlock_t = __pthread_rwlock_st 1514 type pthread_rwlockattr_t = __pthread_rwlockattr_st 1515 type pthread_barrier_t = __pthread_barrier_st 1516 type pthread_barrierattr_t = __pthread_barrierattr_st 1517 type pthread_key_t = int32 1518 1519 type div_t = struct { 1520 quot int32 1521 rem int32 1522 } 1523 1524 type ldiv_t = struct { 1525 quot int64 1526 rem int64 1527 } 1528 1529 type lldiv_t = struct { 1530 quot int64 1531 rem int64 1532 } 1533 1534 type qdiv_t = struct { 1535 quot quad_t 1536 rem quad_t 1537 } 1538 1539 type u64 = sqlite3_uint64 1540 1541 type HashContext1 = struct { 1542 isInit uint8 1543 i uint8 1544 j uint8 1545 s [256]uint8 1546 r [32]uint8 1547 } 1548 1549 type HashContext = HashContext1 1550 1551 type Global = struct { 1552 db uintptr 1553 pStmt uintptr 1554 iStart sqlite3_int64 1555 iTotal sqlite3_int64 1556 bWithoutRowid int32 1557 bReprepare int32 1558 bSqlOnly int32 1559 bExplain int32 1560 bVerify int32 1561 bMemShrink int32 1562 eTemp int32 1563 szTest int32 1564 nRepeat int32 1565 doCheckpoint int32 1566 nReserve int32 1567 _ [4]byte 1568 zWR uintptr 1569 zNN uintptr 1570 zPK uintptr 1571 x uint32 1572 y uint32 1573 nResByte u64 1574 nResult int32 1575 zResult [3000]int8 1576 _ [4]byte 1577 hashFile uintptr 1578 hash HashContext 1579 _ [5]byte 1580 } 1581 1582 var g Global 1583 1584 func isTemp(tls *libc.TLS, N int32) uintptr { 1585 if g.eTemp >= N { 1586 return ts + 2263 1587 } 1588 return ts + 2269 1589 } 1590 1591 func fatal_error(tls *libc.TLS, zMsg uintptr, va uintptr) { 1592 var ap va_list 1593 _ = ap 1594 ap = va 1595 libc.Xvfprintf(tls, uintptr(unsafe.Pointer(&libc.X__sF))+2*152, zMsg, ap) 1596 _ = ap 1597 libc.Xexit(tls, 1) 1598 } 1599 1600 func HashInit(tls *libc.TLS) { 1601 var k uint32 1602 g.hash.i = uint8(0) 1603 g.hash.j = uint8(0) 1604 for k = uint32(0); k < uint32(256); k++ { 1605 *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(k))) = uint8(k) 1606 } 1607 } 1608 1609 func HashUpdate(tls *libc.TLS, aData uintptr, nData uint32) { 1610 var t uint8 1611 var i uint8 = g.hash.i 1612 var j uint8 = g.hash.j 1613 var k uint32 1614 if g.hashFile != 0 { 1615 libc.Xfwrite(tls, aData, uint64(1), uint64(nData), g.hashFile) 1616 } 1617 for k = uint32(0); k < nData; k++ { 1618 j = uint8(int32(j) + (int32(*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i)))) + int32(*(*uint8)(unsafe.Pointer(aData + uintptr(k)))))) 1619 t = *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(j))) 1620 *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(j))) = *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i))) 1621 *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i))) = t 1622 i++ 1623 } 1624 g.hash.i = i 1625 g.hash.j = j 1626 } 1627 1628 func HashFinal(tls *libc.TLS) { 1629 var k uint32 1630 var t uint8 1631 var i uint8 1632 var j uint8 1633 i = g.hash.i 1634 j = g.hash.j 1635 for k = uint32(0); k < uint32(32); k++ { 1636 i++ 1637 t = *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i))) 1638 j = uint8(int32(j) + int32(t)) 1639 *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i))) = *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(j))) 1640 *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(j))) = t 1641 t = uint8(int32(t) + int32(*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i))))) 1642 *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 259 + uintptr(k))) = *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(t))) 1643 } 1644 } 1645 1646 func hexDigitValue(tls *libc.TLS, c int8) int32 { 1647 if int32(c) >= '0' && int32(c) <= '9' { 1648 return int32(c) - '0' 1649 } 1650 if int32(c) >= 'a' && int32(c) <= 'f' { 1651 return int32(c) - 'a' + 10 1652 } 1653 if int32(c) >= 'A' && int32(c) <= 'F' { 1654 return int32(c) - 'A' + 10 1655 } 1656 return -1 1657 } 1658 1659 func integerValue(tls *libc.TLS, zArg uintptr) int32 { 1660 var v sqlite3_int64 = int64(0) 1661 var i int32 1662 var isNeg int32 = 0 1663 if int32(*(*int8)(unsafe.Pointer(zArg))) == '-' { 1664 isNeg = 1 1665 zArg++ 1666 } else if int32(*(*int8)(unsafe.Pointer(zArg))) == '+' { 1667 zArg++ 1668 } 1669 if int32(*(*int8)(unsafe.Pointer(zArg))) == '0' && int32(*(*int8)(unsafe.Pointer(zArg + 1))) == 'x' { 1670 var x int32 1671 zArg += uintptr(2) 1672 for libc.AssignInt32(&x, hexDigitValue(tls, *(*int8)(unsafe.Pointer(zArg)))) >= 0 { 1673 v = v<<4 + sqlite3_int64(x) 1674 zArg++ 1675 } 1676 } else { 1677 for int32(*(*uint16)(unsafe.Pointer(libc.X_ctype_tab_ + uintptr(1)*2 + uintptr(*(*int8)(unsafe.Pointer(zArg)))*2)))&X_CTYPE_D != 0 { 1678 v = v*int64(10) + sqlite3_int64(*(*int8)(unsafe.Pointer(zArg))) - int64('0') 1679 zArg++ 1680 } 1681 } 1682 for i = 0; uint64(i) < uint64(unsafe.Sizeof(aMult))/uint64(unsafe.Sizeof(struct { 1683 zSuffix uintptr 1684 iMult int32 1685 _ [4]byte 1686 }{})); i++ { 1687 if sqlite3.Xsqlite3_stricmp(tls, aMult[i].zSuffix, zArg) == 0 { 1688 v = v * sqlite3_int64(aMult[i].iMult) 1689 break 1690 } 1691 } 1692 if v > int64(0x7fffffff) { 1693 fatal_error(tls, ts+2270, 0) 1694 } 1695 return func() int32 { 1696 if isNeg != 0 { 1697 return int32(-v) 1698 } 1699 return int32(v) 1700 }() 1701 } 1702 1703 var aMult = [9]struct { 1704 zSuffix uintptr 1705 iMult int32 1706 _ [4]byte 1707 }{ 1708 {zSuffix: ts + 2307, iMult: 1024}, 1709 {zSuffix: ts + 2311, iMult: 1024 * 1024}, 1710 {zSuffix: ts + 2315, iMult: 1024 * 1024 * 1024}, 1711 {zSuffix: ts + 2319, iMult: 1000}, 1712 {zSuffix: ts + 2322, iMult: 1000000}, 1713 {zSuffix: ts + 2325, iMult: 1000000000}, 1714 {zSuffix: ts + 2328, iMult: 1000}, 1715 {zSuffix: ts + 2330, iMult: 1000000}, 1716 {zSuffix: ts + 2332, iMult: 1000000000}, 1717 } 1718 1719 func speedtest1_timestamp(tls *libc.TLS) sqlite3_int64 { 1720 bp := tls.Alloc(16) 1721 defer tls.Free(16) 1722 1723 if clockVfs == uintptr(0) { 1724 clockVfs = sqlite3.Xsqlite3_vfs_find(tls, uintptr(0)) 1725 } 1726 if (*sqlite3_vfs)(unsafe.Pointer(clockVfs)).iVersion >= 2 && (*sqlite3_vfs)(unsafe.Pointer(clockVfs)).xCurrentTimeInt64 != uintptr(0) { 1727 (*struct { 1728 f func(*libc.TLS, uintptr, uintptr) int32 1729 })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(clockVfs)).xCurrentTimeInt64})).f(tls, clockVfs, bp) 1730 } else { 1731 (*struct { 1732 f func(*libc.TLS, uintptr, uintptr) int32 1733 })(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(clockVfs)).xCurrentTime})).f(tls, clockVfs, bp+8) 1734 *(*sqlite3_int64)(unsafe.Pointer(bp)) = libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(bp + 8)) * 86400000.0) 1735 } 1736 return *(*sqlite3_int64)(unsafe.Pointer(bp)) 1737 } 1738 1739 var clockVfs uintptr = uintptr(0) 1740 1741 func speedtest1_random(tls *libc.TLS) uint32 { 1742 g.x = g.x>>1 ^ (uint32(1)+^(g.x&uint32(1)))&0xd0000001 1743 g.y = g.y*uint32(1103515245) + uint32(12345) 1744 return g.x ^ g.y 1745 } 1746 1747 func swizzle(tls *libc.TLS, in uint32, limit uint32) uint32 { 1748 var out uint32 = uint32(0) 1749 for limit != 0 { 1750 out = out<<1 | in&uint32(1) 1751 in >>= 1 1752 limit >>= 1 1753 } 1754 return out 1755 } 1756 1757 func roundup_allones(tls *libc.TLS, limit uint32) uint32 { 1758 var m uint32 = uint32(1) 1759 for m < limit { 1760 m = m<<1 + uint32(1) 1761 } 1762 return m 1763 } 1764 1765 func speedtest1_numbername(tls *libc.TLS, n uint32, zOut uintptr, nOut int32) int32 { 1766 bp := tls.Alloc(24) 1767 defer tls.Free(24) 1768 1769 var i int32 = 0 1770 1771 if n >= uint32(1000000000) { 1772 i = i + speedtest1_numbername(tls, n/uint32(1000000000), zOut+uintptr(i), nOut-i) 1773 sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2334, 0) 1774 i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i))) 1775 n = n % uint32(1000000000) 1776 } 1777 if n >= uint32(1000000) { 1778 if i != 0 && i < nOut-1 { 1779 *(*int8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&i, 1)))) = int8(' ') 1780 } 1781 i = i + speedtest1_numbername(tls, n/uint32(1000000), zOut+uintptr(i), nOut-i) 1782 sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2343, 0) 1783 i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i))) 1784 n = n % uint32(1000000) 1785 } 1786 if n >= uint32(1000) { 1787 if i != 0 && i < nOut-1 { 1788 *(*int8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&i, 1)))) = int8(' ') 1789 } 1790 i = i + speedtest1_numbername(tls, n/uint32(1000), zOut+uintptr(i), nOut-i) 1791 sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2352, 0) 1792 i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i))) 1793 n = n % uint32(1000) 1794 } 1795 if n >= uint32(100) { 1796 if i != 0 && i < nOut-1 { 1797 *(*int8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&i, 1)))) = int8(' ') 1798 } 1799 sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2362, libc.VaList(bp, ones[n/uint32(100)])) 1800 i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i))) 1801 n = n % uint32(100) 1802 } 1803 if n >= uint32(20) { 1804 if i != 0 && i < nOut-1 { 1805 *(*int8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&i, 1)))) = int8(' ') 1806 } 1807 sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2373, libc.VaList(bp+8, tens[n/uint32(10)])) 1808 i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i))) 1809 n = n % uint32(10) 1810 } 1811 if n > uint32(0) { 1812 if i != 0 && i < nOut-1 { 1813 *(*int8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&i, 1)))) = int8(' ') 1814 } 1815 sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2373, libc.VaList(bp+16, ones[n])) 1816 i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i))) 1817 } 1818 if i == 0 { 1819 sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2376, 0) 1820 i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i))) 1821 } 1822 return i 1823 } 1824 1825 var ones = [20]uintptr{ts + 2376, ts + 2381, ts + 2385, ts + 2389, ts + 2395, ts + 2400, 1826 ts + 2405, ts + 2409, ts + 2415, ts + 2421, ts + 2426, ts + 2430, ts + 2437, 1827 ts + 2444, ts + 2453, ts + 2462, ts + 2470, ts + 2478, 1828 ts + 2488, ts + 2497} 1829 var tens = [10]uintptr{ts + 2269, ts + 2426, ts + 2506, ts + 2513, ts + 2520, 1830 ts + 2526, ts + 2532, ts + 2538, ts + 2546, ts + 2553} 1831 1832 var zDots = *(*[72]int8)(unsafe.Pointer(ts + 2560)) 1833 1834 func speedtest1_begin_test(tls *libc.TLS, iTestNum int32, zTestName uintptr, va uintptr) { 1835 bp := tls.Alloc(64) 1836 defer tls.Free(64) 1837 1838 var n int32 = int32(libc.Xstrlen(tls, zTestName)) 1839 var zName uintptr 1840 var ap va_list 1841 _ = ap 1842 ap = va 1843 zName = sqlite3.Xsqlite3_vmprintf(tls, zTestName, ap) 1844 _ = ap 1845 n = int32(libc.Xstrlen(tls, zName)) 1846 if n > NAMEWIDTH { 1847 *(*int8)(unsafe.Pointer(zName + 60)) = int8(0) 1848 n = NAMEWIDTH 1849 } 1850 if g.bSqlOnly != 0 { 1851 libc.Xprintf(tls, ts+2632, libc.VaList(bp, iTestNum, zName, NAMEWIDTH-n, uintptr(unsafe.Pointer(&zDots)))) 1852 } else { 1853 libc.Xprintf(tls, ts+2652, libc.VaList(bp+32, iTestNum, zName, NAMEWIDTH-n, uintptr(unsafe.Pointer(&zDots)))) 1854 libc.Xfflush(tls, uintptr(unsafe.Pointer(&libc.X__sF))+1*152) 1855 } 1856 sqlite3.Xsqlite3_free(tls, zName) 1857 g.nResult = 0 1858 g.iStart = speedtest1_timestamp(tls) 1859 g.x = 0xad131d0b 1860 g.y = uint32(0x44f9eac8) 1861 } 1862 1863 func speedtest1_end_test(tls *libc.TLS) { 1864 bp := tls.Alloc(16) 1865 defer tls.Free(16) 1866 1867 var iElapseTime sqlite3_int64 = speedtest1_timestamp(tls) - g.iStart 1868 if g.doCheckpoint != 0 { 1869 speedtest1_exec(tls, ts+2666, 0) 1870 } 1871 if !(g.bSqlOnly != 0) { 1872 *(*sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 24)) += iElapseTime 1873 libc.Xprintf(tls, ts+2689, libc.VaList(bp, int32(iElapseTime/int64(1000)), int32(iElapseTime%int64(1000)))) 1874 } 1875 if g.pStmt != 0 { 1876 sqlite3.Xsqlite3_finalize(tls, g.pStmt) 1877 g.pStmt = uintptr(0) 1878 } 1879 } 1880 1881 func speedtest1_final(tls *libc.TLS) { 1882 bp := tls.Alloc(48) 1883 defer tls.Free(48) 1884 1885 if !(g.bSqlOnly != 0) { 1886 libc.Xprintf(tls, ts+2700, libc.VaList(bp, NAMEWIDTH-5, uintptr(unsafe.Pointer(&zDots)), 1887 int32(g.iTotal/int64(1000)), int32(g.iTotal%int64(1000)))) 1888 } 1889 if g.bVerify != 0 { 1890 var i int32 1891 libc.Xprintf(tls, ts+2728, libc.VaList(bp+32, g.nResByte)) 1892 HashUpdate(tls, ts+2753, uint32(1)) 1893 HashFinal(tls) 1894 for i = 0; i < 24; i++ { 1895 libc.Xprintf(tls, ts+2755, libc.VaList(bp+40, int32(*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 259 + uintptr(i)))))) 1896 } 1897 if g.hashFile != 0 && g.hashFile != uintptr(unsafe.Pointer(&libc.X__sF))+1*152 { 1898 libc.Xfclose(tls, g.hashFile) 1899 } 1900 libc.Xprintf(tls, ts+2753, 0) 1901 } 1902 } 1903 1904 func printSql(tls *libc.TLS, zSql uintptr) { 1905 bp := tls.Alloc(32) 1906 defer tls.Free(32) 1907 1908 var n int32 = int32(libc.Xstrlen(tls, zSql)) 1909 for n > 0 && (int32(*(*int8)(unsafe.Pointer(zSql + uintptr(n-1)))) == ';' || int32(*(*uint16)(unsafe.Pointer(libc.X_ctype_tab_ + uintptr(1)*2 + uintptr(uint8(*(*int8)(unsafe.Pointer(zSql + uintptr(n-1)))))*2)))&X_CTYPE_S != 0) { 1910 n-- 1911 } 1912 if g.bExplain != 0 { 1913 libc.Xprintf(tls, ts+2760, 0) 1914 } 1915 libc.Xprintf(tls, ts+2769, libc.VaList(bp, n, zSql)) 1916 if g.bExplain != 0 && 1917 (sqlite3.Xsqlite3_strglob(tls, ts+2776, zSql) == 0 || 1918 sqlite3.Xsqlite3_strglob(tls, ts+2785, zSql) == 0 || 1919 sqlite3.Xsqlite3_strglob(tls, ts+2792, zSql) == 0) { 1920 libc.Xprintf(tls, ts+2769, libc.VaList(bp+16, n, zSql)) 1921 } 1922 } 1923 1924 func speedtest1_shrink_memory(tls *libc.TLS) { 1925 if g.bMemShrink != 0 { 1926 sqlite3.Xsqlite3_db_release_memory(tls, g.db) 1927 } 1928 } 1929 1930 func speedtest1_exec(tls *libc.TLS, zFormat uintptr, va uintptr) { 1931 bp := tls.Alloc(32) 1932 defer tls.Free(32) 1933 1934 var ap va_list 1935 _ = ap 1936 var zSql uintptr 1937 ap = va 1938 zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 1939 _ = ap 1940 if g.bSqlOnly != 0 { 1941 printSql(tls, zSql) 1942 } else { 1943 *(*uintptr)(unsafe.Pointer(bp + 24)) = uintptr(0) 1944 var rc int32 = sqlite3.Xsqlite3_exec(tls, g.db, zSql, uintptr(0), uintptr(0), bp+24) 1945 if *(*uintptr)(unsafe.Pointer(bp + 24)) != 0 { 1946 fatal_error(tls, ts+2800, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 24)), zSql)) 1947 } 1948 if rc != SQLITE_OK { 1949 fatal_error(tls, ts+2818, libc.VaList(bp+16, sqlite3.Xsqlite3_errmsg(tls, g.db))) 1950 } 1951 } 1952 sqlite3.Xsqlite3_free(tls, zSql) 1953 speedtest1_shrink_memory(tls) 1954 } 1955 1956 func speedtest1_once(tls *libc.TLS, zFormat uintptr, va uintptr) uintptr { 1957 bp := tls.Alloc(24) 1958 defer tls.Free(24) 1959 1960 var ap va_list 1961 _ = ap 1962 var zSql uintptr 1963 1964 var zResult uintptr = uintptr(0) 1965 ap = va 1966 zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 1967 _ = ap 1968 if g.bSqlOnly != 0 { 1969 printSql(tls, zSql) 1970 } else { 1971 var rc int32 = sqlite3.Xsqlite3_prepare_v2(tls, g.db, zSql, -1, bp+16, uintptr(0)) 1972 if rc != 0 { 1973 fatal_error(tls, ts+2834, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db))) 1974 } 1975 if sqlite3.Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 16))) == SQLITE_ROW { 1976 var z uintptr = sqlite3.Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 16)), 0) 1977 if z != 0 { 1978 zResult = sqlite3.Xsqlite3_mprintf(tls, ts+2373, libc.VaList(bp+8, z)) 1979 } 1980 } 1981 sqlite3.Xsqlite3_finalize(tls, *(*uintptr)(unsafe.Pointer(bp + 16))) 1982 } 1983 sqlite3.Xsqlite3_free(tls, zSql) 1984 speedtest1_shrink_memory(tls) 1985 return zResult 1986 } 1987 1988 func speedtest1_prepare(tls *libc.TLS, zFormat uintptr, va uintptr) { 1989 bp := tls.Alloc(8) 1990 defer tls.Free(8) 1991 1992 var ap va_list 1993 _ = ap 1994 var zSql uintptr 1995 ap = va 1996 zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 1997 _ = ap 1998 if g.bSqlOnly != 0 { 1999 printSql(tls, zSql) 2000 } else { 2001 var rc int32 2002 if g.pStmt != 0 { 2003 sqlite3.Xsqlite3_finalize(tls, g.pStmt) 2004 } 2005 rc = sqlite3.Xsqlite3_prepare_v2(tls, g.db, zSql, -1, uintptr(unsafe.Pointer(&g))+8, uintptr(0)) 2006 if rc != 0 { 2007 fatal_error(tls, ts+2834, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db))) 2008 } 2009 } 2010 sqlite3.Xsqlite3_free(tls, zSql) 2011 } 2012 2013 func speedtest1_run(tls *libc.TLS) { 2014 bp := tls.Alloc(16) 2015 defer tls.Free(16) 2016 2017 var i int32 2018 var n int32 2019 var len int32 2020 if g.bSqlOnly != 0 { 2021 return 2022 } 2023 2024 g.nResult = 0 2025 for sqlite3.Xsqlite3_step(tls, g.pStmt) == SQLITE_ROW { 2026 n = sqlite3.Xsqlite3_column_count(tls, g.pStmt) 2027 for i = 0; i < n; i++ { 2028 var z uintptr = sqlite3.Xsqlite3_column_text(tls, g.pStmt, i) 2029 if z == uintptr(0) { 2030 z = ts + 2849 2031 } 2032 len = int32(libc.Xstrlen(tls, z)) 2033 if g.bVerify != 0 { 2034 var eType int32 = sqlite3.Xsqlite3_column_type(tls, g.pStmt, i) 2035 2036 *(*uint8)(unsafe.Pointer(bp)) = uint8('\n') 2037 *(*uint8)(unsafe.Pointer(bp + 1)) = uint8(*(*int8)(unsafe.Pointer(ts + 2853 + uintptr(eType)))) 2038 if g.nResByte != 0 { 2039 HashUpdate(tls, bp, uint32(2)) 2040 } else { 2041 HashUpdate(tls, bp+uintptr(1), uint32(1)) 2042 } 2043 if eType == SQLITE_FLOAT { 2044 *(*u64)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 112)) += uint64(2) 2045 } else if eType == SQLITE_BLOB { 2046 var nBlob int32 = sqlite3.Xsqlite3_column_bytes(tls, g.pStmt, i) 2047 var iBlob int32 2048 2049 var aBlob uintptr = sqlite3.Xsqlite3_column_blob(tls, g.pStmt, i) 2050 for iBlob = 0; iBlob < nBlob; iBlob++ { 2051 *(*uint8)(unsafe.Pointer(bp + 2)) = uint8(*(*int8)(unsafe.Pointer(ts + 2860 + uintptr(int32(*(*uint8)(unsafe.Pointer(aBlob + uintptr(iBlob))))>>4)))) 2052 *(*uint8)(unsafe.Pointer(bp + 2 + 1)) = uint8(*(*int8)(unsafe.Pointer(ts + 2860 + uintptr(int32(*(*uint8)(unsafe.Pointer(aBlob + uintptr(iBlob))))&15)))) 2053 HashUpdate(tls, bp+2, uint32(2)) 2054 } 2055 *(*u64)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 112)) += u64(nBlob*2 + 2) 2056 } else { 2057 HashUpdate(tls, z, uint32(len)) 2058 *(*u64)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 112)) += u64(len + 2) 2059 } 2060 } 2061 if uint64(g.nResult+len) < uint64(unsafe.Sizeof([3000]int8{}))-uint64(2) { 2062 if g.nResult > 0 { 2063 *(*int8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 124 + uintptr(libc.PostIncInt32(&g.nResult, 1)))) = int8(' ') 2064 } 2065 libc.Xmemcpy(tls, uintptr(unsafe.Pointer(&g))+124+uintptr(g.nResult), z, uint64(len+1)) 2066 *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 120)) += len 2067 } 2068 } 2069 } 2070 if g.bReprepare != 0 { 2071 sqlite3.Xsqlite3_prepare_v2(tls, g.db, sqlite3.Xsqlite3_sql(tls, g.pStmt), -1, bp+8, uintptr(0)) 2072 sqlite3.Xsqlite3_finalize(tls, g.pStmt) 2073 g.pStmt = *(*uintptr)(unsafe.Pointer(bp + 8)) 2074 } else { 2075 sqlite3.Xsqlite3_reset(tls, g.pStmt) 2076 } 2077 speedtest1_shrink_memory(tls) 2078 } 2079 2080 func traceCallback(tls *libc.TLS, NotUsed uintptr, zSql uintptr) { 2081 bp := tls.Alloc(16) 2082 defer tls.Free(16) 2083 2084 var n int32 = int32(libc.Xstrlen(tls, zSql)) 2085 for n > 0 && (int32(*(*int8)(unsafe.Pointer(zSql + uintptr(n-1)))) == ';' || int32(*(*uint16)(unsafe.Pointer(libc.X_ctype_tab_ + uintptr(1)*2 + uintptr(uint8(*(*int8)(unsafe.Pointer(zSql + uintptr(n-1)))))*2)))&X_CTYPE_S != 0) { 2086 n-- 2087 } 2088 libc.Xfprintf(tls, uintptr(unsafe.Pointer(&libc.X__sF))+2*152, ts+2769, libc.VaList(bp, n, zSql)) 2089 } 2090 2091 func randomFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { 2092 sqlite3.Xsqlite3_result_int64(tls, context, sqlite3_int64(speedtest1_random(tls))) 2093 } 2094 2095 func est_square_root(tls *libc.TLS, x int32) int32 { 2096 var y0 int32 = x / 2 2097 var y1 int32 2098 var n int32 2099 for n = 0; y0 > 0 && n < 10; n++ { 2100 y1 = (y0 + x/y0) / 2 2101 if y1 == y0 { 2102 break 2103 } 2104 y0 = y1 2105 } 2106 return y0 2107 } 2108 2109 func testset_main(tls *libc.TLS) { 2110 bp := tls.Alloc(2568) 2111 defer tls.Free(2568) 2112 2113 var i int32 2114 var n int32 2115 var sz int32 2116 var maxb int32 2117 var x1 uint32 = uint32(0) 2118 var x2 uint32 = uint32(0) 2119 var len int32 = 0 2120 2121 sz = libc.AssignInt32(&n, g.szTest*500) 2122 *(*int8)(unsafe.Pointer(bp + 568)) = int8(0) 2123 maxb = int32(roundup_allones(tls, uint32(sz))) 2124 speedtest1_begin_test(tls, 100, ts+2877, libc.VaList(bp, n)) 2125 speedtest1_exec(tls, ts+2913, 0) 2126 speedtest1_exec(tls, ts+2919, 2127 libc.VaList(bp+8, isTemp(tls, 9), g.zNN, g.zNN, g.zNN)) 2128 speedtest1_prepare(tls, ts+2977, libc.VaList(bp+40, n)) 2129 for i = 1; i <= n; i++ { 2130 x1 = swizzle(tls, uint32(i), uint32(maxb)) 2131 speedtest1_numbername(tls, x1, bp+568, int32(unsafe.Sizeof([2000]int8{}))) 2132 sqlite3.Xsqlite3_bind_int64(tls, g.pStmt, 1, sqlite3_int64(x1)) 2133 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, i) 2134 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 3, bp+568, -1, uintptr(0)) 2135 speedtest1_run(tls) 2136 } 2137 speedtest1_exec(tls, ts+3023, 0) 2138 speedtest1_end_test(tls) 2139 2140 n = sz 2141 speedtest1_begin_test(tls, 110, ts+3030, libc.VaList(bp+48, n)) 2142 speedtest1_exec(tls, ts+2913, 0) 2143 speedtest1_exec(tls, 2144 ts+3067, 2145 libc.VaList(bp+56, isTemp(tls, 5), g.zNN, g.zPK, g.zNN, g.zNN, g.zWR)) 2146 speedtest1_prepare(tls, ts+3130, libc.VaList(bp+104, n)) 2147 for i = 1; i <= n; i++ { 2148 x1 = swizzle(tls, uint32(i), uint32(maxb)) 2149 speedtest1_numbername(tls, x1, bp+568, int32(unsafe.Sizeof([2000]int8{}))) 2150 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, i) 2151 sqlite3.Xsqlite3_bind_int64(tls, g.pStmt, 2, sqlite3_int64(x1)) 2152 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 3, bp+568, -1, uintptr(0)) 2153 speedtest1_run(tls) 2154 } 2155 speedtest1_exec(tls, ts+3023, 0) 2156 speedtest1_end_test(tls) 2157 2158 n = sz 2159 speedtest1_begin_test(tls, 120, ts+3175, libc.VaList(bp+112, n)) 2160 speedtest1_exec(tls, ts+2913, 0) 2161 speedtest1_exec(tls, 2162 ts+3214, 2163 libc.VaList(bp+120, isTemp(tls, 3), g.zNN, g.zPK, g.zNN, g.zNN, g.zWR)) 2164 speedtest1_prepare(tls, ts+3277, libc.VaList(bp+168, n)) 2165 for i = 1; i <= n; i++ { 2166 x1 = swizzle(tls, uint32(i), uint32(maxb)) 2167 speedtest1_numbername(tls, x1, bp+568, int32(unsafe.Sizeof([2000]int8{}))) 2168 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, i) 2169 sqlite3.Xsqlite3_bind_int64(tls, g.pStmt, 1, sqlite3_int64(x1)) 2170 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 3, bp+568, -1, uintptr(0)) 2171 speedtest1_run(tls) 2172 } 2173 speedtest1_exec(tls, ts+3023, 0) 2174 speedtest1_end_test(tls) 2175 2176 n = 25 2177 speedtest1_begin_test(tls, 130, ts+3322, libc.VaList(bp+176, n)) 2178 speedtest1_exec(tls, ts+2913, 0) 2179 speedtest1_prepare(tls, 2180 ts+3361, libc.VaList(bp+184, n)) 2181 for i = 1; i <= n; i++ { 2182 if (i-1)%g.nRepeat == 0 { 2183 x1 = speedtest1_random(tls) % uint32(maxb) 2184 x2 = speedtest1_random(tls)%uint32(10) + uint32(sz/5000) + x1 2185 } 2186 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1)) 2187 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2)) 2188 speedtest1_run(tls) 2189 } 2190 speedtest1_exec(tls, ts+3023, 0) 2191 speedtest1_end_test(tls) 2192 2193 n = 10 2194 speedtest1_begin_test(tls, 140, ts+3466, libc.VaList(bp+192, n)) 2195 speedtest1_exec(tls, ts+2913, 0) 2196 speedtest1_prepare(tls, 2197 ts+3494, libc.VaList(bp+200, n)) 2198 for i = 1; i <= n; i++ { 2199 if (i-1)%g.nRepeat == 0 { 2200 x1 = speedtest1_random(tls) % uint32(maxb) 2201 *(*int8)(unsafe.Pointer(bp + 568)) = int8('%') 2202 len = speedtest1_numbername(tls, uint32(i), bp+568+uintptr(1), int32(uint64(unsafe.Sizeof([2000]int8{}))-uint64(2))) 2203 *(*int8)(unsafe.Pointer(bp + 568 + uintptr(len))) = int8('%') 2204 *(*int8)(unsafe.Pointer(bp + 568 + uintptr(len+1))) = int8(0) 2205 } 2206 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, len+1, uintptr(0)) 2207 speedtest1_run(tls) 2208 } 2209 speedtest1_exec(tls, ts+3023, 0) 2210 speedtest1_end_test(tls) 2211 2212 n = 10 2213 speedtest1_begin_test(tls, 142, ts+3589, libc.VaList(bp+208, n)) 2214 speedtest1_exec(tls, ts+2913, 0) 2215 speedtest1_prepare(tls, 2216 ts+3622, libc.VaList(bp+216, n)) 2217 for i = 1; i <= n; i++ { 2218 if (i-1)%g.nRepeat == 0 { 2219 x1 = speedtest1_random(tls) % uint32(maxb) 2220 *(*int8)(unsafe.Pointer(bp + 568)) = int8('%') 2221 len = speedtest1_numbername(tls, uint32(i), bp+568+uintptr(1), int32(uint64(unsafe.Sizeof([2000]int8{}))-uint64(2))) 2222 *(*int8)(unsafe.Pointer(bp + 568 + uintptr(len))) = int8('%') 2223 *(*int8)(unsafe.Pointer(bp + 568 + uintptr(len+1))) = int8(0) 2224 } 2225 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, len+1, uintptr(0)) 2226 speedtest1_run(tls) 2227 } 2228 speedtest1_exec(tls, ts+3023, 0) 2229 speedtest1_end_test(tls) 2230 2231 n = 10 2232 speedtest1_begin_test(tls, 145, ts+3686, libc.VaList(bp+224, n)) 2233 speedtest1_exec(tls, ts+2913, 0) 2234 speedtest1_prepare(tls, 2235 ts+3729, libc.VaList(bp+232, n)) 2236 for i = 1; i <= n; i++ { 2237 if (i-1)%g.nRepeat == 0 { 2238 x1 = speedtest1_random(tls) % uint32(maxb) 2239 *(*int8)(unsafe.Pointer(bp + 568)) = int8('%') 2240 len = speedtest1_numbername(tls, uint32(i), bp+568+uintptr(1), int32(uint64(unsafe.Sizeof([2000]int8{}))-uint64(2))) 2241 *(*int8)(unsafe.Pointer(bp + 568 + uintptr(len))) = int8('%') 2242 *(*int8)(unsafe.Pointer(bp + 568 + uintptr(len+1))) = int8(0) 2243 } 2244 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, len+1, uintptr(0)) 2245 speedtest1_run(tls) 2246 } 2247 speedtest1_exec(tls, ts+3023, 0) 2248 speedtest1_end_test(tls) 2249 2250 speedtest1_begin_test(tls, 150, ts+3802, 0) 2251 speedtest1_exec(tls, ts+3826, 0) 2252 speedtest1_exec(tls, ts+3833, 0) 2253 speedtest1_exec(tls, ts+3867, 0) 2254 speedtest1_exec(tls, ts+3894, 0) 2255 speedtest1_exec(tls, ts+3928, 0) 2256 speedtest1_exec(tls, ts+3960, 0) 2257 speedtest1_exec(tls, ts+3990, 0) 2258 speedtest1_end_test(tls) 2259 2260 n = sz / 5 2261 speedtest1_begin_test(tls, 160, ts+3998, libc.VaList(bp+240, n)) 2262 speedtest1_exec(tls, ts+2913, 0) 2263 speedtest1_prepare(tls, 2264 ts+4035, libc.VaList(bp+248, n)) 2265 for i = 1; i <= n; i++ { 2266 if (i-1)%g.nRepeat == 0 { 2267 x1 = speedtest1_random(tls) % uint32(maxb) 2268 x2 = speedtest1_random(tls)%uint32(10) + uint32(sz/5000) + x1 2269 } 2270 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1)) 2271 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2)) 2272 speedtest1_run(tls) 2273 } 2274 speedtest1_exec(tls, ts+3023, 0) 2275 speedtest1_end_test(tls) 2276 2277 n = sz / 5 2278 speedtest1_begin_test(tls, 161, ts+4140, libc.VaList(bp+256, n)) 2279 speedtest1_exec(tls, ts+2913, 0) 2280 speedtest1_prepare(tls, 2281 ts+4172, libc.VaList(bp+264, n)) 2282 for i = 1; i <= n; i++ { 2283 if (i-1)%g.nRepeat == 0 { 2284 x1 = speedtest1_random(tls) % uint32(maxb) 2285 x2 = speedtest1_random(tls)%uint32(10) + uint32(sz/5000) + x1 2286 } 2287 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1)) 2288 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2)) 2289 speedtest1_run(tls) 2290 } 2291 speedtest1_exec(tls, ts+3023, 0) 2292 speedtest1_end_test(tls) 2293 2294 n = sz / 5 2295 speedtest1_begin_test(tls, 170, ts+4277, libc.VaList(bp+272, n)) 2296 speedtest1_exec(tls, ts+2913, 0) 2297 speedtest1_prepare(tls, 2298 ts+4311, libc.VaList(bp+280, n)) 2299 for i = 1; i <= n; i++ { 2300 if (i-1)%g.nRepeat == 0 { 2301 x1 = swizzle(tls, uint32(i), uint32(maxb)) 2302 len = speedtest1_numbername(tls, x1, bp+568, int32(uint64(unsafe.Sizeof([2000]int8{}))-uint64(1))) 2303 } 2304 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, len, uintptr(0)) 2305 speedtest1_run(tls) 2306 } 2307 speedtest1_exec(tls, ts+3023, 0) 2308 speedtest1_end_test(tls) 2309 2310 n = sz 2311 speedtest1_begin_test(tls, 180, ts+4423, libc.VaList(bp+288, n)) 2312 speedtest1_exec(tls, ts+2913, 0) 2313 speedtest1_exec(tls, 2314 ts+4453, 2315 libc.VaList(bp+296, isTemp(tls, 1), g.zNN, g.zPK, g.zNN, g.zNN, g.zWR)) 2316 speedtest1_exec(tls, ts+4524, 0) 2317 speedtest1_exec(tls, ts+4550, 0) 2318 speedtest1_exec(tls, ts+4576, 0) 2319 speedtest1_exec(tls, ts+3023, 0) 2320 speedtest1_end_test(tls) 2321 2322 n = sz 2323 speedtest1_begin_test(tls, 190, ts+4608, libc.VaList(bp+344, n)) 2324 speedtest1_exec(tls, ts+4636, 0) 2325 speedtest1_exec(tls, ts+4652, 0) 2326 speedtest1_end_test(tls) 2327 2328 speedtest1_begin_test(tls, 200, ts+4685, 0) 2329 speedtest1_exec(tls, ts+4685, 0) 2330 speedtest1_end_test(tls) 2331 2332 speedtest1_begin_test(tls, 210, ts+4692, 0) 2333 speedtest1_exec(tls, ts+4726, 0) 2334 speedtest1_exec(tls, ts+4770, 0) 2335 speedtest1_end_test(tls) 2336 2337 n = sz / 5 2338 speedtest1_begin_test(tls, 230, ts+4792, libc.VaList(bp+352, n)) 2339 speedtest1_exec(tls, ts+2913, 0) 2340 speedtest1_prepare(tls, 2341 ts+4829, libc.VaList(bp+360, n)) 2342 for i = 1; i <= n; i++ { 2343 x1 = speedtest1_random(tls) % uint32(maxb) 2344 x2 = speedtest1_random(tls)%uint32(10) + uint32(sz/5000) + x1 2345 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1)) 2346 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2)) 2347 speedtest1_run(tls) 2348 } 2349 speedtest1_exec(tls, ts+3023, 0) 2350 speedtest1_end_test(tls) 2351 2352 n = sz 2353 speedtest1_begin_test(tls, 240, ts+4888, libc.VaList(bp+368, n)) 2354 speedtest1_exec(tls, ts+2913, 0) 2355 speedtest1_prepare(tls, 2356 ts+4918, libc.VaList(bp+376, n)) 2357 for i = 1; i <= n; i++ { 2358 x1 = speedtest1_random(tls)%uint32(sz) + uint32(1) 2359 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1)) 2360 speedtest1_run(tls) 2361 } 2362 speedtest1_exec(tls, ts+3023, 0) 2363 speedtest1_end_test(tls) 2364 2365 speedtest1_begin_test(tls, 250, ts+4962, libc.VaList(bp+384, sz)) 2366 speedtest1_exec(tls, ts+5003, 0) 2367 speedtest1_end_test(tls) 2368 2369 speedtest1_begin_test(tls, 260, ts+5023, 0) 2370 speedtest1_exec(tls, ts+4770, 0) 2371 speedtest1_end_test(tls) 2372 2373 n = sz / 5 2374 speedtest1_begin_test(tls, 270, ts+5056, libc.VaList(bp+392, n)) 2375 speedtest1_exec(tls, ts+2913, 0) 2376 speedtest1_prepare(tls, 2377 ts+5093, libc.VaList(bp+400, n)) 2378 for i = 1; i <= n; i++ { 2379 x1 = speedtest1_random(tls)%uint32(maxb) + uint32(1) 2380 x2 = speedtest1_random(tls)%uint32(10) + uint32(sz/5000) + x1 2381 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1)) 2382 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2)) 2383 speedtest1_run(tls) 2384 } 2385 speedtest1_exec(tls, ts+3023, 0) 2386 speedtest1_end_test(tls) 2387 2388 n = sz 2389 speedtest1_begin_test(tls, 280, ts+5147, libc.VaList(bp+408, n)) 2390 speedtest1_exec(tls, ts+2913, 0) 2391 speedtest1_prepare(tls, 2392 ts+5177, libc.VaList(bp+416, n)) 2393 for i = 1; i <= n; i++ { 2394 x1 = speedtest1_random(tls)%uint32(sz) + uint32(1) 2395 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1)) 2396 speedtest1_run(tls) 2397 } 2398 speedtest1_exec(tls, ts+3023, 0) 2399 speedtest1_end_test(tls) 2400 2401 speedtest1_begin_test(tls, 290, ts+5216, libc.VaList(bp+424, sz)) 2402 speedtest1_exec(tls, ts+5255, 0) 2403 speedtest1_exec(tls, ts+5299, 0) 2404 speedtest1_end_test(tls) 2405 2406 speedtest1_begin_test(tls, 300, ts+5343, libc.VaList(bp+432, sz)) 2407 speedtest1_exec(tls, ts+4636, 0) 2408 speedtest1_exec(tls, 2409 ts+5384, 0) 2410 speedtest1_exec(tls, 2411 ts+5449, 0) 2412 speedtest1_end_test(tls) 2413 2414 n = sz / 5 2415 speedtest1_begin_test(tls, 310, ts+5514, libc.VaList(bp+440, n)) 2416 speedtest1_exec(tls, ts+2913, 0) 2417 speedtest1_prepare(tls, 2418 ts+5533, 0) 2419 for i = 1; i <= n; i++ { 2420 x1 = speedtest1_random(tls)%uint32(sz) + uint32(1) 2421 x2 = speedtest1_random(tls)%uint32(10) + x1 + uint32(4) 2422 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1)) 2423 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2)) 2424 speedtest1_run(tls) 2425 } 2426 speedtest1_exec(tls, ts+3023, 0) 2427 speedtest1_end_test(tls) 2428 2429 speedtest1_begin_test(tls, 320, ts+5646, libc.VaList(bp+448, n)) 2430 speedtest1_prepare(tls, 2431 ts+5669, 0) 2432 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, est_square_root(tls, g.szTest)*50) 2433 speedtest1_run(tls) 2434 speedtest1_end_test(tls) 2435 2436 sz = libc.AssignInt32(&n, g.szTest*700) 2437 *(*int8)(unsafe.Pointer(bp + 568)) = int8(0) 2438 maxb = int32(roundup_allones(tls, uint32(sz/3))) 2439 speedtest1_begin_test(tls, 400, ts+5787, libc.VaList(bp+456, n)) 2440 speedtest1_exec(tls, ts+2913, 0) 2441 speedtest1_exec(tls, ts+5812, 2442 libc.VaList(bp+464, isTemp(tls, 9), g.zNN)) 2443 speedtest1_prepare(tls, ts+5860, libc.VaList(bp+480, n)) 2444 for i = 1; i <= n; i++ { 2445 x1 = swizzle(tls, uint32(i), uint32(maxb)) 2446 speedtest1_numbername(tls, uint32(i), bp+568, int32(unsafe.Sizeof([2000]int8{}))) 2447 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(sqlite3_int64(x1))) 2448 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+568, -1, uintptr(0)) 2449 speedtest1_run(tls) 2450 } 2451 speedtest1_exec(tls, ts+3023, 0) 2452 speedtest1_end_test(tls) 2453 speedtest1_begin_test(tls, 410, ts+5904, libc.VaList(bp+488, n)) 2454 speedtest1_prepare(tls, ts+5925, libc.VaList(bp+496, n)) 2455 for i = 1; i <= n; i++ { 2456 x1 = swizzle(tls, uint32(i), uint32(maxb)) 2457 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(sqlite3_int64(x1))) 2458 speedtest1_run(tls) 2459 } 2460 speedtest1_end_test(tls) 2461 2462 sz = libc.AssignInt32(&n, g.szTest*700) 2463 *(*int8)(unsafe.Pointer(bp + 568)) = int8(0) 2464 maxb = int32(roundup_allones(tls, uint32(sz/3))) 2465 speedtest1_begin_test(tls, 500, ts+5967, libc.VaList(bp+504, n)) 2466 speedtest1_exec(tls, ts+2913, 0) 2467 speedtest1_exec(tls, ts+5989, 2468 libc.VaList(bp+512, isTemp(tls, 9), g.zNN, 2469 func() uintptr { 2470 if sqlite3.Xsqlite3_libversion_number(tls) >= 3008002 { 2471 return ts + 6036 2472 } 2473 return ts + 2269 2474 }())) 2475 speedtest1_prepare(tls, ts+6050, libc.VaList(bp+536, n)) 2476 for i = 1; i <= n; i++ { 2477 x1 = swizzle(tls, uint32(i), uint32(maxb)) 2478 speedtest1_numbername(tls, x1, bp+568, int32(unsafe.Sizeof([2000]int8{}))) 2479 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, i) 2480 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, -1, uintptr(0)) 2481 speedtest1_run(tls) 2482 } 2483 speedtest1_exec(tls, ts+3023, 0) 2484 speedtest1_end_test(tls) 2485 speedtest1_begin_test(tls, 510, ts+6094, libc.VaList(bp+544, n)) 2486 speedtest1_prepare(tls, ts+6118, libc.VaList(bp+552, n)) 2487 for i = 1; i <= n; i++ { 2488 x1 = swizzle(tls, uint32(i), uint32(maxb)) 2489 speedtest1_numbername(tls, x1, bp+568, int32(unsafe.Sizeof([2000]int8{}))) 2490 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, -1, uintptr(0)) 2491 speedtest1_run(tls) 2492 } 2493 speedtest1_end_test(tls) 2494 speedtest1_begin_test(tls, 520, ts+6160, libc.VaList(bp+560, n)) 2495 speedtest1_exec(tls, ts+6179, 0) 2496 speedtest1_exec(tls, ts+6206, 0) 2497 speedtest1_end_test(tls) 2498 2499 speedtest1_begin_test(tls, 980, ts+6233, 0) 2500 speedtest1_exec(tls, ts+6233, 0) 2501 speedtest1_end_test(tls) 2502 2503 speedtest1_begin_test(tls, 990, ts+6256, 0) 2504 speedtest1_exec(tls, ts+6256, 0) 2505 speedtest1_end_test(tls) 2506 } 2507 2508 func testset_cte(tls *libc.TLS) { 2509 bp := tls.Alloc(32) 2510 defer tls.Free(32) 2511 2512 var zPuz uintptr 2513 var rSpacing float64 2514 var nElem int32 2515 2516 if g.szTest < 25 { 2517 zPuz = azPuzzle[0] 2518 } else if g.szTest < 70 { 2519 zPuz = azPuzzle[1] 2520 } else { 2521 zPuz = azPuzzle[2] 2522 } 2523 speedtest1_begin_test(tls, 100, ts+6264, 0) 2524 speedtest1_prepare(tls, 2525 ts+6295, 0) 2526 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, zPuz, -1, uintptr(0)) 2527 speedtest1_run(tls) 2528 speedtest1_end_test(tls) 2529 2530 speedtest1_begin_test(tls, 200, ts+7099, 0) 2531 speedtest1_prepare(tls, 2532 ts+7127, 0) 2533 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, zPuz, -1, uintptr(0)) 2534 speedtest1_run(tls) 2535 speedtest1_end_test(tls) 2536 2537 rSpacing = 5.0 / float64(g.szTest) 2538 speedtest1_begin_test(tls, 300, ts+7939, libc.VaList(bp, rSpacing)) 2539 speedtest1_prepare(tls, 2540 ts+7970, 0) 2541 sqlite3.Xsqlite3_bind_double(tls, g.pStmt, 1, rSpacing*.05) 2542 sqlite3.Xsqlite3_bind_double(tls, g.pStmt, 2, rSpacing) 2543 speedtest1_run(tls) 2544 speedtest1_end_test(tls) 2545 2546 nElem = 10000 * g.szTest 2547 speedtest1_begin_test(tls, 400, ts+8566, libc.VaList(bp+8, nElem)) 2548 speedtest1_prepare(tls, 2549 ts+8603, 2550 libc.VaList(bp+16, nElem, nElem)) 2551 speedtest1_run(tls) 2552 speedtest1_end_test(tls) 2553 } 2554 2555 var azPuzzle = [3]uintptr{ 2556 ts + 8834, 2557 ts + 8916, 2558 ts + 8998, 2559 } 2560 2561 func speedtest1_random_ascii_fp(tls *libc.TLS, zFP uintptr) { 2562 bp := tls.Alloc(24) 2563 defer tls.Free(24) 2564 2565 var x int32 = int32(speedtest1_random(tls)) 2566 var y int32 = int32(speedtest1_random(tls)) 2567 var z int32 2568 z = y % 10 2569 if z < 0 { 2570 z = -z 2571 } 2572 y = y / 10 2573 sqlite3.Xsqlite3_snprintf(tls, 100, zFP, ts+9080, libc.VaList(bp, y, z, x%200)) 2574 } 2575 2576 func testset_fp(tls *libc.TLS) { 2577 bp := tls.Alloc(272) 2578 defer tls.Free(272) 2579 2580 var n int32 2581 var i int32 2582 2583 n = g.szTest * 5000 2584 speedtest1_begin_test(tls, 100, ts+9089, libc.VaList(bp, n*2)) 2585 speedtest1_exec(tls, ts+2913, 0) 2586 speedtest1_exec(tls, ts+9120, 2587 libc.VaList(bp+8, isTemp(tls, 1), g.zNN, g.zNN)) 2588 speedtest1_prepare(tls, ts+9161, libc.VaList(bp+32, n)) 2589 for i = 1; i <= n; i++ { 2590 speedtest1_random_ascii_fp(tls, bp+72) 2591 speedtest1_random_ascii_fp(tls, bp+172) 2592 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+72, -1, uintptr(0)) 2593 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+172, -1, uintptr(0)) 2594 speedtest1_run(tls) 2595 } 2596 speedtest1_exec(tls, ts+3023, 0) 2597 speedtest1_end_test(tls) 2598 2599 n = g.szTest/25 + 2 2600 speedtest1_begin_test(tls, 110, ts+9203, libc.VaList(bp+40, n)) 2601 speedtest1_prepare(tls, ts+9220, 0) 2602 for i = 1; i <= n; i++ { 2603 speedtest1_random_ascii_fp(tls, bp+72) 2604 speedtest1_random_ascii_fp(tls, bp+172) 2605 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+72, -1, uintptr(0)) 2606 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+172, -1, uintptr(0)) 2607 speedtest1_run(tls) 2608 } 2609 speedtest1_end_test(tls) 2610 2611 speedtest1_begin_test(tls, 120, ts+9268, 0) 2612 speedtest1_exec(tls, ts+3826, 0) 2613 speedtest1_exec(tls, ts+9293, 0) 2614 speedtest1_exec(tls, ts+9320, 0) 2615 speedtest1_exec(tls, ts+9347, 0) 2616 speedtest1_exec(tls, ts+3990, 0) 2617 speedtest1_end_test(tls) 2618 2619 n = g.szTest/3 + 2 2620 speedtest1_begin_test(tls, 130, ts+9377, libc.VaList(bp+48, n)) 2621 speedtest1_prepare(tls, ts+9220, 0) 2622 for i = 1; i <= n; i++ { 2623 speedtest1_random_ascii_fp(tls, bp+72) 2624 speedtest1_random_ascii_fp(tls, bp+172) 2625 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+72, -1, uintptr(0)) 2626 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+172, -1, uintptr(0)) 2627 speedtest1_run(tls) 2628 } 2629 speedtest1_end_test(tls) 2630 2631 n = g.szTest * 5000 2632 speedtest1_begin_test(tls, 140, ts+9402, libc.VaList(bp+56, n)) 2633 speedtest1_exec(tls, ts+9422, 0) 2634 speedtest1_end_test(tls) 2635 2636 speedtest1_begin_test(tls, 150, ts+9465, libc.VaList(bp+64, n*4)) 2637 speedtest1_exec(tls, 2638 ts+9483, 0) 2639 speedtest1_end_test(tls) 2640 } 2641 2642 func twoCoords(tls *libc.TLS, p1 int32, p2 int32, mx uint32, pX0 uintptr, pX1 uintptr) { 2643 var d uint32 2644 var x0 uint32 2645 var x1 uint32 2646 var span uint32 2647 2648 span = mx/uint32(100) + uint32(1) 2649 if speedtest1_random(tls)%uint32(3) == uint32(0) { 2650 span = span * uint32(p1) 2651 } 2652 if speedtest1_random(tls)%uint32(p2) == uint32(0) { 2653 span = mx / uint32(2) 2654 } 2655 d = speedtest1_random(tls)%span + uint32(1) 2656 x0 = speedtest1_random(tls)%(mx-d) + uint32(1) 2657 x1 = x0 + d 2658 *(*uint32)(unsafe.Pointer(pX0)) = x0 2659 *(*uint32)(unsafe.Pointer(pX1)) = x1 2660 } 2661 2662 func xsliceGeometryCallback(tls *libc.TLS, p uintptr, nCoord int32, aCoord uintptr, pRes uintptr) int32 { 2663 *(*int32)(unsafe.Pointer(pRes)) = libc.Bool32(*(*float64)(unsafe.Pointer(aCoord + 3*8)) >= *(*sqlite3_rtree_dbl)(unsafe.Pointer((*sqlite3_rtree_geometry)(unsafe.Pointer(p)).aParam)) && *(*float64)(unsafe.Pointer(aCoord + 2*8)) <= *(*sqlite3_rtree_dbl)(unsafe.Pointer((*sqlite3_rtree_geometry)(unsafe.Pointer(p)).aParam + 1*8))) 2664 return SQLITE_OK 2665 } 2666 2667 func testset_rtree(tls *libc.TLS, p1 int32, p2 int32) { 2668 bp := tls.Alloc(224) 2669 defer tls.Free(224) 2670 2671 var i uint32 2672 var n uint32 2673 var mxCoord uint32 2674 2675 var iStep uint32 2676 var mxRowid uint32 2677 var aCheck uintptr = sqlite3.Xsqlite3_malloc(tls, int32(uint64(unsafe.Sizeof(int32(0)))*uint64(g.szTest)*uint64(500))) 2678 2679 mxCoord = uint32(15000) 2680 mxRowid = libc.AssignUint32(&n, uint32(g.szTest*500)) 2681 speedtest1_begin_test(tls, 100, ts+9578, libc.VaList(bp, n)) 2682 speedtest1_exec(tls, ts+2913, 0) 2683 speedtest1_exec(tls, ts+9604, 0) 2684 speedtest1_prepare(tls, 2685 ts+9663, 0) 2686 for i = uint32(1); i <= n; i++ { 2687 twoCoords(tls, p1, p2, mxCoord, bp+200, bp+204) 2688 twoCoords(tls, p1, p2, mxCoord, bp+208, bp+212) 2689 twoCoords(tls, p1, p2, mxCoord, bp+216, bp+220) 2690 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i)) 2691 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(*(*uint32)(unsafe.Pointer(bp + 200)))) 2692 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 3, int32(*(*uint32)(unsafe.Pointer(bp + 204)))) 2693 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 4, int32(*(*uint32)(unsafe.Pointer(bp + 208)))) 2694 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 5, int32(*(*uint32)(unsafe.Pointer(bp + 212)))) 2695 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 6, int32(*(*uint32)(unsafe.Pointer(bp + 216)))) 2696 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 7, int32(*(*uint32)(unsafe.Pointer(bp + 220)))) 2697 speedtest1_run(tls) 2698 } 2699 speedtest1_exec(tls, ts+3023, 0) 2700 speedtest1_end_test(tls) 2701 2702 speedtest1_begin_test(tls, 101, ts+9729, 0) 2703 speedtest1_exec(tls, ts+9764, 0) 2704 speedtest1_exec(tls, ts+9822, 0) 2705 speedtest1_end_test(tls) 2706 2707 n = uint32(g.szTest * 200) 2708 speedtest1_begin_test(tls, 110, ts+9855, libc.VaList(bp+8, n)) 2709 speedtest1_prepare(tls, ts+9898, 0) 2710 iStep = mxCoord / n 2711 for i = uint32(0); i < n; i++ { 2712 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep)) 2713 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep)) 2714 speedtest1_run(tls) 2715 *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) = libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124) 2716 } 2717 speedtest1_end_test(tls) 2718 2719 if g.bVerify != 0 { 2720 n = uint32(g.szTest * 200) 2721 speedtest1_begin_test(tls, 111, ts+9947, 0) 2722 speedtest1_prepare(tls, ts+9994, 0) 2723 iStep = mxCoord / n 2724 for i = uint32(0); i < n; i++ { 2725 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep)) 2726 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep)) 2727 speedtest1_run(tls) 2728 if *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) != libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124) { 2729 fatal_error(tls, ts+10042, 2730 libc.VaList(bp+16, i, i*iStep, (i+uint32(1))*iStep, *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)), libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124))) 2731 } 2732 } 2733 speedtest1_end_test(tls) 2734 } 2735 2736 n = uint32(g.szTest * 200) 2737 speedtest1_begin_test(tls, 120, ts+10084, libc.VaList(bp+56, n)) 2738 speedtest1_prepare(tls, ts+10125, 0) 2739 iStep = mxCoord / n 2740 for i = uint32(0); i < n; i++ { 2741 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep)) 2742 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep)) 2743 speedtest1_run(tls) 2744 *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) = libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124) 2745 } 2746 speedtest1_end_test(tls) 2747 2748 if g.bVerify != 0 { 2749 n = uint32(g.szTest * 200) 2750 speedtest1_begin_test(tls, 121, ts+10174, 0) 2751 speedtest1_prepare(tls, ts+10219, 0) 2752 iStep = mxCoord / n 2753 for i = uint32(0); i < n; i++ { 2754 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep)) 2755 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep)) 2756 speedtest1_run(tls) 2757 if *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) != libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124) { 2758 fatal_error(tls, ts+10042, 2759 libc.VaList(bp+64, i, i*iStep, (i+uint32(1))*iStep, *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)), libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124))) 2760 } 2761 } 2762 speedtest1_end_test(tls) 2763 } 2764 2765 n = uint32(g.szTest * 200) 2766 speedtest1_begin_test(tls, 125, ts+10267, libc.VaList(bp+104, n)) 2767 sqlite3.Xsqlite3_rtree_geometry_callback(tls, g.db, ts+10303, *(*uintptr)(unsafe.Pointer(&struct { 2768 f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 2769 }{xsliceGeometryCallback})), uintptr(0)) 2770 speedtest1_prepare(tls, ts+10310, 0) 2771 iStep = mxCoord / n 2772 for i = uint32(0); i < n; i++ { 2773 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep)) 2774 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep)) 2775 speedtest1_run(tls) 2776 if *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) != libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124) { 2777 fatal_error(tls, ts+10042, 2778 libc.VaList(bp+112, i, i*iStep, (i+uint32(1))*iStep, *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)), libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124))) 2779 } 2780 } 2781 speedtest1_end_test(tls) 2782 2783 n = uint32(g.szTest * 400) 2784 speedtest1_begin_test(tls, 130, ts+10364, libc.VaList(bp+152, n)) 2785 speedtest1_prepare(tls, 2786 ts+10407, 0) 2787 iStep = mxCoord / n 2788 for i = uint32(0); i < n; i++ { 2789 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep)) 2790 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep)) 2791 speedtest1_run(tls) 2792 *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) = libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124) 2793 } 2794 speedtest1_end_test(tls) 2795 2796 n = uint32(g.szTest * 500) 2797 speedtest1_begin_test(tls, 140, ts+10500, libc.VaList(bp+160, n)) 2798 speedtest1_prepare(tls, ts+10517, 0) 2799 for i = uint32(1); i <= n; i++ { 2800 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i)) 2801 speedtest1_run(tls) 2802 } 2803 speedtest1_end_test(tls) 2804 2805 n = uint32(g.szTest * 50) 2806 speedtest1_begin_test(tls, 150, ts+10547, libc.VaList(bp+168, n)) 2807 speedtest1_prepare(tls, ts+10570, 0) 2808 for i = uint32(1); i <= n; i++ { 2809 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*uint32(251)%mxRowid+uint32(1))) 2810 speedtest1_run(tls) 2811 } 2812 speedtest1_end_test(tls) 2813 2814 n = uint32(g.szTest * 5) 2815 speedtest1_begin_test(tls, 155, ts+10618, libc.VaList(bp+176, n)) 2816 speedtest1_prepare(tls, 2817 ts+10659, 0) 2818 iStep = mxCoord / n 2819 for i = uint32(0); i < n; i++ { 2820 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep)) 2821 speedtest1_run(tls) 2822 *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) = libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124) 2823 } 2824 speedtest1_end_test(tls) 2825 2826 n = uint32(g.szTest * 50) 2827 speedtest1_begin_test(tls, 160, ts+10721, libc.VaList(bp+184, n)) 2828 speedtest1_prepare(tls, ts+10744, 0) 2829 for i = uint32(1); i <= n; i++ { 2830 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*uint32(257)%mxRowid+uint32(1))) 2831 speedtest1_run(tls) 2832 } 2833 speedtest1_end_test(tls) 2834 2835 n = uint32(g.szTest * 5) 2836 speedtest1_begin_test(tls, 165, ts+10772, libc.VaList(bp+192, n)) 2837 speedtest1_prepare(tls, ts+10813, 0) 2838 iStep = mxCoord / n 2839 for i = uint32(0); i < n; i++ { 2840 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep)) 2841 speedtest1_run(tls) 2842 *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) = libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124) 2843 } 2844 speedtest1_end_test(tls) 2845 2846 speedtest1_begin_test(tls, 170, ts+10855, 0) 2847 speedtest1_exec(tls, ts+10902, 0) 2848 speedtest1_end_test(tls) 2849 } 2850 2851 func testset_orm(tls *libc.TLS) { 2852 bp := tls.Alloc(2016) 2853 defer tls.Free(2016) 2854 2855 var i uint32 2856 var j uint32 2857 var n uint32 2858 var nRow uint32 2859 var x1 uint32 2860 var len uint32 2861 2862 nRow = libc.AssignUint32(&n, uint32(g.szTest*250)) 2863 speedtest1_begin_test(tls, 100, ts+10945, libc.VaList(bp, n)) 2864 speedtest1_exec(tls, 2865 ts+10958, 0) 2866 speedtest1_prepare(tls, 2867 ts+14858, 0) 2868 for i = uint32(0); i < n; i++ { 2869 x1 = speedtest1_random(tls) 2870 speedtest1_numbername(tls, x1%uint32(1000), bp+16, int32(unsafe.Sizeof([2000]int8{}))) 2871 len = uint32(int32(libc.Xstrlen(tls, bp+16))) 2872 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i^uint32(0xf))) 2873 for j = uint32(0); zType[j] != 0; j++ { 2874 switch int32(zType[j]) { 2875 case 'I': 2876 fallthrough 2877 case 'T': 2878 sqlite3.Xsqlite3_bind_int64(tls, g.pStmt, int32(j+uint32(2)), int64(x1)) 2879 break 2880 case 'F': 2881 sqlite3.Xsqlite3_bind_double(tls, g.pStmt, int32(j+uint32(2)), float64(x1)) 2882 break 2883 case 'V': 2884 fallthrough 2885 case 'B': 2886 sqlite3.Xsqlite3_bind_text64(tls, g.pStmt, int32(j+uint32(2)), bp+16, uint64(len), 2887 uintptr(0), uint8(SQLITE_UTF8)) 2888 break 2889 } 2890 } 2891 speedtest1_run(tls) 2892 } 2893 speedtest1_exec(tls, ts+3990, 0) 2894 speedtest1_end_test(tls) 2895 2896 n = uint32(g.szTest * 250) 2897 speedtest1_begin_test(tls, 110, ts+18102, libc.VaList(bp+8, n)) 2898 speedtest1_prepare(tls, 2899 ts+18125, 0) 2900 for i = uint32(0); i < n; i++ { 2901 x1 = speedtest1_random(tls) % nRow 2902 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1)) 2903 speedtest1_run(tls) 2904 } 2905 speedtest1_end_test(tls) 2906 } 2907 2908 var zType = *(*[120]int8)(unsafe.Pointer(ts + 20878)) 2909 2910 func testset_trigger(tls *libc.TLS) { 2911 bp := tls.Alloc(2032) 2912 defer tls.Free(2032) 2913 2914 var jj int32 2915 var ii int32 2916 2917 var NROW int32 = 500 * g.szTest 2918 var NROW2 int32 = 100 * g.szTest 2919 2920 speedtest1_exec(tls, 2921 ts+20998, 0) 2922 for jj = 1; jj <= 3; jj++ { 2923 speedtest1_prepare(tls, ts+21326, libc.VaList(bp, jj)) 2924 for ii = 0; ii < NROW; ii++ { 2925 var x1 int32 = int32(speedtest1_random(tls) % uint32(NROW)) 2926 speedtest1_numbername(tls, uint32(x1), bp+32, int32(unsafe.Sizeof([2000]int8{}))) 2927 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, x1) 2928 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+32, -1, uintptr(0)) 2929 speedtest1_run(tls) 2930 } 2931 } 2932 speedtest1_exec(tls, 2933 ts+21361, 0) 2934 2935 speedtest1_begin_test(tls, 100, ts+21444, 0) 2936 speedtest1_prepare(tls, 2937 ts+21458, 0) 2938 speedtest1_run(tls) 2939 speedtest1_end_test(tls) 2940 2941 speedtest1_begin_test(tls, 110, ts+21525, 0) 2942 speedtest1_prepare(tls, 2943 ts+21539, 0) 2944 speedtest1_run(tls) 2945 speedtest1_end_test(tls) 2946 2947 speedtest1_begin_test(tls, 120, ts+21598, 0) 2948 for jj = 1; jj <= 3; jj++ { 2949 speedtest1_prepare(tls, ts+21612, libc.VaList(bp+8, jj)) 2950 for ii = 0; ii < NROW2; ii = ii + 3 { 2951 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, ii*3) 2952 speedtest1_run(tls) 2953 } 2954 } 2955 speedtest1_end_test(tls) 2956 2957 speedtest1_begin_test(tls, 130, ts+21646, 0) 2958 for jj = 1; jj <= 3; jj++ { 2959 speedtest1_prepare(tls, ts+21661, libc.VaList(bp+16, jj)) 2960 for ii = 0; ii < NROW2; ii = ii + 3 { 2961 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, ii*3) 2962 speedtest1_run(tls) 2963 } 2964 } 2965 speedtest1_end_test(tls) 2966 2967 speedtest1_begin_test(tls, 140, ts+21646, 0) 2968 for jj = 1; jj <= 3; jj++ { 2969 speedtest1_prepare(tls, ts+21661, libc.VaList(bp+24, jj)) 2970 for ii = 0; ii < NROW2; ii = ii + 3 { 2971 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, ii*3) 2972 speedtest1_run(tls) 2973 } 2974 } 2975 speedtest1_end_test(tls) 2976 2977 speedtest1_begin_test(tls, 150, ts+21695, 0) 2978 speedtest1_prepare(tls, 2979 ts+21714, 0) 2980 for jj = 0; jj < NROW2; jj++ { 2981 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj*3) 2982 speedtest1_run(tls) 2983 } 2984 speedtest1_end_test(tls) 2985 2986 speedtest1_begin_test(tls, 160, ts+21829, 0) 2987 speedtest1_exec(tls, ts+2913, 0) 2988 speedtest1_prepare(tls, ts+21850, 0) 2989 for jj = 0; jj < NROW2; jj++ { 2990 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj) 2991 speedtest1_run(tls) 2992 } 2993 speedtest1_exec(tls, ts+3023, 0) 2994 speedtest1_end_test(tls) 2995 2996 speedtest1_exec(tls, ts+21885, 0) 2997 speedtest1_begin_test(tls, 170, ts+21933, 0) 2998 speedtest1_exec(tls, ts+21955, 0) 2999 speedtest1_end_test(tls) 3000 3001 speedtest1_exec(tls, 3002 ts+22000, 0) 3003 3004 speedtest1_begin_test(tls, 180, ts+22490, 0) 3005 speedtest1_prepare(tls, ts+22507, 0) 3006 for jj = 0; jj < NROW2; jj++ { 3007 speedtest1_numbername(tls, uint32(jj), bp+32, int32(unsafe.Sizeof([2000]int8{}))) 3008 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj) 3009 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+32, -1, uintptr(0)) 3010 speedtest1_run(tls) 3011 } 3012 speedtest1_end_test(tls) 3013 3014 speedtest1_begin_test(tls, 190, ts+22543, 0) 3015 speedtest1_prepare(tls, ts+22560, 0) 3016 for jj = 1; jj <= NROW2*2; jj = jj + 2 { 3017 speedtest1_numbername(tls, uint32(jj*2), bp+32, int32(unsafe.Sizeof([2000]int8{}))) 3018 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj*2) 3019 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+32, -1, uintptr(0)) 3020 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 3, jj) 3021 speedtest1_run(tls) 3022 } 3023 speedtest1_end_test(tls) 3024 3025 speedtest1_begin_test(tls, 200, ts+22606, 0) 3026 speedtest1_prepare(tls, ts+22623, 0) 3027 for jj = 1; jj <= NROW2*2; jj = jj + 2 { 3028 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj*2) 3029 speedtest1_run(tls) 3030 } 3031 speedtest1_end_test(tls) 3032 speedtest1_exec(tls, ts+3023, 0) 3033 3034 speedtest1_exec(tls, 3035 ts+22655, 0) 3036 speedtest1_begin_test(tls, 210, ts+22760, 0) 3037 speedtest1_prepare(tls, ts+22507, 0) 3038 for jj = 0; jj < NROW2; jj++ { 3039 speedtest1_numbername(tls, uint32(jj), bp+32, int32(unsafe.Sizeof([2000]int8{}))) 3040 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj) 3041 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+32, -1, uintptr(0)) 3042 speedtest1_run(tls) 3043 } 3044 speedtest1_end_test(tls) 3045 speedtest1_begin_test(tls, 210, ts+22779, 0) 3046 speedtest1_prepare(tls, ts+22560, 0) 3047 for jj = 1; jj <= NROW2*2; jj = jj + 2 { 3048 speedtest1_numbername(tls, uint32(jj*2), bp+32, int32(unsafe.Sizeof([2000]int8{}))) 3049 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj*2) 3050 sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+32, -1, uintptr(0)) 3051 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 3, jj) 3052 speedtest1_run(tls) 3053 } 3054 speedtest1_end_test(tls) 3055 speedtest1_begin_test(tls, 220, ts+22798, 0) 3056 speedtest1_prepare(tls, ts+22623, 0) 3057 for jj = 1; jj <= NROW2*2; jj = jj + 2 { 3058 sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj*2) 3059 speedtest1_run(tls) 3060 } 3061 speedtest1_end_test(tls) 3062 speedtest1_exec(tls, ts+3023, 0) 3063 } 3064 3065 func testset_debug1(tls *libc.TLS) { 3066 bp := tls.Alloc(2032) 3067 defer tls.Free(2032) 3068 3069 var i uint32 3070 var n uint32 3071 var x1 uint32 3072 var x2 uint32 3073 3074 n = uint32(g.szTest) 3075 for i = uint32(1); i <= n; i++ { 3076 x1 = swizzle(tls, i, n) 3077 x2 = swizzle(tls, x1, n) 3078 speedtest1_numbername(tls, x1, bp+32, int32(unsafe.Sizeof([2000]int8{}))) 3079 libc.Xprintf(tls, ts+22817, libc.VaList(bp, i, x1, x2, bp+32)) 3080 } 3081 } 3082 3083 func xCompileOptions(tls *libc.TLS, pCtx uintptr, nVal int32, azVal uintptr, azCol uintptr) int32 { 3084 bp := tls.Alloc(8) 3085 defer tls.Free(8) 3086 3087 libc.Xprintf(tls, ts+22833, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(azVal)))) 3088 return SQLITE_OK 3089 } 3090 3091 func main1(tls *libc.TLS, argc int32, argv uintptr) int32 { 3092 bp := tls.Alloc(576) 3093 defer tls.Free(576) 3094 3095 var doAutovac int32 = 0 3096 var cacheSize int32 = 0 3097 var doExclusive int32 = 0 3098 var nHeap int32 = 0 3099 var mnHeap int32 = 0 3100 var doIncrvac int32 = 0 3101 var zJMode uintptr = uintptr(0) 3102 var zKey uintptr = uintptr(0) 3103 var nLook int32 = -1 3104 var szLook int32 = 0 3105 var noSync int32 = 0 3106 var pageSize int32 = 0 3107 var nPCache int32 = 0 3108 var szPCache int32 = 0 3109 var doPCache int32 = 0 3110 var showStats int32 = 0 3111 var nThread int32 = 0 3112 var mmapSize int32 = 0 3113 var memDb int32 = 0 3114 var zTSet uintptr = ts + 22856 3115 var doTrace int32 = 0 3116 var zEncoding uintptr = uintptr(0) 3117 var zDbName uintptr = uintptr(0) 3118 3119 var pHeap uintptr = uintptr(0) 3120 var pLook uintptr = uintptr(0) 3121 var pPCache uintptr = uintptr(0) 3122 3123 var i int32 3124 var rc int32 3125 3126 libc.Xprintf(tls, ts+22861, 3127 libc.VaList(bp, sqlite3.Xsqlite3_libversion(tls), sqlite3.Xsqlite3_sourceid(tls))) 3128 3129 g.zWR = ts + 2269 3130 g.zNN = ts + 2269 3131 g.zPK = ts + 22896 3132 g.szTest = 100 3133 g.nRepeat = 1 3134 for i = 1; i < argc; i++ { 3135 var z uintptr = *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)) 3136 if int32(*(*int8)(unsafe.Pointer(z))) == '-' { 3137 for __ccgo := true; __ccgo; __ccgo = int32(*(*int8)(unsafe.Pointer(z))) == '-' { 3138 z++ 3139 } 3140 if libc.Xstrcmp(tls, z, ts+22903) == 0 { 3141 doAutovac = 1 3142 } else if libc.Xstrcmp(tls, z, ts+22914) == 0 { 3143 if i >= argc-1 { 3144 fatal_error(tls, ts+22924, libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3145 } 3146 i++ 3147 cacheSize = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))) 3148 } else if libc.Xstrcmp(tls, z, ts+22948) == 0 { 3149 doExclusive = 1 3150 } else if libc.Xstrcmp(tls, z, ts+22958) == 0 { 3151 g.doCheckpoint = 1 3152 } else if libc.Xstrcmp(tls, z, ts+22969) == 0 { 3153 g.bSqlOnly = 1 3154 g.bExplain = 1 3155 } else if libc.Xstrcmp(tls, z, ts+22977) == 0 { 3156 if i >= argc-2 { 3157 fatal_error(tls, ts+22982, libc.VaList(bp+24, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3158 } 3159 nHeap = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+1)*8))) 3160 mnHeap = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+2)*8))) 3161 i = i + 2 3162 } else if libc.Xstrcmp(tls, z, ts+23007) == 0 { 3163 doIncrvac = 1 3164 } else if libc.Xstrcmp(tls, z, ts+23018) == 0 { 3165 if i >= argc-1 { 3166 fatal_error(tls, ts+22924, libc.VaList(bp+32, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3167 } 3168 zJMode = *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8)) 3169 } else if libc.Xstrcmp(tls, z, ts+23026) == 0 { 3170 if i >= argc-1 { 3171 fatal_error(tls, ts+22924, libc.VaList(bp+40, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3172 } 3173 zKey = *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8)) 3174 } else if libc.Xstrcmp(tls, z, ts+23030) == 0 { 3175 if i >= argc-2 { 3176 fatal_error(tls, ts+22982, libc.VaList(bp+48, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3177 } 3178 nLook = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+1)*8))) 3179 szLook = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+2)*8))) 3180 i = i + 2 3181 } else if libc.Xstrcmp(tls, z, ts+23040) == 0 { 3182 memDb = 1 3183 } else if libc.Xstrcmp(tls, z, ts+23046) == 0 { 3184 sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_MULTITHREAD, 0) 3185 } else if libc.Xstrcmp(tls, z, ts+23058) == 0 { 3186 sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_MEMSTATUS, libc.VaList(bp+56, 0)) 3187 } else if libc.Xstrcmp(tls, z, ts+23068) == 0 { 3188 if i >= argc-1 { 3189 fatal_error(tls, ts+22924, libc.VaList(bp+64, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3190 } 3191 mmapSize = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8))) 3192 } else if libc.Xstrcmp(tls, z, ts+23073) == 0 { 3193 noSync = 1 3194 } else if libc.Xstrcmp(tls, z, ts+23080) == 0 { 3195 g.zNN = ts + 23088 3196 } else if libc.Xstrcmp(tls, z, ts+23097) == 0 { 3197 if i >= argc-1 { 3198 fatal_error(tls, ts+22924, libc.VaList(bp+72, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3199 } 3200 i++ 3201 if libc.Xstrcmp(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)), ts+23104) == 0 { 3202 g.hashFile = uintptr(unsafe.Pointer(&libc.X__sF)) + 1*152 3203 } else { 3204 g.hashFile = libc.Xfopen(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)), ts+23106) 3205 if g.hashFile == uintptr(0) { 3206 fatal_error(tls, ts+23109, libc.VaList(bp+80, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3207 } 3208 } 3209 } else if libc.Xstrcmp(tls, z, ts+23139) == 0 { 3210 if i >= argc-1 { 3211 fatal_error(tls, ts+22924, libc.VaList(bp+88, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3212 } 3213 pageSize = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8))) 3214 } else if libc.Xstrcmp(tls, z, ts+23148) == 0 { 3215 if i >= argc-2 { 3216 fatal_error(tls, ts+22982, libc.VaList(bp+96, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3217 } 3218 nPCache = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+1)*8))) 3219 szPCache = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+2)*8))) 3220 doPCache = 1 3221 i = i + 2 3222 } else if libc.Xstrcmp(tls, z, ts+23155) == 0 { 3223 g.zPK = ts + 23166 3224 } else if libc.Xstrcmp(tls, z, ts+23178) == 0 { 3225 if i >= argc-1 { 3226 fatal_error(tls, ts+22982, libc.VaList(bp+104, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3227 } 3228 g.nRepeat = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+1)*8))) 3229 i = i + 1 3230 } else if libc.Xstrcmp(tls, z, ts+23185) == 0 { 3231 g.bReprepare = 1 3232 } else if libc.Xstrcmp(tls, z, ts+23195) == 0 { 3233 sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_SERIALIZED, 0) 3234 } else if libc.Xstrcmp(tls, z, ts+23206) == 0 { 3235 sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_SINGLETHREAD, 0) 3236 } else if libc.Xstrcmp(tls, z, ts+23219) == 0 { 3237 g.bSqlOnly = 1 3238 } else if libc.Xstrcmp(tls, z, ts+23227) == 0 { 3239 g.bMemShrink = 1 3240 } else if libc.Xstrcmp(tls, z, ts+23241) == 0 { 3241 if i >= argc-1 { 3242 fatal_error(tls, ts+22924, libc.VaList(bp+112, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3243 } 3244 g.szTest = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8))) 3245 } else if libc.Xstrcmp(tls, z, ts+23246) == 0 { 3246 showStats = 1 3247 } else if libc.Xstrcmp(tls, z, ts+23252) == 0 { 3248 if i >= argc-1 { 3249 fatal_error(tls, ts+22924, libc.VaList(bp+120, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3250 } 3251 i++ 3252 if int32(*(*int8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))) < '0' || int32(*(*int8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))) > '9' || int32(*(*int8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)) + 1))) != 0 { 3253 fatal_error(tls, ts+23257, 0) 3254 } 3255 g.eTemp = int32(*(*int8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))) - '0' 3256 } else if libc.Xstrcmp(tls, z, ts+23310) == 0 { 3257 if i >= argc-1 { 3258 fatal_error(tls, ts+22924, libc.VaList(bp+128, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3259 } 3260 zTSet = *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8)) 3261 } else if libc.Xstrcmp(tls, z, ts+23318) == 0 { 3262 doTrace = 1 3263 } else if libc.Xstrcmp(tls, z, ts+23324) == 0 { 3264 if i >= argc-1 { 3265 fatal_error(tls, ts+22924, libc.VaList(bp+136, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3266 } 3267 nThread = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8))) 3268 } else if libc.Xstrcmp(tls, z, ts+23332) == 0 { 3269 zEncoding = ts + 23332 3270 } else if libc.Xstrcmp(tls, z, ts+23340) == 0 { 3271 zEncoding = ts + 23340 3272 } else if libc.Xstrcmp(tls, z, ts+23348) == 0 { 3273 g.bVerify = 1 3274 HashInit(tls) 3275 } else if libc.Xstrcmp(tls, z, ts+23355) == 0 { 3276 if i >= argc-1 { 3277 fatal_error(tls, ts+22924, libc.VaList(bp+144, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) 3278 } 3279 g.nReserve = libc.Xatoi(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8))) 3280 } else if libc.Xstrcmp(tls, z, ts+23363) == 0 { 3281 if libc.Xstrstr(tls, g.zWR, ts+23377) != uintptr(0) { 3282 } else if libc.Xstrstr(tls, g.zWR, ts+23385) != uintptr(0) { 3283 g.zWR = ts + 23392 3284 } else { 3285 g.zWR = ts + 6036 3286 } 3287 g.zPK = ts + 23166 3288 } else if libc.Xstrcmp(tls, z, ts+23413) == 0 { 3289 if libc.Xstrstr(tls, g.zWR, ts+23385) != uintptr(0) { 3290 } else if libc.Xstrstr(tls, g.zWR, ts+23377) != uintptr(0) { 3291 g.zWR = ts + 23392 3292 } else { 3293 g.zWR = ts + 23385 3294 } 3295 } else if libc.Xstrcmp(tls, z, ts+23420) == 0 || libc.Xstrcmp(tls, z, ts+23425) == 0 { 3296 libc.Xprintf(tls, uintptr(unsafe.Pointer(&zHelp)), libc.VaList(bp+152, *(*uintptr)(unsafe.Pointer(argv)))) 3297 libc.Xexit(tls, 0) 3298 } else { 3299 fatal_error(tls, ts+23427, 3300 libc.VaList(bp+160, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)), *(*uintptr)(unsafe.Pointer(argv)))) 3301 } 3302 } else if zDbName == uintptr(0) { 3303 zDbName = *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)) 3304 } else { 3305 fatal_error(tls, ts+23468, 3306 libc.VaList(bp+176, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)), *(*uintptr)(unsafe.Pointer(argv)))) 3307 } 3308 } 3309 if zDbName != uintptr(0) { 3310 libc.Xunlink(tls, zDbName) 3311 } 3312 if nHeap > 0 { 3313 pHeap = libc.Xmalloc(tls, uint64(nHeap)) 3314 if pHeap == uintptr(0) { 3315 fatal_error(tls, ts+23511, libc.VaList(bp+192, nHeap)) 3316 } 3317 rc = sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_HEAP, libc.VaList(bp+200, pHeap, nHeap, mnHeap)) 3318 if rc != 0 { 3319 fatal_error(tls, ts+23541, libc.VaList(bp+224, rc)) 3320 } 3321 } 3322 if doPCache != 0 { 3323 if nPCache > 0 && szPCache > 0 { 3324 pPCache = libc.Xmalloc(tls, uint64(sqlite3_int64(nPCache)*sqlite3_int64(szPCache))) 3325 if pPCache == uintptr(0) { 3326 fatal_error(tls, ts+23572, 3327 libc.VaList(bp+232, sqlite3_int64(nPCache)*sqlite3_int64(szPCache))) 3328 } 3329 } 3330 rc = sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_PAGECACHE, libc.VaList(bp+240, pPCache, szPCache, nPCache)) 3331 if rc != 0 { 3332 fatal_error(tls, ts+23606, libc.VaList(bp+264, rc)) 3333 } 3334 } 3335 if nLook >= 0 { 3336 sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_LOOKASIDE, libc.VaList(bp+272, 0, 0)) 3337 } 3338 sqlite3.Xsqlite3_initialize(tls) 3339 3340 if sqlite3.Xsqlite3_open(tls, func() uintptr { 3341 if memDb != 0 { 3342 return ts + 23639 3343 } 3344 return zDbName 3345 }(), uintptr(unsafe.Pointer(&g))) != 0 { 3346 fatal_error(tls, ts+23648, libc.VaList(bp+288, zDbName)) 3347 } 3348 if nLook > 0 && szLook > 0 { 3349 pLook = libc.Xmalloc(tls, uint64(nLook*szLook)) 3350 rc = sqlite3.Xsqlite3_db_config(tls, g.db, SQLITE_DBCONFIG_LOOKASIDE, libc.VaList(bp+296, pLook, szLook, nLook)) 3351 if rc != 0 { 3352 fatal_error(tls, ts+23679, libc.VaList(bp+320, rc)) 3353 } 3354 } 3355 if g.nReserve > 0 { 3356 sqlite3.Xsqlite3_file_control(tls, g.db, uintptr(0), SQLITE_FCNTL_RESERVE_BYTES, uintptr(unsafe.Pointer(&g))+72) 3357 } 3358 3359 sqlite3.Xsqlite3_create_function(tls, g.db, ts+23715, 0, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct { 3360 f func(*libc.TLS, uintptr, int32, uintptr) 3361 }{randomFunc})), uintptr(0), uintptr(0)) 3362 if doTrace != 0 { 3363 sqlite3.Xsqlite3_trace(tls, g.db, *(*uintptr)(unsafe.Pointer(&struct { 3364 f func(*libc.TLS, uintptr, uintptr) 3365 }{traceCallback})), uintptr(0)) 3366 } 3367 if memDb > 0 { 3368 speedtest1_exec(tls, ts+23722, 0) 3369 } 3370 if mmapSize > 0 { 3371 speedtest1_exec(tls, ts+23747, libc.VaList(bp+328, mmapSize)) 3372 } 3373 speedtest1_exec(tls, ts+23767, libc.VaList(bp+336, nThread)) 3374 if zKey != 0 { 3375 speedtest1_exec(tls, ts+23785, libc.VaList(bp+344, zKey)) 3376 } 3377 if zEncoding != 0 { 3378 speedtest1_exec(tls, ts+23802, libc.VaList(bp+352, zEncoding)) 3379 } 3380 if doAutovac != 0 { 3381 speedtest1_exec(tls, ts+23821, 0) 3382 } else if doIncrvac != 0 { 3383 speedtest1_exec(tls, ts+23845, 0) 3384 } 3385 if pageSize != 0 { 3386 speedtest1_exec(tls, ts+23876, libc.VaList(bp+360, pageSize)) 3387 } 3388 if cacheSize != 0 { 3389 speedtest1_exec(tls, ts+23896, libc.VaList(bp+368, cacheSize)) 3390 } 3391 if noSync != 0 { 3392 speedtest1_exec(tls, ts+23917, 0) 3393 } 3394 if doExclusive != 0 { 3395 speedtest1_exec(tls, ts+23940, 0) 3396 } 3397 if zJMode != 0 { 3398 speedtest1_exec(tls, ts+23970, libc.VaList(bp+376, zJMode)) 3399 } 3400 3401 if g.bExplain != 0 { 3402 libc.Xprintf(tls, ts+23993, 0) 3403 } 3404 for __ccgo1 := true; __ccgo1; __ccgo1 = *(*int8)(unsafe.Pointer(zTSet)) != 0 { 3405 var zThisTest uintptr = zTSet 3406 var zComma uintptr = libc.Xstrchr(tls, zThisTest, ',') 3407 if zComma != 0 { 3408 *(*int8)(unsafe.Pointer(zComma)) = int8(0) 3409 zTSet = zComma + uintptr(1) 3410 } else { 3411 zTSet = ts + 2269 3412 } 3413 if g.iTotal > int64(0) || zComma != uintptr(0) { 3414 libc.Xprintf(tls, ts+24012, libc.VaList(bp+384, zThisTest)) 3415 } 3416 if libc.Xstrcmp(tls, zThisTest, ts+22856) == 0 { 3417 testset_main(tls) 3418 } else if libc.Xstrcmp(tls, zThisTest, ts+24039) == 0 { 3419 testset_debug1(tls) 3420 } else if libc.Xstrcmp(tls, zThisTest, ts+24046) == 0 { 3421 testset_orm(tls) 3422 } else if libc.Xstrcmp(tls, zThisTest, ts+24050) == 0 { 3423 testset_cte(tls) 3424 } else if libc.Xstrcmp(tls, zThisTest, ts+24054) == 0 { 3425 testset_fp(tls) 3426 } else if libc.Xstrcmp(tls, zThisTest, ts+24057) == 0 { 3427 testset_trigger(tls) 3428 } else if libc.Xstrcmp(tls, zThisTest, ts+24065) == 0 { 3429 testset_rtree(tls, 6, 147) 3430 } else { 3431 fatal_error(tls, 3432 ts+24071, 3433 libc.VaList(bp+392, zThisTest)) 3434 } 3435 if *(*int8)(unsafe.Pointer(zTSet)) != 0 { 3436 var zSql uintptr 3437 var zObj uintptr 3438 speedtest1_begin_test(tls, 999, ts+24140, 0) 3439 for 1 != 0 { 3440 zObj = speedtest1_once(tls, 3441 ts+24159, 0) 3442 if zObj == uintptr(0) { 3443 break 3444 } 3445 zSql = sqlite3.Xsqlite3_mprintf(tls, ts+24229, libc.VaList(bp+400, zObj)) 3446 speedtest1_exec(tls, zSql, 0) 3447 sqlite3.Xsqlite3_free(tls, zSql) 3448 sqlite3.Xsqlite3_free(tls, zObj) 3449 } 3450 for 1 != 0 { 3451 zObj = speedtest1_once(tls, 3452 ts+24250, 0) 3453 if zObj == uintptr(0) { 3454 break 3455 } 3456 zSql = sqlite3.Xsqlite3_mprintf(tls, ts+24229, libc.VaList(bp+408, zObj)) 3457 speedtest1_exec(tls, zSql, 0) 3458 sqlite3.Xsqlite3_free(tls, zSql) 3459 sqlite3.Xsqlite3_free(tls, zObj) 3460 } 3461 speedtest1_end_test(tls) 3462 } 3463 } 3464 speedtest1_final(tls) 3465 3466 if showStats != 0 { 3467 sqlite3.Xsqlite3_exec(tls, g.db, ts+24320, *(*uintptr)(unsafe.Pointer(&struct { 3468 f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 3469 }{xCompileOptions})), uintptr(0), uintptr(0)) 3470 } 3471 3472 if showStats != 0 { 3473 sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_LOOKASIDE_USED, bp+568, bp+572, 0) 3474 libc.Xprintf(tls, ts+24343, libc.VaList(bp+416, *(*int32)(unsafe.Pointer(bp + 568)), *(*int32)(unsafe.Pointer(bp + 572)))) 3475 sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_LOOKASIDE_HIT, bp+568, bp+572, 0) 3476 libc.Xprintf(tls, ts+24388, libc.VaList(bp+432, *(*int32)(unsafe.Pointer(bp + 572)))) 3477 sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_LOOKASIDE_MISS_SIZE, bp+568, bp+572, 0) 3478 libc.Xprintf(tls, ts+24424, libc.VaList(bp+440, *(*int32)(unsafe.Pointer(bp + 572)))) 3479 sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_LOOKASIDE_MISS_FULL, bp+568, bp+572, 0) 3480 libc.Xprintf(tls, ts+24460, libc.VaList(bp+448, *(*int32)(unsafe.Pointer(bp + 572)))) 3481 sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_CACHE_USED, bp+568, bp+572, 0) 3482 libc.Xprintf(tls, ts+24496, libc.VaList(bp+456, *(*int32)(unsafe.Pointer(bp + 568)))) 3483 sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_CACHE_HIT, bp+568, bp+572, 1) 3484 libc.Xprintf(tls, ts+24538, libc.VaList(bp+464, *(*int32)(unsafe.Pointer(bp + 568)))) 3485 sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_CACHE_MISS, bp+568, bp+572, 1) 3486 libc.Xprintf(tls, ts+24574, libc.VaList(bp+472, *(*int32)(unsafe.Pointer(bp + 568)))) 3487 sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_CACHE_WRITE, bp+568, bp+572, 1) 3488 libc.Xprintf(tls, ts+24610, libc.VaList(bp+480, *(*int32)(unsafe.Pointer(bp + 568)))) 3489 sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_SCHEMA_USED, bp+568, bp+572, 0) 3490 libc.Xprintf(tls, ts+24646, libc.VaList(bp+488, *(*int32)(unsafe.Pointer(bp + 568)))) 3491 sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_STMT_USED, bp+568, bp+572, 0) 3492 libc.Xprintf(tls, ts+24688, libc.VaList(bp+496, *(*int32)(unsafe.Pointer(bp + 568)))) 3493 } 3494 3495 sqlite3.Xsqlite3_close(tls, g.db) 3496 3497 if showStats != 0 { 3498 sqlite3.Xsqlite3_status(tls, SQLITE_STATUS_MEMORY_USED, bp+568, bp+572, 0) 3499 libc.Xprintf(tls, ts+24730, libc.VaList(bp+504, *(*int32)(unsafe.Pointer(bp + 568)), *(*int32)(unsafe.Pointer(bp + 572)))) 3500 sqlite3.Xsqlite3_status(tls, SQLITE_STATUS_MALLOC_COUNT, bp+568, bp+572, 0) 3501 libc.Xprintf(tls, ts+24775, libc.VaList(bp+520, *(*int32)(unsafe.Pointer(bp + 568)), *(*int32)(unsafe.Pointer(bp + 572)))) 3502 sqlite3.Xsqlite3_status(tls, SQLITE_STATUS_PAGECACHE_OVERFLOW, bp+568, bp+572, 0) 3503 libc.Xprintf(tls, ts+24820, libc.VaList(bp+536, *(*int32)(unsafe.Pointer(bp + 568)), *(*int32)(unsafe.Pointer(bp + 572)))) 3504 sqlite3.Xsqlite3_status(tls, SQLITE_STATUS_MALLOC_SIZE, bp+568, bp+572, 0) 3505 libc.Xprintf(tls, ts+24865, libc.VaList(bp+552, *(*int32)(unsafe.Pointer(bp + 572)))) 3506 sqlite3.Xsqlite3_status(tls, SQLITE_STATUS_PAGECACHE_SIZE, bp+568, bp+572, 0) 3507 libc.Xprintf(tls, ts+24907, libc.VaList(bp+560, *(*int32)(unsafe.Pointer(bp + 572)))) 3508 } 3509 3510 libc.Xfree(tls, pLook) 3511 libc.Xfree(tls, pPCache) 3512 libc.Xfree(tls, pHeap) 3513 return 0 3514 } 3515 3516 var ts1 = "Usage: %s [--options] DATABASE\nOptions:\n --autovacuum Enable AUTOVACUUM mode\n --cachesize N Set the cache size to N\n --checkpoint Run PRAGMA wal_checkpoint after each test case\n --exclusive Enable locking_mode=EXCLUSIVE\n --explain Like --sqlonly but with added EXPLAIN keywords\n --heap SZ MIN Memory allocator uses SZ bytes & min allocation MIN\n --incrvacuum Enable incremenatal vacuum mode\n --journal M Set the journal_mode to M\n --key KEY Set the encryption key to KEY\n --lookaside N SZ Configure lookaside for N slots of SZ bytes each\n --memdb Use an in-memory database\n --mmap SZ MMAP the first SZ bytes of the database file\n --multithread Set multithreaded mode\n --nomemstat Disable memory statistics\n --nosync Set PRAGMA synchronous=OFF\n --notnull Add NOT NULL constraints to table columns\n --output FILE Store SQL output in FILE\n --pagesize N Set the page size to N\n --pcache N SZ Configure N pages of pagecache each of size SZ bytes\n --primarykey Use PRIMARY KEY instead of UNIQUE where appropriate\n --repeat N Repeat each SELECT N times (default: 1)\n --reprepare Reprepare each statement upon every invocation\n --reserve N Reserve N bytes on each database page\n --serialized Set serialized threading mode\n --singlethread Set single-threaded mode - disables all mutexing\n --sqlonly No-op. Only show the SQL that would have been run.\n --shrink-memory Invoke sqlite3_db_release_memory() frequently.\n --size N Relative test size. Default=100\n --strict Use STRICT table where appropriate\n --stats Show statistics at the end\n --temp N N from 0 to 9. 0: no temp table. 9: all temp tables\n --testset T Run test-set T (main, cte, rtree, orm, fp, debug)\n --trace Turn on SQL tracing\n --threads N Use up to N threads for sorting\n --utf16be Set text encoding to UTF-16BE\n --utf16le Set text encoding to UTF-16LE\n --verify Run additional verification steps.\n --without-rowid Use WITHOUT ROWID where appropriate\n\x00 TEMP\x00\x00parameter too large - max 2147483648\x00KiB\x00MiB\x00GiB\x00KB\x00MB\x00GB\x00K\x00M\x00G\x00 billion\x00 million\x00 thousand\x00%s hundred\x00%s\x00zero\x00one\x00two\x00three\x00four\x00five\x00six\x00seven\x00eight\x00nine\x00ten\x00eleven\x00twelve\x00thirteen\x00fourteen\x00fifteen\x00sixteen\x00seventeen\x00eighteen\x00nineteen\x00twenty\x00thirty\x00forty\x00fifty\x00sixty\x00seventy\x00eighty\x00ninety\x00.......................................................................\x00/* %4d - %s%.*s */\n\x00%4d - %s%.*s \x00PRAGMA wal_checkpoint;\x00%4d.%03ds\n\x00 TOTAL%.*s %4d.%03ds\n\x00Verification Hash: %llu \x00\n\x00%02x\x00EXPLAIN \x00%.*s;\n\x00CREATE *\x00DROP *\x00ALTER *\x00SQL error: %s\n%s\n\x00exec error: %s\n\x00SQL error: %s\n\x00nil\x00-IFTBN\x000123456789abcdef\x00%d INSERTs into table with no index\x00BEGIN\x00CREATE%s TABLE z1(a INTEGER %s, b INTEGER %s, c TEXT %s);\x00INSERT INTO z1 VALUES(?1,?2,?3); -- %d times\x00COMMIT\x00%d ordered INSERTS with one index/PK\x00CREATE%s TABLE z2(a INTEGER %s %s, b INTEGER %s, c TEXT %s) %s\x00INSERT INTO z2 VALUES(?1,?2,?3); -- %d times\x00%d unordered INSERTS with one index/PK\x00CREATE%s TABLE t3(a INTEGER %s %s, b INTEGER %s, c TEXT %s) %s\x00INSERT INTO t3 VALUES(?1,?2,?3); -- %d times\x00%d SELECTS, numeric BETWEEN, unindexed\x00SELECT count(*), avg(b), sum(length(c)), group_concat(c) FROM z1\n WHERE b BETWEEN ?1 AND ?2; -- %d times\x00%d SELECTS, LIKE, unindexed\x00SELECT count(*), avg(b), sum(length(c)), group_concat(c) FROM z1\n WHERE c LIKE ?1; -- %d times\x00%d SELECTS w/ORDER BY, unindexed\x00SELECT a, b, c FROM z1 WHERE c LIKE ?1\n ORDER BY a; -- %d times\x00%d SELECTS w/ORDER BY and LIMIT, unindexed\x00SELECT a, b, c FROM z1 WHERE c LIKE ?1\n ORDER BY a LIMIT 10; -- %d times\x00CREATE INDEX five times\x00BEGIN;\x00CREATE UNIQUE INDEX t1b ON z1(b);\x00CREATE INDEX t1c ON z1(c);\x00CREATE UNIQUE INDEX t2b ON z2(b);\x00CREATE INDEX t2c ON z2(c DESC);\x00CREATE INDEX t3bc ON t3(b,c);\x00COMMIT;\x00%d SELECTS, numeric BETWEEN, indexed\x00SELECT count(*), avg(b), sum(length(c)), group_concat(a) FROM z1\n WHERE b BETWEEN ?1 AND ?2; -- %d times\x00%d SELECTS, numeric BETWEEN, PK\x00SELECT count(*), avg(b), sum(length(c)), group_concat(a) FROM z2\n WHERE a BETWEEN ?1 AND ?2; -- %d times\x00%d SELECTS, text BETWEEN, indexed\x00SELECT count(*), avg(b), sum(length(c)), group_concat(a) FROM z1\n WHERE c BETWEEN ?1 AND (?1||'~'); -- %d times\x00%d INSERTS with three indexes\x00CREATE%s TABLE t4(\n a INTEGER %s %s,\n b INTEGER %s,\n c TEXT %s\n) %s\x00CREATE INDEX t4b ON t4(b)\x00CREATE INDEX t4c ON t4(c)\x00INSERT INTO t4 SELECT * FROM z1\x00DELETE and REFILL one table\x00DELETE FROM z2;\x00INSERT INTO z2 SELECT * FROM z1;\x00VACUUM\x00ALTER TABLE ADD COLUMN, and query\x00ALTER TABLE z2 ADD COLUMN d INT DEFAULT 123\x00SELECT sum(d) FROM z2\x00%d UPDATES, numeric BETWEEN, indexed\x00UPDATE z2 SET d=b*2 WHERE b BETWEEN ?1 AND ?2; -- %d times\x00%d UPDATES of individual rows\x00UPDATE z2 SET d=b*3 WHERE a=?1; -- %d times\x00One big UPDATE of the whole %d-row table\x00UPDATE z2 SET d=b*4\x00Query added column after filling\x00%d DELETEs, numeric BETWEEN, indexed\x00DELETE FROM z2 WHERE b BETWEEN ?1 AND ?2; -- %d times\x00%d DELETEs of individual rows\x00DELETE FROM t3 WHERE a=?1; -- %d times\x00Refill two %d-row tables using REPLACE\x00REPLACE INTO z2(a,b,c) SELECT a,b,c FROM z1\x00REPLACE INTO t3(a,b,c) SELECT a,b,c FROM z1\x00Refill a %d-row table using (b&1)==(a&1)\x00INSERT INTO z2(a,b,c)\n SELECT a,b,c FROM z1 WHERE (b&1)==(a&1);\x00INSERT INTO z2(a,b,c)\n SELECT a,b,c FROM z1 WHERE (b&1)<>(a&1);\x00%d four-ways joins\x00SELECT z1.c FROM z1, z2, t3, t4\n WHERE t4.a BETWEEN ?1 AND ?2\n AND t3.a=t4.b\n AND z2.a=t3.b\n AND z1.c=z2.c\x00subquery in result set\x00SELECT sum(a), max(c),\n avg((SELECT a FROM z2 WHERE 5+z2.b=z1.b) AND rowid<?1), max(c)\n FROM z1 WHERE rowid<?1;\x00%d REPLACE ops on an IPK\x00CREATE%s TABLE t5(a INTEGER PRIMARY KEY, b %s);\x00REPLACE INTO t5 VALUES(?1,?2); -- %d times\x00%d SELECTS on an IPK\x00SELECT b FROM t5 WHERE a=?1; -- %d times\x00%d REPLACE on TEXT PK\x00CREATE%s TABLE t6(a TEXT PRIMARY KEY, b %s)%s;\x00WITHOUT ROWID\x00REPLACE INTO t6 VALUES(?1,?2); -- %d times\x00%d SELECTS on a TEXT PK\x00SELECT b FROM t6 WHERE a=?1; -- %d times\x00%d SELECT DISTINCT\x00SELECT DISTINCT b FROM t5;\x00SELECT DISTINCT b FROM t6;\x00PRAGMA integrity_check\x00ANALYZE\x00Sudoku with recursive 'digits'\x00WITH RECURSIVE\n input(sud) AS (VALUES(?1)),\n digits(z,lp) AS (\n VALUES('1', 1)\n UNION ALL\n SELECT CAST(lp+1 AS TEXT), lp+1 FROM digits WHERE lp<9\n ),\n x(s, ind) AS (\n SELECT sud, instr(sud, '.') FROM input\n UNION ALL\n SELECT\n substr(s, 1, ind-1) || z || substr(s, ind+1),\n instr( substr(s, 1, ind-1) || z || substr(s, ind+1), '.' )\n FROM x, digits AS z\n WHERE ind>0\n AND NOT EXISTS (\n SELECT 1\n FROM digits AS lp\n WHERE z.z = substr(s, ((ind-1)/9)*9 + lp, 1)\n OR z.z = substr(s, ((ind-1)%%9) + (lp-1)*9 + 1, 1)\n OR z.z = substr(s, (((ind-1)/3) %% 3) * 3\n + ((ind-1)/27) * 27 + lp\n + ((lp-1) / 3) * 6, 1)\n )\n )\nSELECT s FROM x WHERE ind=0;\x00Sudoku with VALUES 'digits'\x00WITH RECURSIVE\n input(sud) AS (VALUES(?1)),\n digits(z,lp) AS (VALUES('1',1),('2',2),('3',3),('4',4),('5',5),\n ('6',6),('7',7),('8',8),('9',9)),\n x(s, ind) AS (\n SELECT sud, instr(sud, '.') FROM input\n UNION ALL\n SELECT\n substr(s, 1, ind-1) || z || substr(s, ind+1),\n instr( substr(s, 1, ind-1) || z || substr(s, ind+1), '.' )\n FROM x, digits AS z\n WHERE ind>0\n AND NOT EXISTS (\n SELECT 1\n FROM digits AS lp\n WHERE z.z = substr(s, ((ind-1)/9)*9 + lp, 1)\n OR z.z = substr(s, ((ind-1)%%9) + (lp-1)*9 + 1, 1)\n OR z.z = substr(s, (((ind-1)/3) %% 3) * 3\n + ((ind-1)/27) * 27 + lp\n + ((lp-1) / 3) * 6, 1)\n )\n )\nSELECT s FROM x WHERE ind=0;\x00Mandelbrot Set with spacing=%f\x00WITH RECURSIVE \n xaxis(x) AS (VALUES(-2.0) UNION ALL SELECT x+?1 FROM xaxis WHERE x<1.2),\n yaxis(y) AS (VALUES(-1.0) UNION ALL SELECT y+?2 FROM yaxis WHERE y<1.0),\n m(iter, cx, cy, x, y) AS (\n SELECT 0, x, y, 0.0, 0.0 FROM xaxis, yaxis\n UNION ALL\n SELECT iter+1, cx, cy, x*x-y*y + cx, 2.0*x*y + cy FROM m \n WHERE (x*x + y*y) < 4.0 AND iter<28\n ),\n m2(iter, cx, cy) AS (\n SELECT max(iter), cx, cy FROM m GROUP BY cx, cy\n ),\n a(t) AS (\n SELECT group_concat( substr(' .+*#', 1+min(iter/7,4), 1), '') \n FROM m2 GROUP BY cy\n )\nSELECT group_concat(rtrim(t),x'0a') FROM a;\x00EXCEPT operator on %d-element tables\x00WITH RECURSIVE \n z1(x) AS (VALUES(2) UNION ALL SELECT x+2 FROM z1 WHERE x<%d),\n z2(y) AS (VALUES(3) UNION ALL SELECT y+3 FROM z2 WHERE y<%d)\nSELECT count(x), avg(x) FROM (\n SELECT x FROM z1 EXCEPT SELECT y FROM z2 ORDER BY 1\n);\x00534...9..67.195....98....6.8...6...34..8.3..1....2...6.6....28....419..5...28..79\x0053....9..6..195....98....6.8...6...34..8.3..1....2...6.6....28....419..5....8..79\x0053.......6..195....98....6.8...6...34..8.3..1....2...6.6....28....419..5....8..79\x00%d.%de%d\x00Fill a table with %d FP values\x00CREATE%s TABLE z1(a REAL %s, b REAL %s);\x00INSERT INTO z1 VALUES(?1,?2); -- %d times\x00%d range queries\x00SELECT sum(b) FROM z1 WHERE a BETWEEN ?1 AND ?2\x00CREATE INDEX three times\x00CREATE INDEX t1a ON z1(a);\x00CREATE INDEX t1b ON z1(b);\x00CREATE INDEX t1ab ON z1(a,b);\x00%d indexed range queries\x00%d calls to round()\x00SELECT sum(round(a,2)+round(b,4)) FROM z1;\x00%d printf() calls\x00WITH c(fmt) AS (VALUES('%%g'),('%%e'),('%%!g'),('%%.20f'))SELECT sum(printf(fmt,a)) FROM z1, c\x00%d INSERTs into an r-tree\x00CREATE VIRTUAL TABLE rt1 USING rtree(id,x0,x1,y0,y1,z0,z1)\x00INSERT INTO rt1(id,x0,x1,y0,y1,z0,z1)VALUES(?1,?2,?3,?4,?5,?6,?7)\x00Copy from rtree to a regular table\x00CREATE TABLE z1(id INTEGER PRIMARY KEY,x0,x1,y0,y1,z0,z1)\x00INSERT INTO z1 SELECT * FROM rt1\x00%d one-dimensional intersect slice queries\x00SELECT count(*) FROM rt1 WHERE x0>=?1 AND x1<=?2\x00Verify result from 1-D intersect slice queries\x00SELECT count(*) FROM z1 WHERE x0>=?1 AND x1<=?2\x00Count disagree step %d: %d..%d. %d vs %d\x00%d one-dimensional overlap slice queries\x00SELECT count(*) FROM rt1 WHERE y1>=?1 AND y0<=?2\x00Verify result from 1-D overlap slice queries\x00SELECT count(*) FROM z1 WHERE y1>=?1 AND y0<=?2\x00%d custom geometry callback queries\x00xslice\x00SELECT count(*) FROM rt1 WHERE id MATCH xslice(?1,?2)\x00%d three-dimensional intersect box queries\x00SELECT count(*) FROM rt1 WHERE x1>=?1 AND x0<=?2 AND y1>=?1 AND y0<=?2 AND z1>=?1 AND z0<=?2\x00%d rowid queries\x00SELECT * FROM rt1 WHERE id=?1\x00%d UPDATEs using rowid\x00UPDATE rt1 SET x0=x0+100, x1=x1+100 WHERE id=?1\x00%d UPDATEs using one-dimensional overlap\x00UPDATE rt1 SET x0=x0-100, x1=x1-100 WHERE y1>=?1 AND y0<=?1+5\x00%d DELETEs using rowid\x00DELETE FROM rt1 WHERE id=?1\x00%d DELETEs using one-dimensional overlap\x00DELETE FROM rt1 WHERE y1>=?1 AND y0<=?1+5\x00Restore deleted entries using INSERT OR IGNORE\x00INSERT OR IGNORE INTO rt1 SELECT * FROM z1\x00Fill %d rows\x00BEGIN;CREATE TABLE ZLOOKSLIKECOREDATA ( ZPK INTEGER PRIMARY KEY, ZTERMFITTINGHOUSINGCOMMAND INTEGER, ZBRIEFGOBYDODGERHEIGHT BLOB, ZCAPABLETRIPDOORALMOND BLOB, ZDEPOSITPAIRCOLLEGECOMET INTEGER, ZFRAMEENTERSIMPLEMOUTH INTEGER, ZHOPEFULGATEHOLECHALK INTEGER, ZSLEEPYUSERGRANDBOWL TIMESTAMP, ZDEWPEACHCAREERCELERY INTEGER, ZHANGERLITHIUMDINNERMEET VARCHAR, ZCLUBRELEASELIZARDADVICE VARCHAR, ZCHARGECLICKHUMANEHIRE INTEGER, ZFINGERDUEPIZZAOPTION TIMESTAMP, ZFLYINGDOCTORTABLEMELODY BLOB, ZLONGFINLEAVEIMAGEOIL TIMESTAMP, ZFAMILYVISUALOWNERMATTER BLOB, ZGOLDYOUNGINITIALNOSE FLOAT, ZCAUSESALAMITERMCYAN BLOB, ZSPREADMOTORBISCUITBACON FLOAT, ZGIFTICEFISHGLUEHAIR INTEGER, ZNOTICEPEARPOLICYJUICE TIMESTAMP, ZBANKBUFFALORECOVERORBIT TIMESTAMP, ZLONGDIETESSAYNATURE FLOAT, ZACTIONRANGEELEGANTNEUTRON BLOB, ZCADETBRIGHTPLANETBANK TIMESTAMP, ZAIRFORGIVEHEADFROG BLOB, ZSHARKJUSTFRUITMOVIE VARCHAR, ZFARMERMORNINGMIRRORCONCERN BLOB, ZWOODPOETRYCOBBLERBENCH VARCHAR, ZHAFNIUMSCRIPTSALADMOTOR INTEGER, ZPROBLEMCLUBPOPOVERJELLY FLOAT, ZEIGHTLEADERWORKERMOST TIMESTAMP, ZGLASSRESERVEBARIUMMEAL BLOB, ZCLAMBITARUGULAFAJITA BLOB, ZDECADEJOYOUSWAVEHABIT FLOAT, ZCOMPANYSUMMERFIBERELF INTEGER, ZTREATTESTQUILLCHARGE TIMESTAMP, ZBROWBALANCEKEYCHOWDER FLOAT, ZPEACHCOPPERDINNERLAKE FLOAT, ZDRYWALLBEYONDBROWNBOWL VARCHAR, ZBELLYCRASHITEMLACK BLOB, ZTENNISCYCLEBILLOFFICER INTEGER, ZMALLEQUIPTHANKSGLUE FLOAT, ZMISSREPLYHUMANLIVING INTEGER, ZKIWIVISUALPRIDEAPPLE VARCHAR, ZWISHHITSKINMOTOR BLOB, ZCALMRACCOONPROGRAMDEBIT VARCHAR, ZSHINYASSISTLIVINGCRAB VARCHAR, ZRESOLVEWRISTWRAPAPPLE VARCHAR, ZAPPEALSIMPLESECONDHOUSING BLOB, ZCORNERANCHORTAPEDIVER TIMESTAMP, ZMEMORYREQUESTSOURCEBIG VARCHAR, ZTRYFACTKEEPMILK TIMESTAMP, ZDIVERPAINTLEATHEREASY INTEGER, ZSORTMISTYQUOTECABBAGE BLOB, ZTUNEGASBUFFALOCAPITAL BLOB, ZFILLSTOPLAWJOYFUL FLOAT, ZSTEELCAREFULPLATENUMBER FLOAT, ZGIVEVIVIDDIVINEMEANING INTEGER, ZTREATPACKFUTURECONVERT VARCHAR, ZCALMLYGEMFINISHEFFECT INTEGER, ZCABBAGESOCKEASEMINUTE BLOB, ZPLANETFAMILYPUREMEMORY TIMESTAMP, ZMERRYCRACKTRAINLEADER BLOB, ZMINORWAYPAPERCLASSY TIMESTAMP, ZEAGLELINEMINEMAIL VARCHAR, ZRESORTYARDGREENLET TIMESTAMP, ZYARDOREGANOVIVIDJEWEL TIMESTAMP, ZPURECAKEVIVIDNEATLY FLOAT, ZASKCONTACTMONITORFUN TIMESTAMP, ZMOVEWHOGAMMAINCH VARCHAR, ZLETTUCEBIRDMEETDEBATE TIMESTAMP, ZGENENATURALHEARINGKITE VARCHAR, ZMUFFINDRYERDRAWFORTUNE FLOAT, ZGRAYSURVEYWIRELOVE FLOAT, ZPLIERSPRINTASKOREGANO INTEGER, ZTRAVELDRIVERCONTESTLILY INTEGER, ZHUMORSPICESANDKIDNEY TIMESTAMP, ZARSENICSAMPLEWAITMUON INTEGER, ZLACEADDRESSGROUNDCAREFUL FLOAT, ZBAMBOOMESSWASABIEVENING BLOB, ZONERELEASEAVERAGENURSE INTEGER, ZRADIANTWHENTRYCARD TIMESTAMP, ZREWARDINSIDEMANGOINTENSE FLOAT, ZNEATSTEWPARTIRON TIMESTAMP, ZOUTSIDEPEAHENCOUNTICE TIMESTAMP, ZCREAMEVENINGLIPBRANCH FLOAT, ZWHALEMATHAVOCADOCOPPER FLOAT, ZLIFEUSELEAFYBELL FLOAT, ZWEALTHLINENGLEEFULDAY VARCHAR, ZFACEINVITETALKGOLD BLOB, ZWESTAMOUNTAFFECTHEARING INTEGER, ZDELAYOUTCOMEHORNAGENCY INTEGER, ZBIGTHINKCONVERTECONOMY BLOB, ZBASEGOUDAREGULARFORGIVE TIMESTAMP, ZPATTERNCLORINEGRANDCOLBY TIMESTAMP, ZCYANBASEFEEDADROIT INTEGER, ZCARRYFLOORMINNOWDRAGON TIMESTAMP, ZIMAGEPENCILOTHERBOTTOM FLOAT, ZXENONFLIGHTPALEAPPLE TIMESTAMP, ZHERRINGJOKEFEATUREHOPEFUL FLOAT, ZCAPYEARLYRIVETBRUSH FLOAT, ZAGEREEDFROGBASKET VARCHAR, ZUSUALBODYHALIBUTDIAMOND VARCHAR, ZFOOTTAPWORDENTRY VARCHAR, ZDISHKEEPBLESTMONITOR FLOAT, ZBROADABLESOLIDCASUAL INTEGER, ZSQUAREGLEEFULCHILDLIGHT INTEGER, ZHOLIDAYHEADPONYDETAIL INTEGER, ZGENERALRESORTSKYOPEN TIMESTAMP, ZGLADSPRAYKIDNEYGUPPY VARCHAR, ZSWIMHEAVYMENTIONKIND BLOB, ZMESSYSULFURDREAMFESTIVE BLOB, ZSKYSKYCLASSICBRIEF VARCHAR, ZDILLASKHOKILEMON FLOAT, ZJUNIORSHOWPRESSNOVA FLOAT, ZSIZETOEAWARDFRESH TIMESTAMP, ZKEYFAILAPRICOTMETAL VARCHAR, ZHANDYREPAIRPROTONAIRPORT VARCHAR, ZPOSTPROTEINHANDLEACTOR BLOB);\x00INSERT INTO ZLOOKSLIKECOREDATA(ZPK,ZAIRFORGIVEHEADFROG,ZGIFTICEFISHGLUEHAIR,ZDELAYOUTCOMEHORNAGENCY,ZSLEEPYUSERGRANDBOWL,ZGLASSRESERVEBARIUMMEAL,ZBRIEFGOBYDODGERHEIGHT,ZBAMBOOMESSWASABIEVENING,ZFARMERMORNINGMIRRORCONCERN,ZTREATPACKFUTURECONVERT,ZCAUSESALAMITERMCYAN,ZCALMRACCOONPROGRAMDEBIT,ZHOLIDAYHEADPONYDETAIL,ZWOODPOETRYCOBBLERBENCH,ZHAFNIUMSCRIPTSALADMOTOR,ZUSUALBODYHALIBUTDIAMOND,ZOUTSIDEPEAHENCOUNTICE,ZDIVERPAINTLEATHEREASY,ZWESTAMOUNTAFFECTHEARING,ZSIZETOEAWARDFRESH,ZDEWPEACHCAREERCELERY,ZSTEELCAREFULPLATENUMBER,ZCYANBASEFEEDADROIT,ZCALMLYGEMFINISHEFFECT,ZHANDYREPAIRPROTONAIRPORT,ZGENENATURALHEARINGKITE,ZBROADABLESOLIDCASUAL,ZPOSTPROTEINHANDLEACTOR,ZLACEADDRESSGROUNDCAREFUL,ZIMAGEPENCILOTHERBOTTOM,ZPROBLEMCLUBPOPOVERJELLY,ZPATTERNCLORINEGRANDCOLBY,ZNEATSTEWPARTIRON,ZAPPEALSIMPLESECONDHOUSING,ZMOVEWHOGAMMAINCH,ZTENNISCYCLEBILLOFFICER,ZSHARKJUSTFRUITMOVIE,ZKEYFAILAPRICOTMETAL,ZCOMPANYSUMMERFIBERELF,ZTERMFITTINGHOUSINGCOMMAND,ZRESORTYARDGREENLET,ZCABBAGESOCKEASEMINUTE,ZSQUAREGLEEFULCHILDLIGHT,ZONERELEASEAVERAGENURSE,ZBIGTHINKCONVERTECONOMY,ZPLIERSPRINTASKOREGANO,ZDECADEJOYOUSWAVEHABIT,ZDRYWALLBEYONDBROWNBOWL,ZCLUBRELEASELIZARDADVICE,ZWHALEMATHAVOCADOCOPPER,ZBELLYCRASHITEMLACK,ZLETTUCEBIRDMEETDEBATE,ZCAPABLETRIPDOORALMOND,ZRADIANTWHENTRYCARD,ZCAPYEARLYRIVETBRUSH,ZAGEREEDFROGBASKET,ZSWIMHEAVYMENTIONKIND,ZTRAVELDRIVERCONTESTLILY,ZGLADSPRAYKIDNEYGUPPY,ZBANKBUFFALORECOVERORBIT,ZFINGERDUEPIZZAOPTION,ZCLAMBITARUGULAFAJITA,ZLONGFINLEAVEIMAGEOIL,ZLONGDIETESSAYNATURE,ZJUNIORSHOWPRESSNOVA,ZHOPEFULGATEHOLECHALK,ZDEPOSITPAIRCOLLEGECOMET,ZWEALTHLINENGLEEFULDAY,ZFILLSTOPLAWJOYFUL,ZTUNEGASBUFFALOCAPITAL,ZGRAYSURVEYWIRELOVE,ZCORNERANCHORTAPEDIVER,ZREWARDINSIDEMANGOINTENSE,ZCADETBRIGHTPLANETBANK,ZPLANETFAMILYPUREMEMORY,ZTREATTESTQUILLCHARGE,ZCREAMEVENINGLIPBRANCH,ZSKYSKYCLASSICBRIEF,ZARSENICSAMPLEWAITMUON,ZBROWBALANCEKEYCHOWDER,ZFLYINGDOCTORTABLEMELODY,ZHANGERLITHIUMDINNERMEET,ZNOTICEPEARPOLICYJUICE,ZSHINYASSISTLIVINGCRAB,ZLIFEUSELEAFYBELL,ZFACEINVITETALKGOLD,ZGENERALRESORTSKYOPEN,ZPURECAKEVIVIDNEATLY,ZKIWIVISUALPRIDEAPPLE,ZMESSYSULFURDREAMFESTIVE,ZCHARGECLICKHUMANEHIRE,ZHERRINGJOKEFEATUREHOPEFUL,ZYARDOREGANOVIVIDJEWEL,ZFOOTTAPWORDENTRY,ZWISHHITSKINMOTOR,ZBASEGOUDAREGULARFORGIVE,ZMUFFINDRYERDRAWFORTUNE,ZACTIONRANGEELEGANTNEUTRON,ZTRYFACTKEEPMILK,ZPEACHCOPPERDINNERLAKE,ZFRAMEENTERSIMPLEMOUTH,ZMERRYCRACKTRAINLEADER,ZMEMORYREQUESTSOURCEBIG,ZCARRYFLOORMINNOWDRAGON,ZMINORWAYPAPERCLASSY,ZDILLASKHOKILEMON,ZRESOLVEWRISTWRAPAPPLE,ZASKCONTACTMONITORFUN,ZGIVEVIVIDDIVINEMEANING,ZEIGHTLEADERWORKERMOST,ZMISSREPLYHUMANLIVING,ZXENONFLIGHTPALEAPPLE,ZSORTMISTYQUOTECABBAGE,ZEAGLELINEMINEMAIL,ZFAMILYVISUALOWNERMATTER,ZSPREADMOTORBISCUITBACON,ZDISHKEEPBLESTMONITOR,ZMALLEQUIPTHANKSGLUE,ZGOLDYOUNGINITIALNOSE,ZHUMORSPICESANDKIDNEY)VALUES(?1,?26,?20,?93,?8,?33,?3,?81,?28,?60,?18,?47,?109,?29,?30,?104,?86,?54,?92,?117,?9,?58,?97,?61,?119,?73,?107,?120,?80,?99,?31,?96,?85,?50,?71,?42,?27,?118,?36,?2,?67,?62,?108,?82,?94,?76,?35,?40,?11,?88,?41,?72,?4,?83,?102,?103,?112,?77,?111,?22,?13,?34,?15,?23,?116,?7,?5,?90,?57,?56,?75,?51,?84,?25,?63,?37,?87,?114,?79,?38,?14,?10,?21,?48,?89,?91,?110,?69,?45,?113,?12,?101,?68,?105,?46,?95,?74,?24,?53,?39,?6,?64,?52,?98,?65,?115,?49,?70,?59,?32,?44,?100,?55,?66,?16,?19,?106,?43,?17,?78);\x00Query %d rows by rowid\x00SELECT ZCYANBASEFEEDADROIT,ZJUNIORSHOWPRESSNOVA,ZCAUSESALAMITERMCYAN,ZHOPEFULGATEHOLECHALK,ZHUMORSPICESANDKIDNEY,ZSWIMHEAVYMENTIONKIND,ZMOVEWHOGAMMAINCH,ZAPPEALSIMPLESECONDHOUSING,ZHAFNIUMSCRIPTSALADMOTOR,ZNEATSTEWPARTIRON,ZLONGFINLEAVEIMAGEOIL,ZDEWPEACHCAREERCELERY,ZXENONFLIGHTPALEAPPLE,ZCALMRACCOONPROGRAMDEBIT,ZUSUALBODYHALIBUTDIAMOND,ZTRYFACTKEEPMILK,ZWEALTHLINENGLEEFULDAY,ZLONGDIETESSAYNATURE,ZLIFEUSELEAFYBELL,ZTREATPACKFUTURECONVERT,ZMEMORYREQUESTSOURCEBIG,ZYARDOREGANOVIVIDJEWEL,ZDEPOSITPAIRCOLLEGECOMET,ZSLEEPYUSERGRANDBOWL,ZBRIEFGOBYDODGERHEIGHT,ZCLUBRELEASELIZARDADVICE,ZCAPABLETRIPDOORALMOND,ZDRYWALLBEYONDBROWNBOWL,ZASKCONTACTMONITORFUN,ZKIWIVISUALPRIDEAPPLE,ZNOTICEPEARPOLICYJUICE,ZPEACHCOPPERDINNERLAKE,ZSTEELCAREFULPLATENUMBER,ZGLADSPRAYKIDNEYGUPPY,ZCOMPANYSUMMERFIBERELF,ZTENNISCYCLEBILLOFFICER,ZIMAGEPENCILOTHERBOTTOM,ZWESTAMOUNTAFFECTHEARING,ZDIVERPAINTLEATHEREASY,ZSKYSKYCLASSICBRIEF,ZMESSYSULFURDREAMFESTIVE,ZMERRYCRACKTRAINLEADER,ZBROADABLESOLIDCASUAL,ZGLASSRESERVEBARIUMMEAL,ZTUNEGASBUFFALOCAPITAL,ZBANKBUFFALORECOVERORBIT,ZTREATTESTQUILLCHARGE,ZBAMBOOMESSWASABIEVENING,ZREWARDINSIDEMANGOINTENSE,ZEAGLELINEMINEMAIL,ZCALMLYGEMFINISHEFFECT,ZKEYFAILAPRICOTMETAL,ZFINGERDUEPIZZAOPTION,ZCADETBRIGHTPLANETBANK,ZGOLDYOUNGINITIALNOSE,ZMISSREPLYHUMANLIVING,ZEIGHTLEADERWORKERMOST,ZFRAMEENTERSIMPLEMOUTH,ZBIGTHINKCONVERTECONOMY,ZFACEINVITETALKGOLD,ZPOSTPROTEINHANDLEACTOR,ZHERRINGJOKEFEATUREHOPEFUL,ZCABBAGESOCKEASEMINUTE,ZMUFFINDRYERDRAWFORTUNE,ZPROBLEMCLUBPOPOVERJELLY,ZGIVEVIVIDDIVINEMEANING,ZGENENATURALHEARINGKITE,ZGENERALRESORTSKYOPEN,ZLETTUCEBIRDMEETDEBATE,ZBASEGOUDAREGULARFORGIVE,ZCHARGECLICKHUMANEHIRE,ZPLANETFAMILYPUREMEMORY,ZMINORWAYPAPERCLASSY,ZCAPYEARLYRIVETBRUSH,ZSIZETOEAWARDFRESH,ZARSENICSAMPLEWAITMUON,ZSQUAREGLEEFULCHILDLIGHT,ZSHINYASSISTLIVINGCRAB,ZCORNERANCHORTAPEDIVER,ZDECADEJOYOUSWAVEHABIT,ZTRAVELDRIVERCONTESTLILY,ZFLYINGDOCTORTABLEMELODY,ZSHARKJUSTFRUITMOVIE,ZFAMILYVISUALOWNERMATTER,ZFARMERMORNINGMIRRORCONCERN,ZGIFTICEFISHGLUEHAIR,ZOUTSIDEPEAHENCOUNTICE,ZSPREADMOTORBISCUITBACON,ZWISHHITSKINMOTOR,ZHOLIDAYHEADPONYDETAIL,ZWOODPOETRYCOBBLERBENCH,ZAIRFORGIVEHEADFROG,ZBROWBALANCEKEYCHOWDER,ZDISHKEEPBLESTMONITOR,ZCLAMBITARUGULAFAJITA,ZPLIERSPRINTASKOREGANO,ZRADIANTWHENTRYCARD,ZDELAYOUTCOMEHORNAGENCY,ZPURECAKEVIVIDNEATLY,ZPATTERNCLORINEGRANDCOLBY,ZHANDYREPAIRPROTONAIRPORT,ZAGEREEDFROGBASKET,ZSORTMISTYQUOTECABBAGE,ZFOOTTAPWORDENTRY,ZRESOLVEWRISTWRAPAPPLE,ZDILLASKHOKILEMON,ZFILLSTOPLAWJOYFUL,ZACTIONRANGEELEGANTNEUTRON,ZRESORTYARDGREENLET,ZCREAMEVENINGLIPBRANCH,ZWHALEMATHAVOCADOCOPPER,ZGRAYSURVEYWIRELOVE,ZBELLYCRASHITEMLACK,ZHANGERLITHIUMDINNERMEET,ZCARRYFLOORMINNOWDRAGON,ZMALLEQUIPTHANKSGLUE,ZTERMFITTINGHOUSINGCOMMAND,ZONERELEASEAVERAGENURSE,ZLACEADDRESSGROUNDCAREFUL FROM ZLOOKSLIKECOREDATA WHERE ZPK=?1;\x00IBBIIITIVVITBTBFBFITTFBTBVBVIFTBBFITFFVBIFIVBVVVBTVTIBBFFIVIBTBTVTTFTVTVFFIITIFBITFTTFFFVBIIBTTITFTFFVVVFIIITVBBVFFTVVB\x00BEGIN;CREATE TABLE z1(rowid INTEGER PRIMARY KEY, i INTEGER, t TEXT);CREATE TABLE z2(rowid INTEGER PRIMARY KEY, i INTEGER, t TEXT);CREATE TABLE t3(rowid INTEGER PRIMARY KEY, i INTEGER, t TEXT);CREATE VIEW v1 AS SELECT rowid, i, t FROM z1;CREATE VIEW v2 AS SELECT rowid, i, t FROM z2;CREATE VIEW v3 AS SELECT rowid, i, t FROM t3;\x00INSERT INTO t%d VALUES(NULL,?1,?2)\x00CREATE INDEX i1 ON z1(t);CREATE INDEX i2 ON z2(t);CREATE INDEX i3 ON t3(t);COMMIT;\x00speed4p-join1\x00SELECT * FROM z1, z2, t3 WHERE z1.oid = z2.oid AND z2.oid = t3.oid\x00speed4p-join2\x00SELECT * FROM z1, z2, t3 WHERE z1.t = z2.t AND z2.t = t3.t\x00speed4p-view1\x00SELECT * FROM v%d WHERE rowid = ?\x00speed4p-table1\x00SELECT * FROM t%d WHERE rowid = ?\x00speed4p-subselect1\x00SELECT (SELECT t FROM z1 WHERE rowid = ?1),(SELECT t FROM z2 WHERE rowid = ?1),(SELECT t FROM t3 WHERE rowid = ?1)\x00speed4p-rowid-update\x00UPDATE z1 SET i=i+1 WHERE rowid=?1\x00CREATE TABLE t5(t TEXT PRIMARY KEY, i INTEGER);\x00speed4p-insert-ignore\x00INSERT OR IGNORE INTO t5 SELECT t, i FROM z1\x00CREATE TABLE log(op TEXT, r INTEGER, i INTEGER, t TEXT);CREATE TABLE t4(rowid INTEGER PRIMARY KEY, i INTEGER, t TEXT);CREATE TRIGGER t4_trigger1 AFTER INSERT ON t4 BEGIN INSERT INTO log VALUES('INSERT INTO t4', new.rowid, new.i, new.t);END;CREATE TRIGGER t4_trigger2 AFTER UPDATE ON t4 BEGIN INSERT INTO log VALUES('UPDATE OF t4', new.rowid, new.i, new.t);END;CREATE TRIGGER t4_trigger3 AFTER DELETE ON t4 BEGIN INSERT INTO log VALUES('DELETE OF t4', old.rowid, old.i, old.t);END;BEGIN;\x00speed4p-trigger1\x00INSERT INTO t4 VALUES(NULL, ?1, ?2)\x00speed4p-trigger2\x00UPDATE t4 SET i = ?1, t = ?2 WHERE rowid = ?3\x00speed4p-trigger3\x00DELETE FROM t4 WHERE rowid = ?1\x00DROP TABLE t4;DROP TABLE log;VACUUM;CREATE TABLE t4(rowid INTEGER PRIMARY KEY, i INTEGER, t TEXT);BEGIN;\x00speed4p-notrigger1\x00speed4p-notrigger2\x00speed4p-notrigger3\x00%5d %5d %5d %s\n\x00-- Compile option: %s\n\x00main\x00-- Speedtest1 for SQLite %s %.48s\n\x00UNIQUE\x00autovacuum\x00cachesize\x00missing argument on %s\n\x00exclusive\x00checkpoint\x00explain\x00heap\x00missing arguments on %s\n\x00incrvacuum\x00journal\x00key\x00lookaside\x00memdb\x00multithread\x00nomemstat\x00mmap\x00nosync\x00notnull\x00NOT NULL\x00output\x00-\x00wb\x00cannot open \"%s\" for writing\n\x00pagesize\x00pcache\x00primarykey\x00PRIMARY KEY\x00repeat\x00reprepare\x00serialized\x00singlethread\x00sqlonly\x00shrink-memory\x00size\x00stats\x00temp\x00argument to --temp should be integer between 0 and 9\x00testset\x00trace\x00threads\x00utf16le\x00utf16be\x00verify\x00reserve\x00without-rowid\x00WITHOUT\x00STRICT\x00WITHOUT ROWID,STRICT\x00strict\x00help\x00?\x00unknown option: %s\nUse \"%s -?\" for help\n\x00surplus argument: %s\nUse \"%s -?\" for help\n\x00cannot allocate %d-byte heap\n\x00heap configuration failed: %d\n\x00cannot allocate %lld-byte pcache\n\x00pcache configuration failed: %d\n\x00:memory:\x00Cannot open database file: %s\n\x00lookaside configuration failed: %d\n\x00random\x00PRAGMA temp_store=memory\x00PRAGMA mmap_size=%d\x00PRAGMA threads=%d\x00PRAGMA key('%s')\x00PRAGMA encoding=%s\x00PRAGMA auto_vacuum=FULL\x00PRAGMA auto_vacuum=INCREMENTAL\x00PRAGMA page_size=%d\x00PRAGMA cache_size=%d\x00PRAGMA synchronous=OFF\x00PRAGMA locking_mode=EXCLUSIVE\x00PRAGMA journal_mode=%s\x00.explain\n.echo on\n\x00 Begin testset \"%s\"\n\x00debug1\x00orm\x00cte\x00fp\x00trigger\x00rtree\x00unknown testset: \"%s\"\nChoices: cte debug1 fp main orm rtree trigger\n\x00Reset the database\x00SELECT name FROM main.sqlite_master WHERE sql LIKE 'CREATE %%TABLE%%'\x00DROP TABLE main.\"%w\"\x00SELECT name FROM temp.sqlite_master WHERE sql LIKE 'CREATE %%TABLE%%'\x00PRAGMA compile_options\x00-- Lookaside Slots Used: %d (max %d)\n\x00-- Successful lookasides: %d\n\x00-- Lookaside size faults: %d\n\x00-- Lookaside OOM faults: %d\n\x00-- Pager Heap Usage: %d bytes\n\x00-- Page cache hits: %d\n\x00-- Page cache misses: %d\n\x00-- Page cache writes: %d\n\x00-- Schema Heap Usage: %d bytes\n\x00-- Statement Heap Usage: %d bytes\n\x00-- Memory Used (bytes): %d (max %d)\n\x00-- Outstanding Allocations: %d (max %d)\n\x00-- Pcache Overflow Bytes: %d (max %d)\n\x00-- Largest Allocation: %d bytes\n\x00-- Largest Pcache Allocation: %d bytes\n\x00" 3517 var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data