diff options
author | Jan Mercl <0xjnml@gmail.com> | 2020-07-26 22:36:18 +0200 |
---|---|---|
committer | Jan Mercl <0xjnml@gmail.com> | 2020-07-26 22:36:18 +0200 |
commit | b406626c64313ae348996c243a0a05d3f6ed2c3c (patch) | |
tree | 0eaae4fa6348b150568725e6f2ec0b4c4203b5f8 /internal/mptest | |
parent | d8d9f40ce80062793349c0ea47520b6878312f4a (diff) |
release v1.4.0-beta1v1.4.0-beta1
Diffstat (limited to 'internal/mptest')
-rw-r--r-- | internal/mptest/main_linux_386.go | 9938 | ||||
-rw-r--r-- | internal/mptest/main_linux_amd64.go | 14523 |
2 files changed, 4507 insertions, 19954 deletions
diff --git a/internal/mptest/main_linux_386.go b/internal/mptest/main_linux_386.go deleted file mode 100644 index 10a1654..0000000 --- a/internal/mptest/main_linux_386.go +++ /dev/null @@ -1,9938 +0,0 @@ -// Code generated by `gocc testdata/sqlite-src-3300100/mptest/mptest.c -o internal/mptest/main_linux_386.go -Itestdata/sqlite-amalgamation-3300100 -qbec-dot-import modernc.org/sqlite/internal/bin -qbec-static-prefix s_ -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_DQS=0 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MAX_EXPR_DEPTH=0 -DSQLITE_MAX_MMAP_SIZE=0 -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OMIT_DECLTYPE -DSQLITE_OMIT_PROGRESS_CALLBACK -DSQLITE_OMIT_SHARED_CACHE -DSQLITE_THREADSAFE=2 -DSQLITE_USE_ALLOCA`, DO NOT EDIT. - -package main - -import ( - . "modernc.org/sqlite/internal/bin" -) - -import ( - "math" - "modernc.org/crt/v2" - "unsafe" -) - -var ( - _ *crt.TLS - _ = math.Pi - _ = unsafe.Sizeof(0) -) - -func main() { crt.Start(Xmain) } - -var s__1 = [11]byte{0x5f, 0x5f, 0x62, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x31, 0x36} - -var s__2 = [11]byte{0x5f, 0x5f, 0x62, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x33, 0x32} - -var s__3 = [11]byte{0x5f, 0x5f, 0x62, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x36, 0x34} - -var s__4 = [18]byte{ - 0x5f, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, -} - -var s__5 = [18]byte{ - 0x5f, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, -} - -var s__6 = [18]byte{ - 0x5f, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, -} - -var s_g [96]byte - -func s_printWithPrefix(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32) { - bp := t.Alloc(32) - defer t.Free(32) - var _v15 int32 // %t10 - var _v16 int32 // %t11 - var _v17 int32 // %t12 - var _v18 int32 // %t13 - var _v19 int32 // %t14 - var _v20 int32 // %t15 - var _v21 int32 // %t16 - var _v22 int32 // %t17 - var _v23 int32 // %t18 - var _v24 int32 // %t19 - var _v7 int32 // %t2 - var _v25 int32 // %t20 - var _v26 int32 // %t21 - var _v28 int32 // %t23 - var _v29 int32 // %t24 - var _v30 int32 // %t25 - var _v31 int32 // %t26 - var _v32 int32 // %t27 - var _v33 int32 // %t28 - var _v34 int32 // %t29 - var _v35 int32 // %t30 - var _v37 int32 // %t32 - var _v38 int32 // %t33 - var _v39 int32 // %t34 - var _v40 int32 // %t35 - var _v41 int32 // %t36 - var _v45 int32 // %t40 - var _v46 int32 // %t41 - var _v48 int32 // %t43 - var _v49 int32 // %t44 - var _v50 int32 // %t45 - var _v51 int32 // %t46 - var _v54 int32 // %t49 - var _v10 int32 // %t5 - var _v55 int32 // %t50 - var _v56 int32 // %t51 - var _v57 int32 // %t52 - var _v59 int32 // %t54 - var _v62 int32 // %t57 - var _v63 int32 // %t58 - var _v64 int32 // %t59 - var _v11 int32 // %t6 - var _v65 int32 // %t60 - var _v67 int32 // %t62 - var _v68 int32 // %t63 - var _v69 int32 // %t64 - var _v70 int32 // %t65 - var _v71 int32 // %t66 - var _v12 int32 // %t7 - var _v13 int32 // %t8 - var _v4 = int32(bp + 24) // %v3 - var _v6 = int32(bp + 28) // %v4 - *(*int32)(unsafe.Pointer(uintptr(_v4))) = _v3 - goto l2 -l2: - _v7 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - goto l3 -l3: - if _v7 != 0 { - goto l4 - } - goto l33 -l33: - _v13 = 0 - goto l7 -l4: - _v10 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v11 = int32(int32(_v10) + int32(0)) - _v12 = int32(*(*int8)(unsafe.Pointer(uintptr(_v11)))) - goto l5 -l5: - if _v12 != 0 { - goto l6 - } - goto l34 -l34: - _v13 = 0 - goto l7 -l6: - _v13 = 1 - goto l7 -l7: - if _v13 != 0 { - goto l8 - } - goto l31 -l8: - _v15 = int32(int32(_v6) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v15))) = 0 - goto l9 -l9: - _v16 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v17 = int32(_v16 * 1) - _v18 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v19 = int32(int32(_v18) + int32(_v17)) - _v20 = int32(*(*int8)(unsafe.Pointer(uintptr(_v19)))) - goto l10 -l10: - if _v20 != 0 { - goto l11 - } - goto l35 -l35: - _v29 = 0 - goto l14 -l11: - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v22 = int32(_v21 * 1) - _v23 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v24 = int32(int32(_v23) + int32(_v22)) - _v25 = int32(*(*int8)(unsafe.Pointer(uintptr(_v24)))) - _v26 = int32(int8(_v25)) - _v28 = crt.Bool32(int32(_v26) != int32(10)) - goto l12 -l12: - if _v28 != 0 { - goto l13 - } - goto l36 -l36: - _v29 = 0 - goto l14 -l13: - _v29 = 1 - goto l14 -l14: - goto l15 -l15: - if _v29 != 0 { - goto l16 - } - goto l37 -l37: - _v38 = 0 - goto l19 -l16: - _v30 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v31 = int32(_v30 * 1) - _v32 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v33 = int32(int32(_v32) + int32(_v31)) - _v34 = int32(*(*int8)(unsafe.Pointer(uintptr(_v33)))) - _v35 = int32(int8(_v34)) - _v37 = crt.Bool32(int32(_v35) != int32(13)) - goto l17 -l17: - if _v37 != 0 { - goto l18 - } - goto l38 -l38: - _v38 = 0 - goto l19 -l18: - _v38 = 1 - goto l19 -l19: - if _v38 != 0 { - goto l20 - } - goto l22 -l20: - goto l21 -l21: - _v39 = int32(int32(_v6) + int32(0)) - _v40 = *(*int32)(unsafe.Pointer(uintptr(_v39))) - _v41 = int32(int32(_v40) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v39))) = _v41 - goto l9 -l22: - _v45 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v46 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - *(*int32)(unsafe.Pointer(bp + 0)) = _v2 - - *(*int32)(unsafe.Pointer(bp + 8)) = _v45 - - *(*int32)(unsafe.Pointer(bp + 16)) = _v46 - - _ = crt.Xfprintf(t, _v1, int32(uintptr(unsafe.Pointer(&s__8))), bp+0) - _v48 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v49 = int32(int32(_v4) + int32(0)) - _v50 = *(*int32)(unsafe.Pointer(uintptr(_v49))) - _v51 = int32(int32(_v50) + int32(_v48)) - *(*int32)(unsafe.Pointer(uintptr(_v49))) = _v51 - goto l23 -l23: - _v54 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v55 = int32(int32(_v54) + int32(0)) - _v56 = int32(*(*int8)(unsafe.Pointer(uintptr(_v55)))) - _v57 = int32(int8(_v56)) - _v59 = crt.Bool32(int32(_v57) == int32(10)) - goto l24 -l24: - if _v59 != 0 { - goto l39 - } - goto l25 -l39: - _v68 = 1 - goto l28 -l25: - _v62 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v63 = int32(int32(_v62) + int32(0)) - _v64 = int32(*(*int8)(unsafe.Pointer(uintptr(_v63)))) - _v65 = int32(int8(_v64)) - _v67 = crt.Bool32(int32(_v65) == int32(13)) - goto l26 -l26: - if _v67 != 0 { - goto l40 - } - goto l27 -l40: - _v68 = 1 - goto l28 -l27: - _v68 = 0 - goto l28 -l28: - if _v68 != 0 { - goto l29 - } - goto l30 -l29: - _v69 = int32(int32(_v4) + int32(0)) - _v70 = *(*int32)(unsafe.Pointer(uintptr(_v69))) - _v71 = int32(int32(_v70) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v69))) = _v71 - goto l23 -l30: - goto l2 -l31: - goto l32 -l32: -} - -var s__7 = [16]byte{0x70, 0x72, 0x69, 0x6e, 0x74, 0x57, 0x69, 0x74, 0x68, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78} - -var s__8 = [8]byte{0x25, 0x73, 0x25, 0x2e, 0x2a, 0x73, 0x0a} - -func s_safe_strcmp(t *crt.TLS, _v1 int32, _v2 int32) int32 { - var _v14 int32 // %t12 - var _v18 int32 // %t16 - var _v5 int32 // %t3 - var _v9 int32 // %t7 - _v5 = crt.Bool32(int32(_v1) == int32(_v2)) - if _v5 != 0 { - goto l2 - } - goto l4 -l2: - return 0 -l4: - _v9 = crt.Bool32(int32(_v1) == int32(0)) - if _v9 != 0 { - goto l5 - } - goto l7 -l5: - return -1 -l7: - _v14 = crt.Bool32(int32(_v2) == int32(0)) - if _v14 != 0 { - goto l8 - } - goto l10 -l8: - return 1 -l10: - _v18 = crt.Xstrcmp(t, _v1, _v2) - return _v18 -} - -var s__9 = [12]byte{0x73, 0x61, 0x66, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x63, 0x6d, 0x70} - -func Xstrglob(t *crt.TLS, _v1 int32, _v2 int32) int32 { - bp := t.Alloc(32) - defer t.Free(32) - var _v110 int32 // %t101 - var _v112 int32 // %t103 - var _v115 int32 // %t106 - var _v117 int32 // %t108 - var _v118 int32 // %t109 - var _v20 int32 // %t11 - var _v119 int32 // %t110 - var _v120 int32 // %t111 - var _v121 int32 // %t112 - var _v122 int32 // %t113 - var _v123 int32 // %t114 - var _v124 int32 // %t115 - var _v126 int32 // %t117 - var _v128 int32 // %t119 - var _v21 int32 // %t12 - var _v129 int32 // %t120 - var _v130 int32 // %t121 - var _v131 int32 // %t122 - var _v132 int32 // %t123 - var _v133 int32 // %t124 - var _v134 int32 // %t125 - var _v136 int32 // %t127 - var _v138 int32 // %t129 - var _v139 int32 // %t130 - var _v140 int32 // %t131 - var _v141 int32 // %t132 - var _v142 int32 // %t133 - var _v143 int32 // %t134 - var _v144 int32 // %t135 - var _v145 int32 // %t136 - var _v147 int32 // %t138 - var _v148 int32 // %t139 - var _v23 int32 // %t14 - var _v150 int32 // %t141 - var _v152 int32 // %t143 - var _v153 int32 // %t144 - var _v154 int32 // %t145 - var _v155 int32 // %t146 - var _v156 int32 // %t147 - var _v157 int32 // %t148 - var _v158 int32 // %t149 - var _v24 int32 // %t15 - var _v159 int32 // %t150 - var _v160 int32 // %t151 - var _v162 int32 // %t153 - var _v163 int32 // %t154 - var _v164 int32 // %t155 - var _v166 int32 // %t157 - var _v25 int32 // %t16 - var _v169 int32 // %t160 - var _v170 int32 // %t161 - var _v171 int32 // %t162 - var _v172 int32 // %t163 - var _v174 int32 // %t165 - var _v175 int32 // %t166 - var _v178 int32 // %t169 - var _v26 int32 // %t17 - var _v179 int32 // %t170 - var _v180 int32 // %t171 - var _v181 int32 // %t172 - var _v183 int32 // %t174 - var _v184 int32 // %t175 - var _v185 int32 // %t176 - var _v187 int32 // %t178 - var _v188 int32 // %t179 - var _v27 int32 // %t18 - var _v189 int32 // %t180 - var _v190 int32 // %t181 - var _v191 int32 // %t182 - var _v192 int32 // %t183 - var _v193 int32 // %t184 - var _v194 int32 // %t185 - var _v195 int32 // %t186 - var _v196 int32 // %t187 - var _v197 int32 // %t188 - var _v198 int32 // %t189 - var _v28 int32 // %t19 - var _v199 int32 // %t190 - var _v200 int32 // %t191 - var _v201 int32 // %t192 - var _v203 int32 // %t194 - var _v205 int32 // %t196 - var _v206 int32 // %t197 - var _v207 int32 // %t198 - var _v208 int32 // %t199 - var _v29 int32 // %t20 - var _v210 int32 // %t201 - var _v211 int32 // %t202 - var _v212 int32 // %t203 - var _v213 int32 // %t204 - var _v214 int32 // %t205 - var _v215 int32 // %t206 - var _v216 int32 // %t207 - var _v217 int32 // %t208 - var _v218 int32 // %t209 - var _v30 int32 // %t21 - var _v219 int32 // %t210 - var _v221 int32 // %t212 - var _v222 int32 // %t213 - var _v223 int32 // %t214 - var _v224 int32 // %t215 - var _v226 int32 // %t217 - var _v227 int32 // %t218 - var _v229 int32 // %t220 - var _v231 int32 // %t222 - var _v234 int32 // %t225 - var _v235 int32 // %t226 - var _v236 int32 // %t227 - var _v237 int32 // %t228 - var _v32 int32 // %t23 - var _v239 int32 // %t230 - var _v242 int32 // %t233 - var _v243 int32 // %t234 - var _v244 int32 // %t235 - var _v245 int32 // %t236 - var _v247 int32 // %t238 - var _v248 int32 // %t239 - var _v33 int32 // %t24 - var _v251 int32 // %t242 - var _v252 int32 // %t243 - var _v253 int32 // %t244 - var _v254 int32 // %t245 - var _v255 int32 // %t246 - var _v256 int32 // %t247 - var _v257 int32 // %t248 - var _v258 int32 // %t249 - var _v259 int32 // %t250 - var _v260 int32 // %t251 - var _v264 int32 // %t255 - var _v265 int32 // %t256 - var _v266 int32 // %t257 - var _v267 int32 // %t258 - var _v268 int32 // %t259 - var _v35 int32 // %t26 - var _v271 int32 // %t262 - var _v272 int32 // %t263 - var _v273 int32 // %t264 - var _v274 int32 // %t265 - var _v275 int32 // %t266 - var _v276 int32 // %t267 - var _v277 int32 // %t268 - var _v278 int32 // %t269 - var _v36 int32 // %t27 - var _v279 int32 // %t270 - var _v280 int32 // %t271 - var _v284 int32 // %t275 - var _v285 int32 // %t276 - var _v287 int32 // %t278 - var _v288 int32 // %t279 - var _v37 int32 // %t28 - var _v289 int32 // %t280 - var _v292 int32 // %t283 - var _v293 int32 // %t284 - var _v294 int32 // %t285 - var _v295 int32 // %t286 - var _v296 int32 // %t287 - var _v297 int32 // %t288 - var _v298 int32 // %t289 - var _v299 int32 // %t290 - var _v300 int32 // %t291 - var _v301 int32 // %t292 - var _v305 int32 // %t296 - var _v306 int32 // %t297 - var _v307 int32 // %t298 - var _v308 int32 // %t299 - var _v12 int32 // %t3 - var _v39 int32 // %t30 - var _v309 int32 // %t300 - var _v310 int32 // %t301 - var _v311 int32 // %t302 - var _v312 int32 // %t303 - var _v313 int32 // %t304 - var _v314 int32 // %t305 - var _v315 int32 // %t306 - var _v317 int32 // %t308 - var _v318 int32 // %t309 - var _v40 int32 // %t31 - var _v319 int32 // %t310 - var _v321 int32 // %t312 - var _v41 int32 // %t32 - var _v42 int32 // %t33 - var _v43 int32 // %t34 - var _v44 int32 // %t35 - var _v46 int32 // %t37 - var _v47 int32 // %t38 - var _v13 int32 // %t4 - var _v49 int32 // %t40 - var _v51 int32 // %t42 - var _v53 int32 // %t44 - var _v55 int32 // %t46 - var _v56 int32 // %t47 - var _v57 int32 // %t48 - var _v58 int32 // %t49 - var _v14 int32 // %t5 - var _v60 int32 // %t51 - var _v61 int32 // %t52 - var _v62 int32 // %t53 - var _v63 int32 // %t54 - var _v64 int32 // %t55 - var _v65 int32 // %t56 - var _v66 int32 // %t57 - var _v67 int32 // %t58 - var _v68 int32 // %t59 - var _v15 int32 // %t6 - var _v69 int32 // %t60 - var _v71 int32 // %t62 - var _v72 int32 // %t63 - var _v73 int32 // %t64 - var _v74 int32 // %t65 - var _v75 int32 // %t66 - var _v76 int32 // %t67 - var _v77 int32 // %t68 - var _v78 int32 // %t69 - var _v16 int32 // %t7 - var _v80 int32 // %t71 - var _v81 int32 // %t72 - var _v82 int32 // %t73 - var _v83 int32 // %t74 - var _v84 int32 // %t75 - var _v85 int32 // %t76 - var _v86 int32 // %t77 - var _v87 int32 // %t78 - var _v88 int32 // %t79 - var _v17 int32 // %t8 - var _v89 int32 // %t80 - var _v90 int32 // %t81 - var _v92 int32 // %t83 - var _v94 int32 // %t85 - var _v95 int32 // %t86 - var _v96 int32 // %t87 - var _v18 int32 // %t9 - var _v99 int32 // %t90 - var _v101 int32 // %t92 - var _v102 int32 // %t93 - var _v103 int32 // %t94 - var _v104 int32 // %t95 - var _v105 int32 // %t96 - var _v106 int32 // %t97 - var _v108 int32 // %t99 - var _v3 = int32(bp + 0) // %v1 - var _v5 = int32(bp + 4) // %v2 - var _v7 = int32(bp + 8) // %v3 - var _v8 = int32(bp + 12) // %v4 - var _v9 = int32(bp + 16) // %v5 - var _v10 = int32(bp + 20) // %v6 - var _v11 = int32(bp + 24) // %v7 - *(*int32)(unsafe.Pointer(uintptr(_v3))) = _v1 - *(*int32)(unsafe.Pointer(uintptr(_v5))) = _v2 - goto l2 -l2: - _v12 = int32(int32(_v3) + int32(0)) - _v13 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v14 = int32(int32(_v13) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v12))) = _v14 - _v15 = int32(*(*int8)(unsafe.Pointer(uintptr(_v13)))) - _v16 = int32(int8(_v15)) - _v17 = int32(int32(_v7) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v17))) = _v16 - _v18 = *(*int32)(unsafe.Pointer(uintptr(_v17))) - _v20 = crt.Bool32(int32(_v18) != int32(0)) - if _v20 != 0 { - goto l3 - } - goto l139 -l3: - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v23 = crt.Bool32(int32(_v21) == int32(42)) - if _v23 != 0 { - goto l4 - } - goto l49 -l4: - goto l5 -l5: - _v24 = int32(int32(_v3) + int32(0)) - _v25 = *(*int32)(unsafe.Pointer(uintptr(_v24))) - _v26 = int32(int32(_v25) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v24))) = _v26 - _v27 = int32(*(*int8)(unsafe.Pointer(uintptr(_v25)))) - _v28 = int32(int8(_v27)) - _v29 = int32(int32(_v7) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v29))) = _v28 - _v30 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v32 = crt.Bool32(int32(_v30) == int32(42)) - goto l6 -l6: - if _v32 != 0 { - goto l142 - } - goto l7 -l142: - _v36 = 1 - goto l10 -l7: - _v33 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v35 = crt.Bool32(int32(_v33) == int32(63)) - goto l8 -l8: - if _v35 != 0 { - goto l143 - } - goto l9 -l143: - _v36 = 1 - goto l10 -l9: - _v36 = 0 - goto l10 -l10: - if _v36 != 0 { - goto l11 - } - goto l20 -l11: - _v37 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v39 = crt.Bool32(int32(_v37) == int32(63)) - goto l12 -l12: - if _v39 != 0 { - goto l13 - } - goto l144 -l144: - _v47 = 0 - goto l16 -l13: - _v40 = int32(int32(_v5) + int32(0)) - _v41 = *(*int32)(unsafe.Pointer(uintptr(_v40))) - _v42 = int32(int32(_v41) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v40))) = _v42 - _v43 = int32(*(*int8)(unsafe.Pointer(uintptr(_v41)))) - _v44 = int32(int8(_v43)) - _v46 = crt.Bool32(int32(_v44) == int32(0)) - goto l14 -l14: - if _v46 != 0 { - goto l15 - } - goto l145 -l145: - _v47 = 0 - goto l16 -l15: - _v47 = 1 - goto l16 -l16: - if _v47 != 0 { - goto l17 - } - goto l19 -l17: - return 0 -l19: - goto l5 -l20: - _v49 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v51 = crt.Bool32(int32(_v49) == int32(0)) - if _v51 != 0 { - goto l21 - } - goto l23 -l21: - return 1 -l23: - _v53 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v55 = crt.Bool32(int32(_v53) == int32(91)) - if _v55 != 0 { - goto l24 - } - goto l34 -l24: - goto l25 -l25: - _v56 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v57 = int32(*(*int8)(unsafe.Pointer(uintptr(_v56)))) - goto l26 -l26: - if _v57 != 0 { - goto l27 - } - goto l146 -l146: - _v63 = 0 - goto l30 -l27: - _v58 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v60 = int32(int32(_v58) - int32(1)) - _v61 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v62 = Xstrglob(t, _v60, _v61) - goto l28 -l28: - if _v62 != 0 { - goto l29 - } - goto l147 -l147: - _v63 = 0 - goto l30 -l29: - _v63 = 1 - goto l30 -l30: - if _v63 != 0 { - goto l31 - } - goto l32 -l31: - _v64 = int32(int32(_v5) + int32(0)) - _v65 = *(*int32)(unsafe.Pointer(uintptr(_v64))) - _v66 = int32(int32(_v65) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v64))) = _v66 - goto l25 -l32: - _v67 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v68 = int32(*(*int8)(unsafe.Pointer(uintptr(_v67)))) - _v69 = int32(int8(_v68)) - _v71 = crt.Bool32(int32(_v69) != int32(0)) - return _v71 -l34: - goto l35 -l35: - goto l36 -l36: - _v72 = int32(int32(_v5) + int32(0)) - _v73 = *(*int32)(unsafe.Pointer(uintptr(_v72))) - _v74 = int32(int32(_v73) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v72))) = _v74 - _v75 = int32(*(*int8)(unsafe.Pointer(uintptr(_v73)))) - _v76 = int32(int8(_v75)) - _v77 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v77))) = _v76 - _v78 = *(*int32)(unsafe.Pointer(uintptr(_v77))) - _v80 = crt.Bool32(int32(_v78) != int32(0)) - if _v80 != 0 { - goto l37 - } - goto l47 -l37: - goto l38 -l38: - _v81 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v82 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v83 = crt.Bool32(int32(_v81) != int32(_v82)) - if _v83 != 0 { - goto l39 - } - goto l43 -l39: - _v84 = int32(int32(_v5) + int32(0)) - _v85 = *(*int32)(unsafe.Pointer(uintptr(_v84))) - _v86 = int32(int32(_v85) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v84))) = _v86 - _v87 = int32(*(*int8)(unsafe.Pointer(uintptr(_v85)))) - _v88 = int32(int8(_v87)) - _v89 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v89))) = _v88 - _v90 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v92 = crt.Bool32(int32(_v90) == int32(0)) - if _v92 != 0 { - goto l40 - } - goto l42 -l40: - return 0 -l42: - goto l38 -l43: - _v94 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v95 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v96 = Xstrglob(t, _v94, _v95) - if _v96 != 0 { - goto l44 - } - goto l46 -l44: - return 1 -l46: - goto l36 -l47: - return 0 -l49: - _v99 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v101 = crt.Bool32(int32(_v99) == int32(63)) - if _v101 != 0 { - goto l50 - } - goto l54 -l50: - _v102 = int32(int32(_v5) + int32(0)) - _v103 = *(*int32)(unsafe.Pointer(uintptr(_v102))) - _v104 = int32(int32(_v103) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v102))) = _v104 - _v105 = int32(*(*int8)(unsafe.Pointer(uintptr(_v103)))) - _v106 = int32(int8(_v105)) - _v108 = crt.Bool32(int32(_v106) == int32(0)) - if _v108 != 0 { - goto l51 - } - goto l53 -l51: - return 0 -l53: - goto l137 -l54: - _v110 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v112 = crt.Bool32(int32(_v110) == int32(91)) - if _v112 != 0 { - goto l55 - } - goto l108 -l55: - *(*int32)(unsafe.Pointer(uintptr(_v11))) = 0 - _v115 = int32(int32(_v10) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v115))) = 0 - _v117 = int32(int32(_v9) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v117))) = 0 - _v118 = int32(int32(_v5) + int32(0)) - _v119 = *(*int32)(unsafe.Pointer(uintptr(_v118))) - _v120 = int32(int32(_v119) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v118))) = _v120 - _v121 = int32(*(*int8)(unsafe.Pointer(uintptr(_v119)))) - _v122 = int32(int8(_v121)) - _v123 = int32(int32(_v7) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v123))) = _v122 - _v124 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v126 = crt.Bool32(int32(_v124) == int32(0)) - if _v126 != 0 { - goto l56 - } - goto l58 -l56: - return 0 -l58: - _v128 = int32(int32(_v3) + int32(0)) - _v129 = *(*int32)(unsafe.Pointer(uintptr(_v128))) - _v130 = int32(int32(_v129) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v128))) = _v130 - _v131 = int32(*(*int8)(unsafe.Pointer(uintptr(_v129)))) - _v132 = int32(int8(_v131)) - _v133 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v133))) = _v132 - _v134 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v136 = crt.Bool32(int32(_v134) == int32(94)) - if _v136 != 0 { - goto l59 - } - goto l60 -l59: - _v138 = int32(int32(_v9) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v138))) = 1 - _v139 = int32(int32(_v3) + int32(0)) - _v140 = *(*int32)(unsafe.Pointer(uintptr(_v139))) - _v141 = int32(int32(_v140) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v139))) = _v141 - _v142 = int32(*(*int8)(unsafe.Pointer(uintptr(_v140)))) - _v143 = int32(int8(_v142)) - _v144 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v144))) = _v143 - goto l60 -l60: - _v145 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v147 = crt.Bool32(int32(_v145) == int32(93)) - if _v147 != 0 { - goto l61 - } - goto l148 -l148: - goto l64 -l61: - _v148 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v150 = crt.Bool32(int32(_v148) == int32(93)) - if _v150 != 0 { - goto l62 - } - goto l63 -l62: - _v152 = int32(int32(_v10) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v152))) = 1 - goto l63 -l63: - _v153 = int32(int32(_v3) + int32(0)) - _v154 = *(*int32)(unsafe.Pointer(uintptr(_v153))) - _v155 = int32(int32(_v154) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v153))) = _v155 - _v156 = int32(*(*int8)(unsafe.Pointer(uintptr(_v154)))) - _v157 = int32(int8(_v156)) - _v158 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v158))) = _v157 - goto l64 -l64: - goto l65 -l65: - _v159 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - goto l66 -l66: - if _v159 != 0 { - goto l67 - } - goto l149 -l149: - _v163 = 0 - goto l70 -l67: - _v160 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v162 = crt.Bool32(int32(_v160) != int32(93)) - goto l68 -l68: - if _v162 != 0 { - goto l69 - } - goto l150 -l150: - _v163 = 0 - goto l70 -l69: - _v163 = 1 - goto l70 -l70: - if _v163 != 0 { - goto l71 - } - goto l99 -l71: - _v164 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v166 = crt.Bool32(int32(_v164) == int32(45)) - goto l72 -l72: - if _v166 != 0 { - goto l73 - } - goto l151 -l151: - _v175 = 0 - goto l76 -l73: - _v169 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v170 = int32(int32(_v169) + int32(0)) - _v171 = int32(*(*int8)(unsafe.Pointer(uintptr(_v170)))) - _v172 = int32(int8(_v171)) - _v174 = crt.Bool32(int32(_v172) != int32(93)) - goto l74 -l74: - if _v174 != 0 { - goto l75 - } - goto l152 -l152: - _v175 = 0 - goto l76 -l75: - _v175 = 1 - goto l76 -l76: - goto l77 -l77: - if _v175 != 0 { - goto l78 - } - goto l153 -l153: - _v184 = 0 - goto l81 -l78: - _v178 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v179 = int32(int32(_v178) + int32(0)) - _v180 = int32(*(*int8)(unsafe.Pointer(uintptr(_v179)))) - _v181 = int32(int8(_v180)) - _v183 = crt.Bool32(int32(_v181) != int32(0)) - goto l79 -l79: - if _v183 != 0 { - goto l80 - } - goto l154 -l154: - _v184 = 0 - goto l81 -l80: - _v184 = 1 - goto l81 -l81: - goto l82 -l82: - if _v184 != 0 { - goto l83 - } - goto l155 -l155: - _v188 = 0 - goto l86 -l83: - _v185 = *(*int32)(unsafe.Pointer(uintptr(_v11))) - _v187 = crt.Bool32(int32(_v185) > int32(0)) - goto l84 -l84: - if _v187 != 0 { - goto l85 - } - goto l156 -l156: - _v188 = 0 - goto l86 -l85: - _v188 = 1 - goto l86 -l86: - if _v188 != 0 { - goto l87 - } - goto l95 -l87: - _v189 = int32(int32(_v3) + int32(0)) - _v190 = *(*int32)(unsafe.Pointer(uintptr(_v189))) - _v191 = int32(int32(_v190) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v189))) = _v191 - _v192 = int32(*(*int8)(unsafe.Pointer(uintptr(_v190)))) - _v193 = int32(int8(_v192)) - _v194 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v194))) = _v193 - _v195 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v196 = *(*int32)(unsafe.Pointer(uintptr(_v11))) - _v197 = crt.Bool32(int32(_v195) >= int32(_v196)) - goto l88 -l88: - if _v197 != 0 { - goto l89 - } - goto l157 -l157: - _v201 = 0 - goto l92 -l89: - _v198 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v199 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v200 = crt.Bool32(int32(_v198) <= int32(_v199)) - goto l90 -l90: - if _v200 != 0 { - goto l91 - } - goto l158 -l158: - _v201 = 0 - goto l92 -l91: - _v201 = 1 - goto l92 -l92: - if _v201 != 0 { - goto l93 - } - goto l94 -l93: - _v203 = int32(int32(_v10) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v203))) = 1 - goto l94 -l94: - _v205 = int32(int32(_v11) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v205))) = 0 - goto l98 -l95: - _v206 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v207 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v208 = crt.Bool32(int32(_v206) == int32(_v207)) - if _v208 != 0 { - goto l96 - } - goto l97 -l96: - _v210 = int32(int32(_v10) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v210))) = 1 - goto l97 -l97: - _v211 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v212 = int32(int32(_v11) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v212))) = _v211 - goto l98 -l98: - _v213 = int32(int32(_v3) + int32(0)) - _v214 = *(*int32)(unsafe.Pointer(uintptr(_v213))) - _v215 = int32(int32(_v214) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v213))) = _v215 - _v216 = int32(*(*int8)(unsafe.Pointer(uintptr(_v214)))) - _v217 = int32(int8(_v216)) - _v218 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v218))) = _v217 - goto l65 -l99: - _v219 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v221 = crt.Bool32(int32(_v219) == int32(0)) - goto l100 -l100: - if _v221 != 0 { - goto l159 - } - goto l101 -l159: - _v227 = 1 - goto l104 -l101: - _v222 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _v223 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v224 = int32(_v222 ^ _v223) - _v226 = crt.Bool32(int32(_v224) == int32(0)) - goto l102 -l102: - if _v226 != 0 { - goto l160 - } - goto l103 -l160: - _v227 = 1 - goto l104 -l103: - _v227 = 0 - goto l104 -l104: - if _v227 != 0 { - goto l105 - } - goto l107 -l105: - return 0 -l107: - goto l136 -l108: - _v229 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v231 = crt.Bool32(int32(_v229) == int32(35)) - if _v231 != 0 { - goto l109 - } - goto l131 -l109: - _v234 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v235 = int32(int32(_v234) + int32(0)) - _v236 = int32(*(*int8)(unsafe.Pointer(uintptr(_v235)))) - _v237 = int32(int8(_v236)) - _v239 = crt.Bool32(int32(_v237) == int32(45)) - goto l110 -l110: - if _v239 != 0 { - goto l161 - } - goto l111 -l161: - _v248 = 1 - goto l114 -l111: - _v242 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v243 = int32(int32(_v242) + int32(0)) - _v244 = int32(*(*int8)(unsafe.Pointer(uintptr(_v243)))) - _v245 = int32(int8(_v244)) - _v247 = crt.Bool32(int32(_v245) == int32(43)) - goto l112 -l112: - if _v247 != 0 { - goto l162 - } - goto l113 -l162: - _v248 = 1 - goto l114 -l113: - _v248 = 0 - goto l114 -l114: - goto l115 -l115: - if _v248 != 0 { - goto l116 - } - goto l163 -l163: - _v265 = 0 - goto l119 -l116: - _v251 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v252 = int32(int32(_v251) + int32(1)) - _v253 = int32(*(*int8)(unsafe.Pointer(uintptr(_v252)))) - _v254 = int32(int32(uint8(_v253))) - _v255 = int32(_v254 * 2) - _v256 = crt.X__ctype_b_loc(t) - _v257 = *(*int32)(unsafe.Pointer(uintptr(_v256))) - _v258 = int32(int32(_v257) + int32(_v255)) - _v259 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v258)))) - _v260 = int32(uint16(_v259)) - _v264 = int32(int32(_v260) & int32(2048)) - goto l117 -l117: - if _v264 != 0 { - goto l118 - } - goto l164 -l164: - _v265 = 0 - goto l119 -l118: - _v265 = 1 - goto l119 -l119: - if _v265 != 0 { - goto l120 - } - goto l121 -l120: - _v266 = int32(int32(_v5) + int32(0)) - _v267 = *(*int32)(unsafe.Pointer(uintptr(_v266))) - _v268 = int32(int32(_v267) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v266))) = _v268 - goto l121 -l121: - _v271 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v272 = int32(int32(_v271) + int32(0)) - _v273 = int32(*(*int8)(unsafe.Pointer(uintptr(_v272)))) - _v274 = int32(int32(uint8(_v273))) - _v275 = int32(_v274 * 2) - _v276 = crt.X__ctype_b_loc(t) - _v277 = *(*int32)(unsafe.Pointer(uintptr(_v276))) - _v278 = int32(int32(_v277) + int32(_v275)) - _v279 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v278)))) - _v280 = int32(uint16(_v279)) - _v284 = int32(int32(_v280) & int32(2048)) - goto l122 -l122: - if _v284 != 0 { - goto l123 - } - goto l165 -l165: - _v285 = 1 - goto l124 -l123: - _v285 = 0 - goto l124 -l124: - if _v285 != 0 { - goto l125 - } - goto l127 -l125: - return 0 -l127: - _v287 = int32(int32(_v5) + int32(0)) - _v288 = *(*int32)(unsafe.Pointer(uintptr(_v287))) - _v289 = int32(int32(_v288) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v287))) = _v289 - goto l128 -l128: - _v292 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v293 = int32(int32(_v292) + int32(0)) - _v294 = int32(*(*int8)(unsafe.Pointer(uintptr(_v293)))) - _v295 = int32(int32(uint8(_v294))) - _v296 = int32(_v295 * 2) - _v297 = crt.X__ctype_b_loc(t) - _v298 = *(*int32)(unsafe.Pointer(uintptr(_v297))) - _v299 = int32(int32(_v298) + int32(_v296)) - _v300 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v299)))) - _v301 = int32(uint16(_v300)) - _v305 = int32(int32(_v301) & int32(2048)) - if _v305 != 0 { - goto l129 - } - goto l130 -l129: - _v306 = int32(int32(_v5) + int32(0)) - _v307 = *(*int32)(unsafe.Pointer(uintptr(_v306))) - _v308 = int32(int32(_v307) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v306))) = _v308 - goto l128 -l130: - goto l135 -l131: - _v309 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v310 = int32(int32(_v5) + int32(0)) - _v311 = *(*int32)(unsafe.Pointer(uintptr(_v310))) - _v312 = int32(int32(_v311) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v310))) = _v312 - _v313 = int32(*(*int8)(unsafe.Pointer(uintptr(_v311)))) - _v314 = int32(int8(_v313)) - _v315 = crt.Bool32(int32(_v309) != int32(_v314)) - if _v315 != 0 { - goto l132 - } - goto l134 -l132: - return 0 -l134: - goto l135 -l135: - goto l136 -l136: - goto l137 -l137: - goto l138 -l138: - goto l2 -l139: - _v317 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v318 = int32(*(*int8)(unsafe.Pointer(uintptr(_v317)))) - _v319 = int32(int8(_v318)) - _v321 = crt.Bool32(int32(_v319) == int32(0)) - return _v321 -} - -var s__10 = [8]byte{0x73, 0x74, 0x72, 0x67, 0x6c, 0x6f, 0x62} - -func s_maybeClose(t *crt.TLS, _v1 int32) { - var _v3 int32 // %t2 - var _v4 int32 // %t3 - var _v6 int32 // %t5 - var _v7 int32 // %t6 - var _v8 int32 // %t7 - _v3 = *(*int32)(unsafe.Pointer(&crt.Xstdout)) - _v4 = crt.Bool32(int32(_v1) != int32(_v3)) - goto l2 -l2: - if _v4 != 0 { - goto l3 - } - goto l10 -l10: - _v8 = 0 - goto l6 -l3: - _v6 = *(*int32)(unsafe.Pointer(&crt.Xstderr)) - _v7 = crt.Bool32(int32(_v1) != int32(_v6)) - goto l4 -l4: - if _v7 != 0 { - goto l5 - } - goto l11 -l11: - _v8 = 0 - goto l6 -l5: - _v8 = 1 - goto l6 -l6: - if _v8 != 0 { - goto l7 - } - goto l8 -l7: - _ = crt.Xfclose(t, _v1) - goto l8 -l8: - goto l9 -l9: -} - -var s__11 = [11]byte{0x6d, 0x61, 0x79, 0x62, 0x65, 0x43, 0x6c, 0x6f, 0x73, 0x65} - -func s_errorMessage(t *crt.TLS, _v1 int32, args uintptr) { - bp := t.Alloc(48) - defer t.Free(48) - var _v18 int32 // %t14 - var _v21 int32 // %t17 - var _v23 int32 // %t19 - var _v26 int32 // %t22 - var _v30 int32 // %t26 - var _v33 int32 // %t29 - var _v7 int32 // %t3 - var _v36 int32 // %t32 - var _v37 int32 // %t33 - var _v38 int32 // %t34 - var _v41 int32 // %t37 - var _v43 int32 // %t39 - var _v8 int32 // %t4 - var _v46 int32 // %t42 - var _v48 int32 // %t44 - var _v51 int32 // %t47 - var _v52 int32 // %t48 - var _v2 = int32(bp + 8) // %v2 - var _v3 = int32(bp + 12) // %v3 - var _v4 = int32(bp + 16) // %v4 - *(*uintptr)(unsafe.Pointer(bp + 8)) = args - _v7 = Xsqlite3_vmprintf(t, _v1, _v2) - _v8 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v8))) = _v7 - *(*int32)(unsafe.Pointer(bp + 0)) = int32(uintptr(unsafe.Pointer(&s_g)) + 32) - - _ = Xsqlite3_snprintf(t, 30, _v4, int32(uintptr(unsafe.Pointer(&s__13))), bp+0) - _v18 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) - if _v18 != 0 { - goto l2 - } - goto l3 -l2: - _v21 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) - _v23 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - s_printWithPrefix(t, _v21, _v4, _v23) - _v26 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) - _ = crt.Xfflush(t, _v26) - goto l3 -l3: - _v30 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 20)) - goto l4 -l4: - if _v30 != 0 { - goto l5 - } - goto l12 -l12: - _v38 = 0 - goto l8 -l5: - _v33 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) - _v36 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v37 = s_safe_strcmp(t, _v33, _v36) - goto l6 -l6: - if _v37 != 0 { - goto l7 - } - goto l13 -l13: - _v38 = 0 - goto l8 -l7: - _v38 = 1 - goto l8 -l8: - if _v38 != 0 { - goto l9 - } - goto l10 -l9: - _v41 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 20)) - _v43 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - s_printWithPrefix(t, _v41, _v4, _v43) - _v46 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 20)) - _ = crt.Xfflush(t, _v46) - goto l10 -l10: - _v48 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v48) - _v51 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 80)) - _v52 = int32(int32(_v51) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 80)) = _v52 - goto l11 -l11: -} - -var s__12 = [13]byte{0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65} - -var s__13 = [11]byte{0x25, 0x73, 0x3a, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x3a, 0x20} - -func s_fatalError(t *crt.TLS, _v1 int32, args uintptr) { - bp := t.Alloc(64) - defer t.Free(64) - var _v19 int32 // %t14 - var _v22 int32 // %t17 - var _v24 int32 // %t19 - var _v27 int32 // %t22 - var _v31 int32 // %t26 - var _v34 int32 // %t29 - var _v8 int32 // %t3 - var _v37 int32 // %t32 - var _v40 int32 // %t35 - var _v41 int32 // %t36 - var _v42 int32 // %t37 - var _v9 int32 // %t4 - var _v45 int32 // %t40 - var _v47 int32 // %t42 - var _v50 int32 // %t45 - var _v54 int32 // %t49 - var _v55 int32 // %t50 - var _v58 int32 // %t53 - var _v64 int32 // %t59 - var _v66 int32 // %t61 - var _v67 int32 // %t62 - var _v68 int32 // %t63 - var _v69 int32 // %t64 - var _v71 int32 // %t66 - var _v72 int32 // %t67 - var _v77 int32 // %t72 - var _v2 = int32(bp + 8) // %v2 - var _v3 = int32(bp + 12) // %v3 - var _v4 = int32(bp + 16) // %v4 - var _v5 = int32(bp + 48) // %v5 - *(*uintptr)(unsafe.Pointer(bp + 8)) = args - _v8 = Xsqlite3_vmprintf(t, _v1, _v2) - _v9 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v9))) = _v8 - *(*int32)(unsafe.Pointer(bp + 0)) = int32(uintptr(unsafe.Pointer(&s_g)) + 32) - - _ = Xsqlite3_snprintf(t, 30, _v4, int32(uintptr(unsafe.Pointer(&s__15))), bp+0) - _v19 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) - if _v19 != 0 { - goto l2 - } - goto l3 -l2: - _v22 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) - _v24 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - s_printWithPrefix(t, _v22, _v4, _v24) - _v27 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) - _ = crt.Xfflush(t, _v27) - _v31 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) - s_maybeClose(t, _v31) - goto l3 -l3: - _v34 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 20)) - goto l4 -l4: - if _v34 != 0 { - goto l5 - } - goto l22 -l22: - _v42 = 0 - goto l8 -l5: - _v37 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) - _v40 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v41 = s_safe_strcmp(t, _v37, _v40) - goto l6 -l6: - if _v41 != 0 { - goto l7 - } - goto l23 -l23: - _v42 = 0 - goto l8 -l7: - _v42 = 1 - goto l8 -l8: - if _v42 != 0 { - goto l9 - } - goto l10 -l9: - _v45 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 20)) - _v47 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - s_printWithPrefix(t, _v45, _v4, _v47) - _v50 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 20)) - _ = crt.Xfflush(t, _v50) - _v54 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 20)) - s_maybeClose(t, _v54) - goto l10 -l10: - _v55 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v55) - _v58 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - if _v58 != 0 { - goto l11 - } - goto l20 -l11: - *(*int32)(unsafe.Pointer(uintptr(_v5))) = 0 - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) = 0 - goto l12 -l12: - - _v64 = s_trySql(t, int32(uintptr(unsafe.Pointer(&s__16))), 0) - _v66 = crt.Bool32(int32(_v64) == int32(5)) - goto l13 -l13: - if _v66 != 0 { - goto l14 - } - goto l24 -l24: - _v72 = 0 - goto l17 -l14: - _v67 = int32(int32(_v5) + int32(0)) - _v68 = *(*int32)(unsafe.Pointer(uintptr(_v67))) - _v69 = int32(int32(_v68) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v67))) = _v69 - _v71 = crt.Bool32(int32(_v68) < int32(100)) - goto l15 -l15: - if _v71 != 0 { - goto l16 - } - goto l25 -l25: - _v72 = 0 - goto l17 -l16: - _v72 = 1 - goto l17 -l17: - if _v72 != 0 { - goto l18 - } - goto l19 -l18: - _ = Xsqlite3_sleep(t, 10) - goto l12 -l19: - goto l20 -l20: - _v77 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _ = Xsqlite3_close(t, _v77) - crt.Xexit(t, 1) - goto l21 -l21: -} - -var s__14 = [11]byte{0x66, 0x61, 0x74, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72} - -var s__15 = [11]byte{0x25, 0x73, 0x3a, 0x46, 0x41, 0x54, 0x41, 0x4c, 0x3a, 0x20} - -var s__16 = [30]byte{ - 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x53, 0x45, - 0x54, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x48, 0x61, 0x6c, 0x74, 0x3d, 0x31, 0x3b, -} - -func s_logMessage(t *crt.TLS, _v1 int32, args uintptr) { - bp := t.Alloc(48) - defer t.Free(48) - var _v18 int32 // %t14 - var _v21 int32 // %t17 - var _v23 int32 // %t19 - var _v26 int32 // %t22 - var _v28 int32 // %t24 - var _v7 int32 // %t3 - var _v8 int32 // %t4 - var _v2 = int32(bp + 8) // %v2 - var _v3 = int32(bp + 12) // %v3 - var _v4 = int32(bp + 16) // %v4 - *(*uintptr)(unsafe.Pointer(bp + 8)) = args - _v7 = Xsqlite3_vmprintf(t, _v1, _v2) - _v8 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v8))) = _v7 - *(*int32)(unsafe.Pointer(bp + 0)) = int32(uintptr(unsafe.Pointer(&s_g)) + 32) - - _ = Xsqlite3_snprintf(t, 30, _v4, int32(uintptr(unsafe.Pointer(&s__18))), bp+0) - _v18 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) - if _v18 != 0 { - goto l2 - } - goto l3 -l2: - _v21 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) - _v23 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - s_printWithPrefix(t, _v21, _v4, _v23) - _v26 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) - _ = crt.Xfflush(t, _v26) - goto l3 -l3: - _v28 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v28) - goto l4 -l4: -} - -var s__17 = [11]byte{0x6c, 0x6f, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65} - -var s__18 = [5]byte{0x25, 0x73, 0x3a, 0x20} - -func s_clipLength(t *crt.TLS, _v1 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v13 int32 // %t11 - var _v14 int32 // %t12 - var _v15 int32 // %t13 - var _v16 int32 // %t14 - var _v17 int32 // %t15 - var _v18 int32 // %t16 - var _v19 int32 // %t17 - var _v20 int32 // %t18 - var _v21 int32 // %t19 - var _v4 int32 // %t2 - var _v25 int32 // %t23 - var _v26 int32 // %t24 - var _v27 int32 // %t25 - var _v28 int32 // %t26 - var _v29 int32 // %t27 - var _v30 int32 // %t28 - var _v5 int32 // %t3 - var _v7 int32 // %t5 - var _v8 int32 // %t6 - var _v10 int32 // %t8 - var _v11 int32 // %t9 - var _v2 = int32(bp + 0) // %v2 - _v4 = crt.Xstrlen(t, _v1) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v4 - goto l2 -l2: - _v5 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v7 = crt.Bool32(int32(_v5) > int32(0)) - goto l3 -l3: - if _v7 != 0 { - goto l4 - } - goto l12 -l12: - _v26 = 0 - goto l7 -l4: - _v8 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v10 = int32(int32(_v8) - int32(1)) - _v11 = int32(_v10 * 1) - _v13 = int32(int32(_v1) + int32(_v11)) - _v14 = int32(*(*int8)(unsafe.Pointer(uintptr(_v13)))) - _v15 = int32(int32(uint8(_v14))) - _v16 = int32(_v15 * 2) - _v17 = crt.X__ctype_b_loc(t) - _v18 = *(*int32)(unsafe.Pointer(uintptr(_v17))) - _v19 = int32(int32(_v18) + int32(_v16)) - _v20 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v19)))) - _v21 = int32(uint16(_v20)) - _v25 = int32(int32(_v21) & int32(8192)) - goto l5 -l5: - if _v25 != 0 { - goto l6 - } - goto l13 -l13: - _v26 = 0 - goto l7 -l6: - _v26 = 1 - goto l7 -l7: - if _v26 != 0 { - goto l8 - } - goto l9 -l8: - _v27 = int32(int32(_v2) + int32(0)) - _v28 = *(*int32)(unsafe.Pointer(uintptr(_v27))) - _v29 = int32(int32(_v28) - int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v27))) = _v29 - goto l2 -l9: - _v30 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - return _v30 -} - -var s__19 = [11]byte{0x63, 0x6c, 0x69, 0x70, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68} - -func s_vfsNameFunc(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32) { - bp := t.Alloc(16) - defer t.Free(16) - var _v16 int32 // %t11 - var _v7 int32 // %t2 - var _v9 int32 // %t4 - var _v12 int32 // %t7 - var _v14 int32 // %t9 - var _v4 = int32(bp + 0) // %v4 - var _v5 = int32(bp + 4) // %v5 - _v7 = Xsqlite3_context_db_handle(t, _v1) - *(*int32)(unsafe.Pointer(uintptr(_v4))) = _v7 - *(*int32)(unsafe.Pointer(uintptr(_v5))) = 0 - _v9 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v12 = int32(int32(_v5) + int32(0)) - _ = Xsqlite3_file_control(t, _v9, int32(uintptr(unsafe.Pointer(&s__21))), 12, _v12) - _v14 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - if _v14 != 0 { - goto l2 - } - goto l3 -l2: - _v16 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - Xsqlite3_result_text(t, _v1, _v16, -1, *(*int32)(unsafe.Pointer(&struct{ f func(*crt.TLS, int32) }{Xsqlite3_free}))) - goto l3 -l3: - goto l4 -l4: -} - -var s__20 = [12]byte{0x76, 0x66, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x46, 0x75, 0x6e, 0x63} - -var s__21 = [5]byte{0x6d, 0x61, 0x69, 0x6e} - -func s_busyHandler(t *crt.TLS, _v1 int32, _v2 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v12 int32 // %t10 - var _v14 int32 // %t12 - var _v18 int32 // %t16 - var _v5 int32 // %t3 - var _v8 int32 // %t6 - var _v9 int32 // %t7 - _v5 = int32(_v2 * 10) - _v8 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) - _v9 = crt.Bool32(int32(_v5) > int32(_v8)) - if _v9 != 0 { - goto l2 - } - goto l6 -l2: - _v12 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) - _v14 = crt.Bool32(int32(_v12) > int32(0)) - if _v14 != 0 { - goto l3 - } - goto l4 -l3: - _v18 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) - *(*int32)(unsafe.Pointer(bp + 0)) = _v18 - s_errorMessage(t, int32(uintptr(unsafe.Pointer(&s__23))), bp+0) - goto l4 -l4: - return 0 -l6: - _ = Xsqlite3_sleep(t, 10) - return 1 -} - -var s__22 = [12]byte{0x62, 0x75, 0x73, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72} - -var s__23 = [19]byte{ - 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x20, 0x61, 0x66, 0x74, 0x65, 0x72, 0x20, 0x25, 0x64, - 0x6d, 0x73, -} - -func s_sqlTraceCallback(t *crt.TLS, _v1 int32, _v2 int32) { - bp := t.Alloc(16) - defer t.Free(16) - var _v5 int32 // %t3 - _v5 = s_clipLength(t, _v2) - *(*int32)(unsafe.Pointer(bp + 0)) = _v5 - - *(*int32)(unsafe.Pointer(bp + 8)) = _v2 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__25))), bp+0) - goto l2 -l2: -} - -var s__24 = [17]byte{0x73, 0x71, 0x6c, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b} - -var s__25 = [7]byte{0x5b, 0x25, 0x2e, 0x2a, 0x73, 0x5d} - -func s_sqlErrorCallback(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32) { - bp := t.Alloc(32) - defer t.Free(32) - var _v13 int32 // %t10 - var _v15 int32 // %t12 - var _v18 int32 // %t15 - var _v20 int32 // %t17 - var _v21 int32 // %t18 - var _v24 int32 // %t21 - var _v26 int32 // %t23 - var _v29 int32 // %t26 - var _v31 int32 // %t28 - var _v32 int32 // %t29 - var _v6 int32 // %t3 - var _v35 int32 // %t32 - var _v37 int32 // %t34 - var _v38 int32 // %t35 - var _v41 int32 // %t38 - var _v43 int32 // %t40 - var _v9 int32 // %t6 - var _v10 int32 // %t7 - _v6 = crt.Bool32(int32(_v2) == int32(1)) - goto l2 -l2: - if _v6 != 0 { - goto l3 - } - goto l35 -l35: - _v10 = 0 - goto l6 -l3: - _v9 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 76)) - goto l4 -l4: - if _v9 != 0 { - goto l5 - } - goto l36 -l36: - _v10 = 0 - goto l6 -l5: - _v10 = 1 - goto l6 -l6: - if _v10 != 0 { - goto l7 - } - goto l9 -l7: - - return -l9: - _v13 = int32(int32(_v2) & int32(255)) - _v15 = crt.Bool32(int32(_v13) == int32(17)) - goto l10 -l10: - if _v15 != 0 { - goto l11 - } - goto l37 -l37: - _v21 = 0 - goto l14 -l11: - _v18 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - _v20 = crt.Bool32(int32(_v18) < int32(3)) - goto l12 -l12: - if _v20 != 0 { - goto l13 - } - goto l38 -l38: - _v21 = 0 - goto l14 -l13: - _v21 = 1 - goto l14 -l14: - if _v21 != 0 { - goto l15 - } - goto l17 -l15: - - return -l17: - _v24 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) - _v26 = crt.Bool32(int32(_v24) == int32(0)) - goto l18 -l18: - if _v26 != 0 { - goto l19 - } - goto l39 -l39: - _v32 = 0 - goto l22 -l19: - _v29 = int32(int32(_v2) & int32(255)) - _v31 = crt.Bool32(int32(_v29) == int32(5)) - goto l20 -l20: - if _v31 != 0 { - goto l21 - } - goto l40 -l40: - _v32 = 0 - goto l22 -l21: - _v32 = 1 - goto l22 -l22: - goto l23 -l23: - if _v32 != 0 { - goto l24 - } - goto l41 -l41: - _v38 = 0 - goto l27 -l24: - _v35 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - _v37 = crt.Bool32(int32(_v35) < int32(3)) - goto l25 -l25: - if _v37 != 0 { - goto l26 - } - goto l42 -l42: - _v38 = 0 - goto l27 -l26: - _v38 = 1 - goto l27 -l27: - if _v38 != 0 { - goto l28 - } - goto l30 -l28: - - return -l30: - _v41 = int32(int32(_v2) & int32(255)) - _v43 = crt.Bool32(int32(_v41) == int32(27)) - if _v43 != 0 { - goto l31 - } - goto l32 -l31: - *(*int32)(unsafe.Pointer(bp + 0)) = _v3 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__27))), bp+0) - goto l33 -l32: - *(*int32)(unsafe.Pointer(bp + 8)) = _v2 - - *(*int32)(unsafe.Pointer(bp + 16)) = _v3 - s_errorMessage(t, int32(uintptr(unsafe.Pointer(&s__28))), bp+8) - goto l33 -l33: - goto l34 -l34: -} - -var s__26 = [17]byte{0x73, 0x71, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b} - -var s__27 = [10]byte{0x28, 0x69, 0x6e, 0x66, 0x6f, 0x29, 0x20, 0x25, 0x73} - -var s__28 = [16]byte{0x28, 0x65, 0x72, 0x72, 0x63, 0x6f, 0x64, 0x65, 0x3d, 0x25, 0x64, 0x29, 0x20, 0x25, 0x73} - -func s_prepareSql(t *crt.TLS, _v1 int32, args uintptr) int32 { - bp := t.Alloc(32) - defer t.Free(32) - var _v15 int32 // %t10 - var _v18 int32 // %t13 - var _v20 int32 // %t15 - var _v21 int32 // %t16 - var _v22 int32 // %t17 - var _v24 int32 // %t19 - var _v25 int32 // %t20 - var _v30 int32 // %t25 - var _v31 int32 // %t26 - var _v32 int32 // %t27 - var _v33 int32 // %t28 - var _v34 int32 // %t29 - var _v9 int32 // %t4 - var _v10 int32 // %t5 - var _v14 int32 // %t9 - var _v2 = int32(bp + 16) // %v2 - var _v3 = int32(bp + 20) // %v3 - var _v4 = int32(bp + 24) // %v4 - var _v5 = int32(bp + 28) // %v5 - *(*int32)(unsafe.Pointer(uintptr(_v5))) = 0 - *(*uintptr)(unsafe.Pointer(bp + 16)) = args - _v9 = Xsqlite3_vmprintf(t, _v1, _v2) - _v10 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v10))) = _v9 - _v14 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _v15 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v18 = int32(int32(_v5) + int32(0)) - _v20 = Xsqlite3_prepare_v2(t, _v14, _v15, -1, _v18, 0) - _v21 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v21))) = _v20 - _v22 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v24 = crt.Bool32(int32(_v22) != int32(0)) - if _v24 != 0 { - goto l2 - } - goto l3 -l2: - _v25 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _ = Xsqlite3_finalize(t, _v25) - _v30 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _v31 = Xsqlite3_errmsg(t, _v30) - _v32 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - *(*int32)(unsafe.Pointer(bp + 0)) = _v31 - - *(*int32)(unsafe.Pointer(bp + 8)) = _v32 - s_fatalError(t, int32(uintptr(unsafe.Pointer(&s__30))), bp+0) - goto l3 -l3: - _v33 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v33) - _v34 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - return _v34 -} - -var s__29 = [11]byte{0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x53, 0x71, 0x6c} - -var s__30 = [7]byte{0x25, 0x73, 0x0a, 0x25, 0x73, 0x0a} - -func s_runSql(t *crt.TLS, _v1 int32, args uintptr) { - bp := t.Alloc(32) - defer t.Free(32) - var _v17 int32 // %t13 - var _v18 int32 // %t14 - var _v19 int32 // %t15 - var _v21 int32 // %t17 - var _v25 int32 // %t21 - var _v26 int32 // %t22 - var _v27 int32 // %t23 - var _v28 int32 // %t24 - var _v7 int32 // %t3 - var _v8 int32 // %t4 - var _v12 int32 // %t8 - var _v13 int32 // %t9 - var _v2 = int32(bp + 16) // %v2 - var _v3 = int32(bp + 20) // %v3 - var _v4 = int32(bp + 24) // %v4 - *(*uintptr)(unsafe.Pointer(bp + 16)) = args - _v7 = Xsqlite3_vmprintf(t, _v1, _v2) - _v8 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v8))) = _v7 - _v12 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _v13 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v17 = Xsqlite3_exec(t, _v12, _v13, 0, 0, 0) - _v18 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v18))) = _v17 - _v19 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v21 = crt.Bool32(int32(_v19) != int32(0)) - if _v21 != 0 { - goto l2 - } - goto l3 -l2: - _v25 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _v26 = Xsqlite3_errmsg(t, _v25) - _v27 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - *(*int32)(unsafe.Pointer(bp + 0)) = _v26 - - *(*int32)(unsafe.Pointer(bp + 8)) = _v27 - s_fatalError(t, int32(uintptr(unsafe.Pointer(&s__30))), bp+0) - goto l3 -l3: - _v28 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v28) - goto l4 -l4: -} - -var s__31 = [7]byte{0x72, 0x75, 0x6e, 0x53, 0x71, 0x6c} - -func s_trySql(t *crt.TLS, _v1 int32, args uintptr) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v17 int32 // %t13 - var _v18 int32 // %t14 - var _v19 int32 // %t15 - var _v20 int32 // %t16 - var _v7 int32 // %t3 - var _v8 int32 // %t4 - var _v12 int32 // %t8 - var _v13 int32 // %t9 - var _v2 = int32(bp + 0) // %v2 - var _v3 = int32(bp + 4) // %v3 - var _v4 = int32(bp + 8) // %v4 - *(*uintptr)(unsafe.Pointer(bp + 0)) = args - _v7 = Xsqlite3_vmprintf(t, _v1, _v2) - _v8 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v8))) = _v7 - _v12 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _v13 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v17 = Xsqlite3_exec(t, _v12, _v13, 0, 0, 0) - _v18 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v18))) = _v17 - _v19 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v19) - _v20 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - return _v20 -} - -var s__32 = [7]byte{0x74, 0x72, 0x79, 0x53, 0x71, 0x6c} - -func s_stringFree(t *crt.TLS, _v1 int32) { - var _v3 int32 // %t2 - var _v4 int32 // %t3 - var _v6 int32 // %t5 - var _v7 int32 // %t6 - _v3 = int32(int32(_v1) + int32(0)) - _v4 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - if _v4 != 0 { - goto l2 - } - goto l3 -l2: - _v6 = int32(int32(_v1) + int32(0)) - _v7 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - Xsqlite3_free(t, _v7) - goto l3 -l3: - _ = crt.Xmemset(t, _v1, 0, 12) - goto l4 -l4: -} - -var s__33 = [11]byte{0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x65, 0x65} - -func s_stringAppend(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32) { - bp := t.Alloc(16) - defer t.Free(16) - var _v16 int32 // %t10 - var _v17 int32 // %t11 - var _v18 int32 // %t12 - var _v20 int32 // %t14 - var _v21 int32 // %t15 - var _v22 int32 // %t16 - var _v24 int32 // %t18 - var _v25 int32 // %t19 - var _v8 int32 // %t2 - var _v27 int32 // %t21 - var _v28 int32 // %t22 - var _v29 int32 // %t23 - var _v31 int32 // %t25 - var _v33 int32 // %t27 - var _v34 int32 // %t28 - var _v35 int32 // %t29 - var _v36 int32 // %t30 - var _v37 int32 // %t31 - var _v39 int32 // %t33 - var _v41 int32 // %t35 - var _v43 int32 // %t37 - var _v44 int32 // %t38 - var _v10 int32 // %t4 - var _v46 int32 // %t40 - var _v48 int32 // %t42 - var _v49 int32 // %t43 - var _v51 int32 // %t45 - var _v52 int32 // %t46 - var _v53 int32 // %t47 - var _v55 int32 // %t49 - var _v57 int32 // %t51 - var _v59 int32 // %t53 - var _v60 int32 // %t54 - var _v61 int32 // %t55 - var _v65 int32 // %t59 - var _v12 int32 // %t6 - var _v66 int32 // %t60 - var _v67 int32 // %t61 - var _v69 int32 // %t63 - var _v70 int32 // %t64 - var _v71 int32 // %t65 - var _v13 int32 // %t7 - var _v15 int32 // %t9 - var _v4 = int32(bp + 0) // %v3 - var _v6 = int32(bp + 4) // %v4 - var _v7 = int32(bp + 8) // %v5 - *(*int32)(unsafe.Pointer(uintptr(_v4))) = _v3 - _v8 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v10 = crt.Bool32(int32(_v8) < int32(0)) - if _v10 != 0 { - goto l2 - } - goto l3 -l2: - _v12 = crt.Xstrlen(t, _v2) - _v13 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v13))) = _v12 - goto l3 -l3: - _v15 = int32(int32(_v1) + int32(4)) - _v16 = *(*int32)(unsafe.Pointer(uintptr(_v15))) - _v17 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v18 = int32(int32(_v16) + int32(_v17)) - _v20 = int32(int32(_v1) + int32(8)) - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v22 = crt.Bool32(int32(_v18) >= int32(_v21)) - if _v22 != 0 { - goto l4 - } - goto l9 -l9: - goto l7 -l4: - _v24 = int32(int32(_v1) + int32(8)) - _v25 = *(*int32)(unsafe.Pointer(uintptr(_v24))) - _v27 = int32(_v25 * 2) - _v28 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v29 = int32(int32(_v27) + int32(_v28)) - _v31 = int32(int32(_v29) + int32(100)) - *(*int32)(unsafe.Pointer(uintptr(_v6))) = _v31 - _v33 = int32(int32(_v1) + int32(0)) - _v34 = *(*int32)(unsafe.Pointer(uintptr(_v33))) - _v35 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v36 = Xsqlite3_realloc(t, _v34, _v35) - *(*int32)(unsafe.Pointer(uintptr(_v7))) = _v36 - _v37 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v39 = crt.Bool32(int32(_v37) == int32(0)) - if _v39 != 0 { - goto l5 - } - goto l6 -l5: - s_fatalError(t, int32(uintptr(unsafe.Pointer(&s__35))), 0) - goto l6 -l6: - _v41 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v43 = int32(int32(_v1) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v43))) = _v41 - _v44 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v46 = int32(int32(_v1) + int32(8)) - *(*int32)(unsafe.Pointer(uintptr(_v46))) = _v44 - goto l7 -l7: - _v48 = int32(int32(_v1) + int32(0)) - _v49 = *(*int32)(unsafe.Pointer(uintptr(_v48))) - _v51 = int32(int32(_v1) + int32(4)) - _v52 = *(*int32)(unsafe.Pointer(uintptr(_v51))) - _v53 = int32(int32(_v49) + int32(_v52)) - _v55 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _ = crt.Xmemcpy(t, _v53, _v2, _v55) - _v57 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v59 = int32(int32(_v1) + int32(4)) - _v60 = *(*int32)(unsafe.Pointer(uintptr(_v59))) - _v61 = int32(int32(_v60) + int32(_v57)) - *(*int32)(unsafe.Pointer(uintptr(_v59))) = _v61 - _v65 = int32(int32(_v1) + int32(4)) - _v66 = *(*int32)(unsafe.Pointer(uintptr(_v65))) - _v67 = int32(_v66 * 1) - _v69 = int32(int32(_v1) + int32(0)) - _v70 = *(*int32)(unsafe.Pointer(uintptr(_v69))) - _v71 = int32(int32(_v70) + int32(_v67)) - *(*int8)(unsafe.Pointer(uintptr(_v71))) = 0 - goto l8 -l8: -} - -var s__34 = [13]byte{0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x41, 0x70, 0x70, 0x65, 0x6e, 0x64} - -var s__35 = [14]byte{0x6f, 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79} - -func s_stringReset(t *crt.TLS, _v1 int32) { - var _v12 int32 // %t11 - var _v18 int32 // %t17 - var _v19 int32 // %t18 - var _v20 int32 // %t19 - var _v3 int32 // %t2 - var _v4 int32 // %t3 - var _v6 int32 // %t5 - _v3 = int32(int32(_v1) + int32(0)) - _v4 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v6 = crt.Bool32(int32(_v4) == int32(0)) - if _v6 != 0 { - goto l2 - } - goto l3 -l2: - s_stringAppend(t, _v1, int32(uintptr(unsafe.Pointer(&s__37))), 1) - goto l3 -l3: - _v12 = int32(int32(_v1) + int32(4)) - *(*int32)(unsafe.Pointer(uintptr(_v12))) = 0 - _v18 = int32(int32(_v1) + int32(0)) - _v19 = *(*int32)(unsafe.Pointer(uintptr(_v18))) - _v20 = int32(int32(_v19) + int32(0)) - *(*int8)(unsafe.Pointer(uintptr(_v20))) = 0 - goto l4 -l4: -} - -var s__36 = [12]byte{0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x65, 0x74} - -var s__37 = [2]byte{0x20} - -func s_stringAppendTerm(t *crt.TLS, _v1 int32, _v2 int32) { - bp := t.Alloc(16) - defer t.Free(16) - var _v14 int32 // %t10 - var _v104 int32 // %t100 - var _v105 int32 // %t101 - var _v106 int32 // %t102 - var _v108 int32 // %t104 - var _v109 int32 // %t105 - var _v19 int32 // %t15 - var _v20 int32 // %t16 - var _v21 int32 // %t17 - var _v22 int32 // %t18 - var _v23 int32 // %t19 - var _v24 int32 // %t20 - var _v25 int32 // %t21 - var _v26 int32 // %t22 - var _v27 int32 // %t23 - var _v28 int32 // %t24 - var _v29 int32 // %t25 - var _v30 int32 // %t26 - var _v31 int32 // %t27 - var _v32 int32 // %t28 - var _v33 int32 // %t29 - var _v7 int32 // %t3 - var _v34 int32 // %t30 - var _v35 int32 // %t31 - var _v36 int32 // %t32 - var _v40 int32 // %t36 - var _v41 int32 // %t37 - var _v42 int32 // %t38 - var _v43 int32 // %t39 - var _v8 int32 // %t4 - var _v44 int32 // %t40 - var _v45 int32 // %t41 - var _v46 int32 // %t42 - var _v48 int32 // %t44 - var _v49 int32 // %t45 - var _v50 int32 // %t46 - var _v51 int32 // %t47 - var _v52 int32 // %t48 - var _v53 int32 // %t49 - var _v54 int32 // %t50 - var _v56 int32 // %t52 - var _v57 int32 // %t53 - var _v59 int32 // %t55 - var _v60 int32 // %t56 - var _v66 int32 // %t62 - var _v67 int32 // %t63 - var _v68 int32 // %t64 - var _v70 int32 // %t66 - var _v71 int32 // %t67 - var _v72 int32 // %t68 - var _v73 int32 // %t69 - var _v74 int32 // %t70 - var _v75 int32 // %t71 - var _v76 int32 // %t72 - var _v77 int32 // %t73 - var _v78 int32 // %t74 - var _v79 int32 // %t75 - var _v80 int32 // %t76 - var _v81 int32 // %t77 - var _v83 int32 // %t79 - var _v12 int32 // %t8 - var _v84 int32 // %t80 - var _v85 int32 // %t81 - var _v86 int32 // %t82 - var _v87 int32 // %t83 - var _v88 int32 // %t84 - var _v89 int32 // %t85 - var _v90 int32 // %t86 - var _v91 int32 // %t87 - var _v92 int32 // %t88 - var _v94 int32 // %t90 - var _v95 int32 // %t91 - var _v97 int32 // %t93 - var _v101 int32 // %t97 - var _v103 int32 // %t99 - var _v3 = int32(bp + 0) // %v2 - var _v5 = int32(bp + 4) // %v3 - *(*int32)(unsafe.Pointer(uintptr(_v3))) = _v2 - _v7 = int32(int32(_v1) + int32(4)) - _v8 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - if _v8 != 0 { - goto l2 - } - goto l3 -l2: - s_stringAppend(t, _v1, int32(uintptr(unsafe.Pointer(&s__37))), 1) - goto l3 -l3: - _v12 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v14 = crt.Bool32(int32(_v12) == int32(0)) - if _v14 != 0 { - goto l4 - } - goto l6 -l4: - s_stringAppend(t, _v1, int32(uintptr(unsafe.Pointer(&s__39))), 3) - - return -l6: - _v19 = int32(int32(_v5) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v19))) = 0 - goto l7 -l7: - _v20 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v21 = int32(_v20 * 1) - _v22 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v23 = int32(int32(_v22) + int32(_v21)) - _v24 = int32(*(*int8)(unsafe.Pointer(uintptr(_v23)))) - goto l8 -l8: - if _v24 != 0 { - goto l9 - } - goto l44 -l44: - _v42 = 0 - goto l15 -l9: - _v25 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v26 = int32(_v25 * 1) - _v27 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v28 = int32(int32(_v27) + int32(_v26)) - _v29 = int32(*(*int8)(unsafe.Pointer(uintptr(_v28)))) - _v30 = int32(int32(uint8(_v29))) - _v31 = int32(_v30 * 2) - _v32 = crt.X__ctype_b_loc(t) - _v33 = *(*int32)(unsafe.Pointer(uintptr(_v32))) - _v34 = int32(int32(_v33) + int32(_v31)) - _v35 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v34)))) - _v36 = int32(uint16(_v35)) - _v40 = int32(int32(_v36) & int32(8192)) - goto l10 -l10: - if _v40 != 0 { - goto l11 - } - goto l45 -l45: - _v41 = 1 - goto l12 -l11: - _v41 = 0 - goto l12 -l12: - goto l13 -l13: - if _v41 != 0 { - goto l14 - } - goto l46 -l46: - _v42 = 0 - goto l15 -l14: - _v42 = 1 - goto l15 -l15: - if _v42 != 0 { - goto l16 - } - goto l18 -l16: - goto l17 -l17: - _v43 = int32(int32(_v5) + int32(0)) - _v44 = *(*int32)(unsafe.Pointer(uintptr(_v43))) - _v45 = int32(int32(_v44) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v43))) = _v45 - goto l7 -l18: - _v46 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v48 = crt.Bool32(int32(_v46) > int32(0)) - goto l19 -l19: - if _v48 != 0 { - goto l20 - } - goto l47 -l47: - _v57 = 0 - goto l23 -l20: - _v49 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v50 = int32(_v49 * 1) - _v51 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v52 = int32(int32(_v51) + int32(_v50)) - _v53 = int32(*(*int8)(unsafe.Pointer(uintptr(_v52)))) - _v54 = int32(int8(_v53)) - _v56 = crt.Bool32(int32(_v54) == int32(0)) - goto l21 -l21: - if _v56 != 0 { - goto l22 - } - goto l48 -l48: - _v57 = 0 - goto l23 -l22: - _v57 = 1 - goto l23 -l23: - if _v57 != 0 { - goto l24 - } - goto l26 -l24: - _v59 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v60 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - s_stringAppend(t, _v1, _v59, _v60) - - return -l26: - s_stringAppend(t, _v1, int32(uintptr(unsafe.Pointer(&s__40))), 1) - goto l27 -l27: - _v66 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v67 = int32(int32(_v66) + int32(0)) - _v68 = int32(*(*int8)(unsafe.Pointer(uintptr(_v67)))) - if _v68 != 0 { - goto l28 - } - goto l42 -l28: - _v70 = int32(int32(_v5) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v70))) = 0 - goto l29 -l29: - _v71 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v72 = int32(_v71 * 1) - _v73 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v74 = int32(int32(_v73) + int32(_v72)) - _v75 = int32(*(*int8)(unsafe.Pointer(uintptr(_v74)))) - goto l30 -l30: - if _v75 != 0 { - goto l31 - } - goto l49 -l49: - _v84 = 0 - goto l34 -l31: - _v76 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v77 = int32(_v76 * 1) - _v78 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v79 = int32(int32(_v78) + int32(_v77)) - _v80 = int32(*(*int8)(unsafe.Pointer(uintptr(_v79)))) - _v81 = int32(int8(_v80)) - _v83 = crt.Bool32(int32(_v81) != int32(39)) - goto l32 -l32: - if _v83 != 0 { - goto l33 - } - goto l50 -l50: - _v84 = 0 - goto l34 -l33: - _v84 = 1 - goto l34 -l34: - if _v84 != 0 { - goto l35 - } - goto l37 -l35: - goto l36 -l36: - _v85 = int32(int32(_v5) + int32(0)) - _v86 = *(*int32)(unsafe.Pointer(uintptr(_v85))) - _v87 = int32(int32(_v86) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v85))) = _v87 - goto l29 -l37: - _v88 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v89 = int32(_v88 * 1) - _v90 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v91 = int32(int32(_v90) + int32(_v89)) - _v92 = int32(*(*int8)(unsafe.Pointer(uintptr(_v91)))) - if _v92 != 0 { - goto l38 - } - goto l39 -l38: - _v94 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v95 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v97 = int32(int32(_v95) + int32(1)) - s_stringAppend(t, _v1, _v94, _v97) - s_stringAppend(t, _v1, int32(uintptr(unsafe.Pointer(&s__40))), 1) - _v101 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v103 = int32(int32(_v101) + int32(1)) - _v104 = int32(int32(_v3) + int32(0)) - _v105 = *(*int32)(unsafe.Pointer(uintptr(_v104))) - _v106 = int32(int32(_v105) + int32(_v103)) - *(*int32)(unsafe.Pointer(uintptr(_v104))) = _v106 - goto l41 -l39: - _v108 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v109 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - s_stringAppend(t, _v1, _v108, _v109) - goto l42 -l41: - goto l27 -l42: - s_stringAppend(t, _v1, int32(uintptr(unsafe.Pointer(&s__40))), 1) - goto l43 -l43: -} - -var s__38 = [17]byte{0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x41, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x54, 0x65, 0x72, 0x6d} - -var s__39 = [4]byte{0x6e, 0x69, 0x6c} - -var s__40 = [2]byte{0x27} - -func s_evalCallback(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32, _v4 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v17 int32 // %t11 - var _v18 int32 // %t12 - var _v19 int32 // %t13 - var _v20 int32 // %t14 - var _v21 int32 // %t15 - var _v9 int32 // %t3 - var _v10 int32 // %t4 - var _v12 int32 // %t6 - var _v13 int32 // %t7 - var _v14 int32 // %t8 - var _v15 int32 // %t9 - var _v5 = int32(bp + 0) // %v5 - var _v6 = int32(bp + 4) // %v6 - *(*int32)(unsafe.Pointer(uintptr(_v5))) = _v1 - _v9 = int32(int32(_v6) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v9))) = 0 - goto l2 -l2: - _v10 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v12 = crt.Bool32(int32(_v10) < int32(_v2)) - if _v12 != 0 { - goto l3 - } - goto l5 -l3: - _v13 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v14 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v15 = int32(_v14 * 4) - _v17 = int32(int32(_v3) + int32(_v15)) - _v18 = *(*int32)(unsafe.Pointer(uintptr(_v17))) - s_stringAppendTerm(t, _v13, _v18) - goto l4 -l4: - _v19 = int32(int32(_v6) + int32(0)) - _v20 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - _v21 = int32(int32(_v20) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v19))) = _v21 - goto l2 -l5: - return 0 -} - -var s__41 = [13]byte{0x65, 0x76, 0x61, 0x6c, 0x43, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b} - -func s_evalSql(t *crt.TLS, _v1 int32, _v2 int32, args uintptr) int32 { - bp := t.Alloc(64) - defer t.Free(64) - var _v18 int32 // %t11 - var _v25 int32 // %t18 - var _v26 int32 // %t19 - var _v29 int32 // %t22 - var _v30 int32 // %t23 - var _v31 int32 // %t24 - var _v32 int32 // %t25 - var _v33 int32 // %t26 - var _v37 int32 // %t30 - var _v41 int32 // %t34 - var _v43 int32 // %t36 - var _v44 int32 // %t37 - var _v45 int32 // %t38 - var _v11 int32 // %t4 - var _v12 int32 // %t5 - var _v16 int32 // %t9 - var _v3 = int32(bp + 8) // %v3 - var _v4 = int32(bp + 12) // %v4 - var _v5 = int32(bp + 16) // %v5 - var _v6 = int32(bp + 20) // %v6 - var _v7 = int32(bp + 24) // %v7 - *(*int32)(unsafe.Pointer(uintptr(_v6))) = 0 - *(*uintptr)(unsafe.Pointer(bp + 8)) = args - _v11 = Xsqlite3_vmprintf(t, _v2, _v3) - _v12 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v12))) = _v11 - _v16 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) - _v18 = crt.Bool32(int32(_v16) > int32(0)) - goto l2 -l2: - if _v18 != 0 { - goto l3 - } - goto l5 -l3: - goto l4 -l4: - goto l7 -l5: - crt.X__assert_fail(t, int32(uintptr(unsafe.Pointer(&s__43))), int32(uintptr(unsafe.Pointer(&s__44))), 494, int32(uintptr(unsafe.Pointer(&s__42)))) - goto l6 -l6: - goto l7 -l7: - _v25 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _v26 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v29 = int32(int32(_v6) + int32(0)) - _v30 = Xsqlite3_exec(t, _v25, _v26, *(*int32)(unsafe.Pointer(&struct { - f func(*crt.TLS, int32, int32, int32, int32) int32 - }{s_evalCallback})), _v1, _v29) - _v31 = int32(int32(_v5) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v31))) = _v30 - _v32 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - Xsqlite3_free(t, _v32) - _v33 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - if _v33 != 0 { - goto l8 - } - goto l14 -l14: - goto l11 -l8: - _v37 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - *(*int32)(unsafe.Pointer(bp + 0)) = _v37 - - _ = Xsqlite3_snprintf(t, 30, _v7, int32(uintptr(unsafe.Pointer(&s__45))), bp+0) - s_stringAppendTerm(t, _v1, _v7) - _v41 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - if _v41 != 0 { - goto l9 - } - goto l10 -l9: - _v43 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - s_stringAppendTerm(t, _v1, _v43) - _v44 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - Xsqlite3_free(t, _v44) - goto l10 -l10: - goto l11 -l11: - _v45 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - return _v45 -} - -var s__42 = [8]byte{0x65, 0x76, 0x61, 0x6c, 0x53, 0x71, 0x6c} - -var s__43 = [13]byte{0x67, 0x2e, 0x69, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x3e, 0x30} - -var s__44 = [44]byte{ - 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x73, 0x71, 0x6c, 0x69, 0x74, 0x65, 0x2d, - 0x73, 0x72, 0x63, 0x2d, 0x33, 0x33, 0x30, 0x30, 0x31, 0x30, 0x30, 0x2f, 0x6d, 0x70, 0x74, 0x65, - 0x73, 0x74, 0x2f, 0x6d, 0x70, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x63, -} - -var s__45 = [10]byte{0x65, 0x72, 0x72, 0x6f, 0x72, 0x28, 0x25, 0x64, 0x29} - -func s_evalFunc(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32) { - bp := t.Alloc(32) - defer t.Free(32) - var _v18 int32 // %t10 - var _v22 int32 // %t14 - var _v23 int32 // %t15 - var _v25 int32 // %t17 - var _v26 int32 // %t18 - var _v27 int32 // %t19 - var _v10 int32 // %t2 - var _v28 int32 // %t20 - var _v29 int32 // %t21 - var _v31 int32 // %t23 - var _v34 int32 // %t26 - var _v35 int32 // %t27 - var _v37 int32 // %t29 - var _v39 int32 // %t31 - var _v40 int32 // %t32 - var _v41 int32 // %t33 - var _v46 int32 // %t38 - var _v14 int32 // %t6 - var _v15 int32 // %t7 - var _v16 int32 // %t8 - var _v4 = int32(bp + 0) // %v4 - var _v5 = int32(bp + 4) // %v5 - var _v6 = int32(bp + 8) // %v6 - var _v7 = int32(bp + 20) // %v7 - var _v8 = int32(bp + 24) // %v8 - _v10 = Xsqlite3_context_db_handle(t, _v1) - *(*int32)(unsafe.Pointer(uintptr(_v4))) = _v10 - _v14 = int32(int32(_v3) + int32(0)) - _v15 = *(*int32)(unsafe.Pointer(uintptr(_v14))) - _v16 = Xsqlite3_value_text(t, _v15) - *(*int32)(unsafe.Pointer(uintptr(_v5))) = _v16 - *(*int32)(unsafe.Pointer(uintptr(_v7))) = 0 - _v18 = int32(int32(_v6) + int32(0)) - _ = crt.Xmemset(t, _v18, 0, 12) - _v22 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v23 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v25 = int32(int32(_v6) + int32(0)) - _v26 = int32(int32(_v7) + int32(0)) - _v27 = Xsqlite3_exec(t, _v22, _v23, *(*int32)(unsafe.Pointer(&struct { - f func(*crt.TLS, int32, int32, int32, int32) int32 - }{s_evalCallback})), _v25, _v26) - _v28 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v28))) = _v27 - _v29 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - if _v29 != 0 { - goto l2 - } - goto l3 -l2: - _v31 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - Xsqlite3_result_error(t, _v1, _v31, -1) - _v34 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - Xsqlite3_free(t, _v34) - goto l7 -l3: - _v35 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - if _v35 != 0 { - goto l4 - } - goto l5 -l4: - _v37 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - Xsqlite3_result_error_code(t, _v1, _v37) - goto l6 -l5: - _v39 = int32(int32(_v6) + int32(0)) - _v40 = int32(int32(_v39) + int32(0)) - _v41 = *(*int32)(unsafe.Pointer(uintptr(_v40))) - Xsqlite3_result_text(t, _v1, _v41, -1, -1) - goto l6 -l6: - goto l7 -l7: - _v46 = int32(int32(_v6) + int32(0)) - s_stringFree(t, _v46) - goto l8 -l8: -} - -var s__46 = [9]byte{0x65, 0x76, 0x61, 0x6c, 0x46, 0x75, 0x6e, 0x63} - -func s_startScript(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32, _v4 int32) int32 { - bp := t.Alloc(112) - defer t.Free(112) - var _v19 int32 // %t10 - var _v110 int32 // %t101 - var _v111 int32 // %t102 - var _v113 int32 // %t104 - var _v116 int32 // %t107 - var _v20 int32 // %t11 - var _v122 int32 // %t113 - var _v124 int32 // %t115 - var _v126 int32 // %t117 - var _v127 int32 // %t118 - var _v21 int32 // %t12 - var _v129 int32 // %t120 - var _v135 int32 // %t126 - var _v139 int32 // %t130 - var _v141 int32 // %t132 - var _v145 int32 // %t136 - var _v146 int32 // %t137 - var _v147 int32 // %t138 - var _v23 int32 // %t14 - var _v151 int32 // %t142 - var _v152 int32 // %t143 - var _v153 int32 // %t144 - var _v157 int32 // %t148 - var _v158 int32 // %t149 - var _v27 int32 // %t18 - var _v28 int32 // %t19 - var _v29 int32 // %t20 - var _v30 int32 // %t21 - var _v32 int32 // %t23 - var _v36 int32 // %t27 - var _v37 int32 // %t28 - var _v40 int32 // %t31 - var _v43 int32 // %t34 - var _v44 int32 // %t35 - var _v48 int32 // %t39 - var _v51 int32 // %t42 - var _v60 int32 // %t51 - var _v61 int32 // %t52 - var _v62 int32 // %t53 - var _v63 int32 // %t54 - var _v64 int32 // %t55 - var _v65 int32 // %t56 - var _v67 int32 // %t58 - var _v69 int32 // %t60 - var _v79 int32 // %t70 - var _v80 int32 // %t71 - var _v81 int32 // %t72 - var _v82 int32 // %t73 - var _v83 int32 // %t74 - var _v84 int32 // %t75 - var _v86 int32 // %t77 - var _v87 int32 // %t78 - var _v89 int32 // %t80 - var _v90 int32 // %t81 - var _v92 int32 // %t83 - var _v93 int32 // %t84 - var _v96 int32 // %t87 - var _v97 int32 // %t88 - var _v99 int32 // %t90 - var _v101 int32 // %t92 - var _v103 int32 // %t94 - var _v104 int32 // %t95 - var _v105 int32 // %t96 - var _v108 int32 // %t99 - var _v5 = int32(bp + 80) // %v5 - var _v6 = int32(bp + 84) // %v6 - var _v7 = int32(bp + 88) // %v7 - var _v8 = int32(bp + 92) // %v8 - var _v9 = int32(bp + 96) // %v9 - *(*int32)(unsafe.Pointer(uintptr(_v5))) = 0 - *(*int32)(unsafe.Pointer(uintptr(_v8))) = 0 - *(*int32)(unsafe.Pointer(uintptr(_v2))) = 0 - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) = 0 - goto l2 -l2: - if 1 != 0 { - goto l3 - } - goto l30 -l3: - - _v19 = s_trySql(t, int32(uintptr(unsafe.Pointer(&s__48))), 0) - _v20 = int32(int32(_v7) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v20))) = _v19 - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v23 = crt.Bool32(int32(_v21) == int32(5)) - if _v23 != 0 { - goto l4 - } - goto l6 -l4: - _ = Xsqlite3_sleep(t, 10) - _v27 = int32(int32(_v8) + int32(0)) - _v28 = *(*int32)(unsafe.Pointer(uintptr(_v27))) - _v29 = int32(int32(_v28) + int32(10)) - *(*int32)(unsafe.Pointer(uintptr(_v27))) = _v29 - goto l2 -l6: - _v30 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v32 = crt.Bool32(int32(_v30) != int32(0)) - if _v32 != 0 { - goto l7 - } - goto l8 -l7: - _v36 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _v37 = Xsqlite3_errmsg(t, _v36) - *(*int32)(unsafe.Pointer(bp + 0)) = _v37 - s_fatalError(t, int32(uintptr(unsafe.Pointer(&s__49))), bp+0) - goto l8 -l8: - _v40 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 80)) - goto l9 -l9: - if _v40 != 0 { - goto l32 - } - goto l10 -l32: - _v44 = 1 - goto l13 -l10: - _v43 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 84)) - goto l11 -l11: - if _v43 != 0 { - goto l33 - } - goto l12 -l33: - _v44 = 1 - goto l13 -l12: - _v44 = 0 - goto l13 -l13: - if _v44 != 0 { - goto l14 - } - goto l15 -l14: - _v48 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 80)) - _v51 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 84)) - *(*int32)(unsafe.Pointer(bp + 8)) = _v48 - - *(*int32)(unsafe.Pointer(bp + 16)) = _v51 - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__50))), bp+8) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 80)) = 0 - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 84)) = 0 - goto l15 -l15: - *(*int32)(unsafe.Pointer(bp + 24)) = _v1 - - _v60 = s_prepareSql(t, int32(uintptr(unsafe.Pointer(&s__51))), bp+24) - _v61 = int32(int32(_v5) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v61))) = _v60 - _v62 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v63 = Xsqlite3_step(t, _v62) - _v64 = int32(int32(_v7) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v64))) = _v63 - _v65 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _ = Xsqlite3_finalize(t, _v65) - _v67 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v69 = crt.Bool32(int32(_v67) == int32(100)) - if _v69 != 0 { - goto l16 - } - goto l18 -l16: - *(*int32)(unsafe.Pointer(bp + 32)) = _v1 - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__52))), bp+32) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) = 10000 - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__53))), 0) - return 101 -l18: - *(*int32)(unsafe.Pointer(bp + 40)) = _v1 - - _v79 = s_prepareSql(t, int32(uintptr(unsafe.Pointer(&s__54))), bp+40) - _v80 = int32(int32(_v5) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v80))) = _v79 - _v81 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v82 = Xsqlite3_step(t, _v81) - _v83 = int32(int32(_v7) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v83))) = _v82 - _v84 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v86 = crt.Bool32(int32(_v84) == int32(100)) - if _v86 != 0 { - goto l19 - } - goto l21 -l19: - _v87 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v89 = Xsqlite3_column_bytes(t, _v87, 0) - *(*int32)(unsafe.Pointer(uintptr(_v9))) = _v89 - _v90 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v92 = int32(int32(_v90) + int32(1)) - _v93 = Xsqlite3_malloc(t, _v92) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v93 - _v96 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v97 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v99 = Xsqlite3_column_text(t, _v97, 0) - _ = crt.Xstrcpy(t, _v96, _v99) - _v101 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v103 = Xsqlite3_column_int(t, _v101, 1) - _v104 = int32(int32(_v6) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v104))) = _v103 - _v105 = *(*int32)(unsafe.Pointer(uintptr(_v104))) - *(*int32)(unsafe.Pointer(uintptr(_v3))) = _v105 - _v108 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v110 = Xsqlite3_column_text(t, _v108, 2) - *(*int32)(unsafe.Pointer(bp + 48)) = _v110 - - _v111 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__55))), bp+48) - *(*int32)(unsafe.Pointer(uintptr(_v4))) = _v111 - _v113 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _ = Xsqlite3_finalize(t, _v113) - _v116 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - *(*int32)(unsafe.Pointer(bp + 56)) = _v116 - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__56))), bp+56) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) = 10000 - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__53))), 0) - return 0 -l21: - _v122 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _ = Xsqlite3_finalize(t, _v122) - _v124 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v126 = crt.Bool32(int32(_v124) == int32(101)) - if _v126 != 0 { - goto l22 - } - goto l29 -l22: - _v127 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v129 = crt.Bool32(int32(_v127) > int32(30000)) - if _v129 != 0 { - goto l23 - } - goto l24 -l23: - s_errorMessage(t, int32(uintptr(unsafe.Pointer(&s__57))), 0) - *(*int32)(unsafe.Pointer(bp + 64)) = _v1 - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__58))), bp+64) - _v135 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _ = Xsqlite3_close(t, _v135) - crt.Xexit(t, 1) - goto l24 -l24: - goto l25 -l25: - - _v139 = s_trySql(t, int32(uintptr(unsafe.Pointer(&s__59))), 0) - _v141 = crt.Bool32(int32(_v139) == int32(5)) - if _v141 != 0 { - goto l26 - } - goto l27 -l26: - _ = Xsqlite3_sleep(t, 10) - _v145 = int32(int32(_v8) + int32(0)) - _v146 = *(*int32)(unsafe.Pointer(uintptr(_v145))) - _v147 = int32(int32(_v146) + int32(10)) - *(*int32)(unsafe.Pointer(uintptr(_v145))) = _v147 - goto l25 -l27: - _ = Xsqlite3_sleep(t, 100) - _v151 = int32(int32(_v8) + int32(0)) - _v152 = *(*int32)(unsafe.Pointer(uintptr(_v151))) - _v153 = int32(int32(_v152) + int32(100)) - *(*int32)(unsafe.Pointer(uintptr(_v151))) = _v153 - goto l2 -l29: - _v157 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _v158 = Xsqlite3_errmsg(t, _v157) - *(*int32)(unsafe.Pointer(bp + 72)) = _v158 - s_fatalError(t, int32(uintptr(unsafe.Pointer(&s__55))), bp+72) - goto l2 -l30: - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) = 10000 - goto l31 -l31: - return 0 -} - -var s__47 = [12]byte{0x73, 0x74, 0x61, 0x72, 0x74, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74} - -var s__48 = [16]byte{0x42, 0x45, 0x47, 0x49, 0x4e, 0x20, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45} - -var s__49 = [19]byte{ - 0x69, 0x6e, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3a, 0x20, - 0x25, 0x73, -} - -var s__50 = [53]byte{ - 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x20, - 0x53, 0x45, 0x54, 0x20, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x3d, 0x6e, 0x45, 0x72, 0x72, 0x6f, - 0x72, 0x2b, 0x25, 0x64, 0x2c, 0x20, 0x6e, 0x54, 0x65, 0x73, 0x74, 0x3d, 0x6e, 0x54, 0x65, 0x73, - 0x74, 0x2b, 0x25, 0x64, -} - -var s__51 = [46]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x31, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x69, 0x64, 0x3d, 0x25, 0x64, - 0x20, 0x41, 0x4e, 0x44, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x48, 0x61, 0x6c, 0x74, -} - -var s__52 = [31]byte{ - 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x69, 0x64, 0x3d, 0x25, 0x64, -} - -var s__53 = [20]byte{ - 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x20, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x41, 0x43, 0x54, 0x49, - 0x4f, 0x4e, 0x3b, -} - -var s__54 = [92]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2c, 0x20, 0x69, - 0x64, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x74, 0x61, 0x73, - 0x6b, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x3d, 0x25, - 0x64, 0x20, 0x41, 0x4e, 0x44, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x20, - 0x49, 0x53, 0x20, 0x4e, 0x55, 0x4c, 0x4c, 0x20, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x20, 0x42, 0x59, - 0x20, 0x69, 0x64, 0x20, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x20, 0x31, -} - -var s__55 = [3]byte{0x25, 0x73} - -var s__56 = [83]byte{ - 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x20, 0x20, 0x20, 0x53, 0x45, - 0x54, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x3d, 0x73, 0x74, 0x72, 0x66, - 0x74, 0x69, 0x6d, 0x65, 0x28, 0x27, 0x25, 0x25, 0x59, 0x2d, 0x25, 0x25, 0x6d, 0x2d, 0x25, 0x25, - 0x64, 0x20, 0x25, 0x25, 0x48, 0x3a, 0x25, 0x25, 0x4d, 0x3a, 0x25, 0x25, 0x66, 0x27, 0x2c, 0x27, - 0x6e, 0x6f, 0x77, 0x27, 0x29, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x69, 0x64, 0x3d, 0x25, - 0x64, 0x3b, -} - -var s__57 = [49]byte{ - 0x57, 0x61, 0x69, 0x74, 0x65, 0x64, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x20, 0x33, 0x30, 0x20, 0x73, - 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x6e, 0x6f, 0x20, 0x77, - 0x6f, 0x72, 0x6b, 0x2e, 0x20, 0x20, 0x47, 0x69, 0x76, 0x69, 0x6e, 0x67, 0x20, 0x75, 0x70, 0x2e, -} - -var s__58 = [40]byte{ - 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x69, 0x64, 0x3d, 0x25, 0x64, 0x3b, 0x20, - 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x3b, -} - -var s__59 = [7]byte{0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54} - -func s_finishScript(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - *(*int32)(unsafe.Pointer(bp + 0)) = _v2 - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__61))), bp+0) - if _v3 != 0 { - goto l2 - } - goto l3 -l2: - *(*int32)(unsafe.Pointer(bp + 8)) = _v1 - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__52))), bp+8) - goto l3 -l3: - return 0 -} - -var s__60 = [13]byte{0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74} - -var s__61 = [81]byte{ - 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x20, 0x20, 0x20, 0x53, 0x45, - 0x54, 0x20, 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x3d, 0x73, 0x74, 0x72, 0x66, 0x74, 0x69, - 0x6d, 0x65, 0x28, 0x27, 0x25, 0x25, 0x59, 0x2d, 0x25, 0x25, 0x6d, 0x2d, 0x25, 0x25, 0x64, 0x20, - 0x25, 0x25, 0x48, 0x3a, 0x25, 0x25, 0x4d, 0x3a, 0x25, 0x25, 0x66, 0x27, 0x2c, 0x27, 0x6e, 0x6f, - 0x77, 0x27, 0x29, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x69, 0x64, 0x3d, 0x25, 0x64, 0x3b, -} - -func s_startClient(t *crt.TLS, _v1 int32) { - bp := t.Alloc(112) - defer t.Free(112) - var _v13 int32 // %t10 - var _v16 int32 // %t13 - var _v20 int32 // %t17 - var _v21 int32 // %t18 - var _v22 int32 // %t19 - var _v25 int32 // %t22 - var _v27 int32 // %t24 - var _v28 int32 // %t25 - var _v29 int32 // %t26 - var _v32 int32 // %t29 - var _v34 int32 // %t31 - var _v35 int32 // %t32 - var _v36 int32 // %t33 - var _v39 int32 // %t36 - var _v41 int32 // %t38 - var _v44 int32 // %t41 - var _v45 int32 // %t42 - var _v46 int32 // %t43 - var _v49 int32 // %t46 - var _v51 int32 // %t48 - var _v8 int32 // %t5 - var _v53 int32 // %t50 - var _v55 int32 // %t52 - var _v56 int32 // %t53 - var _v57 int32 // %t54 - var _v58 int32 // %t55 - var _v59 int32 // %t56 - var _v60 int32 // %t57 - var _v61 int32 // %t58 - var _v9 int32 // %t6 - var _v63 int32 // %t60 - var _v64 int32 // %t61 - var _v2 = int32(bp + 96) // %v2 - var _v3 = int32(bp + 100) // %v3 - *(*int32)(unsafe.Pointer(bp + 0)) = _v1 - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__63))), bp+0) - _v8 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _v9 = Xsqlite3_changes(t, _v8) - if _v9 != 0 { - goto l2 - } - goto l13 -l2: - _v13 = *(*int32)(unsafe.Pointer(&s_g)) - _v16 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) - _v20 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - *(*int32)(unsafe.Pointer(bp + 8)) = _v13 - - *(*int32)(unsafe.Pointer(bp + 16)) = _v16 - - *(*int32)(unsafe.Pointer(bp + 24)) = _v1 - - *(*int32)(unsafe.Pointer(bp + 32)) = _v20 - - _v21 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__64))), bp+8) - _v22 = int32(int32(_v2) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v22))) = _v21 - _v25 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 72)) - if _v25 != 0 { - goto l3 - } - goto l4 -l3: - _v27 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - *(*int32)(unsafe.Pointer(bp + 40)) = _v27 - - _v28 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__65))), bp+40) - _v29 = int32(int32(_v2) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v29))) = _v28 - goto l4 -l4: - _v32 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 92)) - if _v32 != 0 { - goto l5 - } - goto l6 -l5: - _v34 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - *(*int32)(unsafe.Pointer(bp + 48)) = _v34 - - _v35 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__66))), bp+48) - _v36 = int32(int32(_v2) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v36))) = _v35 - goto l6 -l6: - _v39 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 4)) - if _v39 != 0 { - goto l7 - } - goto l8 -l7: - _v41 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v44 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 4)) - *(*int32)(unsafe.Pointer(bp + 56)) = _v41 - - *(*int32)(unsafe.Pointer(bp + 64)) = _v44 - - _v45 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__67))), bp+56) - _v46 = int32(int32(_v2) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v46))) = _v45 - goto l8 -l8: - _v49 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - _v51 = crt.Bool32(int32(_v49) >= int32(2)) - if _v51 != 0 { - goto l9 - } - goto l10 -l9: - _v53 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - *(*int32)(unsafe.Pointer(bp + 72)) = _v53 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__68))), bp+72) - goto l10 -l10: - _v55 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - *(*int32)(unsafe.Pointer(bp + 80)) = _v55 - - _v56 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__69))), bp+80) - _v57 = int32(int32(_v2) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v57))) = _v56 - _v58 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v59 = crt.Xsystem(t, _v58) - _v60 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v60))) = _v59 - _v61 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - if _v61 != 0 { - goto l11 - } - goto l12 -l11: - _v63 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - *(*int32)(unsafe.Pointer(bp + 88)) = _v63 - s_errorMessage(t, int32(uintptr(unsafe.Pointer(&s__70))), bp+88) - goto l12 -l12: - _v64 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - Xsqlite3_free(t, _v64) - goto l13 -l13: - goto l14 -l14: -} - -var s__62 = [12]byte{0x73, 0x74, 0x61, 0x72, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74} - -var s__63 = [42]byte{ - 0x49, 0x4e, 0x53, 0x45, 0x52, 0x54, 0x20, 0x4f, 0x52, 0x20, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, - 0x20, 0x49, 0x4e, 0x54, 0x4f, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x56, 0x41, 0x4c, - 0x55, 0x45, 0x53, 0x28, 0x25, 0x64, 0x2c, 0x30, 0x29, -} - -var s__64 = [31]byte{ - 0x25, 0x73, 0x20, 0x22, 0x25, 0x73, 0x22, 0x20, 0x2d, 0x2d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x20, 0x25, 0x64, 0x20, 0x2d, 0x2d, 0x74, 0x72, 0x61, 0x63, 0x65, 0x20, 0x25, 0x64, -} - -var s__65 = [14]byte{0x25, 0x7a, 0x20, 0x2d, 0x2d, 0x73, 0x71, 0x6c, 0x74, 0x72, 0x61, 0x63, 0x65} - -var s__66 = [10]byte{0x25, 0x7a, 0x20, 0x2d, 0x2d, 0x73, 0x79, 0x6e, 0x63} - -var s__67 = [14]byte{0x25, 0x7a, 0x20, 0x2d, 0x2d, 0x76, 0x66, 0x73, 0x20, 0x22, 0x25, 0x73, 0x22} - -var s__68 = [13]byte{0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x28, 0x27, 0x25, 0x71, 0x27, 0x29} - -var s__69 = [5]byte{0x25, 0x7a, 0x20, 0x26} - -var s__70 = [34]byte{ - 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x28, 0x29, 0x20, 0x66, 0x61, 0x69, 0x6c, 0x73, 0x20, 0x77, - 0x69, 0x74, 0x68, 0x20, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x25, - 0x64, -} - -func s_readFile(t *crt.TLS, _v1 int32) int32 { - bp := t.Alloc(32) - defer t.Free(32) - var _v17 int32 // %t13 - var _v18 int32 // %t14 - var _v19 int32 // %t15 - var _v20 int32 // %t16 - var _v21 int32 // %t17 - var _v23 int32 // %t19 - var _v24 int32 // %t20 - var _v25 int32 // %t21 - var _v26 int32 // %t22 - var _v28 int32 // %t24 - var _v29 int32 // %t25 - var _v30 int32 // %t26 - var _v31 int32 // %t27 - var _v7 int32 // %t3 - var _v34 int32 // %t30 - var _v35 int32 // %t31 - var _v36 int32 // %t32 - var _v37 int32 // %t33 - var _v38 int32 // %t34 - var _v40 int32 // %t36 - var _v8 int32 // %t4 - var _v10 int32 // %t6 - var _v13 int32 // %t9 - var _v2 = int32(bp + 8) // %v2 - var _v3 = int32(bp + 12) // %v3 - var _v4 = int32(bp + 16) // %v4 - _v7 = crt.Xfopen(t, _v1, int32(uintptr(unsafe.Pointer(&s__72)))) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v7 - _v8 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v10 = crt.Bool32(int32(_v8) == int32(0)) - if _v10 != 0 { - goto l2 - } - goto l3 -l2: - *(*int32)(unsafe.Pointer(bp + 0)) = _v1 - s_fatalError(t, int32(uintptr(unsafe.Pointer(&s__73))), bp+0) - goto l3 -l3: - _v13 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _ = crt.Xfseek(t, _v13, 0, 2) - _v17 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v18 = crt.Xftell(t, _v17) - _v19 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v19))) = _v18 - _v20 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - crt.Xrewind(t, _v20) - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v23 = int32(int32(_v21) + int32(1)) - _v24 = Xsqlite3_malloc(t, _v23) - _v25 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v25))) = _v24 - _v26 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v28 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v29 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v30 = crt.Xfread(t, _v26, 1, _v28, _v29) - _v31 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v31))) = _v30 - _v34 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v35 = int32(_v34 * 1) - _v36 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v37 = int32(int32(_v36) + int32(_v35)) - *(*int8)(unsafe.Pointer(uintptr(_v37))) = 0 - _v38 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _ = crt.Xfclose(t, _v38) - _v40 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - return _v40 -} - -var s__71 = [9]byte{0x72, 0x65, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65} - -var s__72 = [3]byte{0x72, 0x62} - -var s__73 = [29]byte{ - 0x63, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x20, 0x6f, 0x70, 0x65, 0x6e, 0x20, 0x22, 0x25, 0x73, 0x22, - 0x20, 0x66, 0x6f, 0x72, 0x20, 0x72, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, -} - -func s_tokenLength(t *crt.TLS, _v1 int32, _v2 int32) int32 { - bp := t.Alloc(32) - defer t.Free(32) - var _v17 int32 // %t10 - var _v107 int32 // %t100 - var _v108 int32 // %t101 - var _v110 int32 // %t103 - var _v111 int32 // %t104 - var _v112 int32 // %t105 - var _v113 int32 // %t106 - var _v115 int32 // %t108 - var _v116 int32 // %t109 - var _v18 int32 // %t11 - var _v117 int32 // %t110 - var _v119 int32 // %t112 - var _v120 int32 // %t113 - var _v121 int32 // %t114 - var _v122 int32 // %t115 - var _v123 int32 // %t116 - var _v125 int32 // %t118 - var _v126 int32 // %t119 - var _v19 int32 // %t12 - var _v127 int32 // %t120 - var _v128 int32 // %t121 - var _v129 int32 // %t122 - var _v130 int32 // %t123 - var _v134 int32 // %t127 - var _v135 int32 // %t128 - var _v136 int32 // %t129 - var _v20 int32 // %t13 - var _v138 int32 // %t131 - var _v142 int32 // %t135 - var _v143 int32 // %t136 - var _v144 int32 // %t137 - var _v146 int32 // %t139 - var _v147 int32 // %t140 - var _v149 int32 // %t142 - var _v150 int32 // %t143 - var _v151 int32 // %t144 - var _v153 int32 // %t146 - var _v154 int32 // %t147 - var _v155 int32 // %t148 - var _v156 int32 // %t149 - var _v158 int32 // %t151 - var _v159 int32 // %t152 - var _v160 int32 // %t153 - var _v162 int32 // %t155 - var _v163 int32 // %t156 - var _v164 int32 // %t157 - var _v165 int32 // %t158 - var _v166 int32 // %t159 - var _v167 int32 // %t160 - var _v168 int32 // %t161 - var _v170 int32 // %t163 - var _v171 int32 // %t164 - var _v173 int32 // %t166 - var _v174 int32 // %t167 - var _v175 int32 // %t168 - var _v176 int32 // %t169 - var _v24 int32 // %t17 - var _v177 int32 // %t170 - var _v181 int32 // %t174 - var _v182 int32 // %t175 - var _v183 int32 // %t176 - var _v185 int32 // %t178 - var _v189 int32 // %t182 - var _v190 int32 // %t183 - var _v191 int32 // %t184 - var _v193 int32 // %t186 - var _v194 int32 // %t187 - var _v198 int32 // %t191 - var _v199 int32 // %t192 - var _v200 int32 // %t193 - var _v202 int32 // %t195 - var _v203 int32 // %t196 - var _v204 int32 // %t197 - var _v206 int32 // %t199 - var _v207 int32 // %t200 - var _v208 int32 // %t201 - var _v209 int32 // %t202 - var _v211 int32 // %t204 - var _v212 int32 // %t205 - var _v213 int32 // %t206 - var _v215 int32 // %t208 - var _v28 int32 // %t21 - var _v217 int32 // %t210 - var _v218 int32 // %t211 - var _v219 int32 // %t212 - var _v220 int32 // %t213 - var _v222 int32 // %t215 - var _v223 int32 // %t216 - var _v224 int32 // %t217 - var _v225 int32 // %t218 - var _v226 int32 // %t219 - var _v29 int32 // %t22 - var _v227 int32 // %t220 - var _v228 int32 // %t221 - var _v229 int32 // %t222 - var _v230 int32 // %t223 - var _v232 int32 // %t225 - var _v233 int32 // %t226 - var _v235 int32 // %t228 - var _v236 int32 // %t229 - var _v30 int32 // %t23 - var _v237 int32 // %t230 - var _v238 int32 // %t231 - var _v239 int32 // %t232 - var _v240 int32 // %t233 - var _v241 int32 // %t234 - var _v242 int32 // %t235 - var _v244 int32 // %t237 - var _v245 int32 // %t238 - var _v246 int32 // %t239 - var _v248 int32 // %t241 - var _v249 int32 // %t242 - var _v250 int32 // %t243 - var _v251 int32 // %t244 - var _v252 int32 // %t245 - var _v254 int32 // %t247 - var _v255 int32 // %t248 - var _v256 int32 // %t249 - var _v32 int32 // %t25 - var _v257 int32 // %t250 - var _v258 int32 // %t251 - var _v259 int32 // %t252 - var _v260 int32 // %t253 - var _v261 int32 // %t254 - var _v262 int32 // %t255 - var _v263 int32 // %t256 - var _v267 int32 // %t260 - var _v268 int32 // %t261 - var _v269 int32 // %t262 - var _v270 int32 // %t263 - var _v272 int32 // %t265 - var _v273 int32 // %t266 - var _v274 int32 // %t267 - var _v276 int32 // %t269 - var _v277 int32 // %t270 - var _v278 int32 // %t271 - var _v280 int32 // %t273 - var _v281 int32 // %t274 - var _v282 int32 // %t275 - var _v283 int32 // %t276 - var _v284 int32 // %t277 - var _v285 int32 // %t278 - var _v36 int32 // %t29 - var _v37 int32 // %t30 - var _v38 int32 // %t31 - var _v40 int32 // %t33 - var _v41 int32 // %t34 - var _v42 int32 // %t35 - var _v47 int32 // %t40 - var _v48 int32 // %t41 - var _v49 int32 // %t42 - var _v51 int32 // %t44 - var _v53 int32 // %t46 - var _v55 int32 // %t48 - var _v56 int32 // %t49 - var _v12 int32 // %t5 - var _v57 int32 // %t50 - var _v58 int32 // %t51 - var _v59 int32 // %t52 - var _v61 int32 // %t54 - var _v62 int32 // %t55 - var _v63 int32 // %t56 - var _v64 int32 // %t57 - var _v65 int32 // %t58 - var _v13 int32 // %t6 - var _v67 int32 // %t60 - var _v68 int32 // %t61 - var _v70 int32 // %t63 - var _v72 int32 // %t65 - var _v73 int32 // %t66 - var _v74 int32 // %t67 - var _v75 int32 // %t68 - var _v76 int32 // %t69 - var _v14 int32 // %t7 - var _v77 int32 // %t70 - var _v78 int32 // %t71 - var _v79 int32 // %t72 - var _v80 int32 // %t73 - var _v81 int32 // %t74 - var _v82 int32 // %t75 - var _v86 int32 // %t79 - var _v15 int32 // %t8 - var _v87 int32 // %t80 - var _v88 int32 // %t81 - var _v90 int32 // %t83 - var _v91 int32 // %t84 - var _v92 int32 // %t85 - var _v93 int32 // %t86 - var _v95 int32 // %t88 - var _v96 int32 // %t89 - var _v16 int32 // %t9 - var _v97 int32 // %t90 - var _v99 int32 // %t92 - var _v100 int32 // %t93 - var _v101 int32 // %t94 - var _v102 int32 // %t95 - var _v103 int32 // %t96 - var _v105 int32 // %t98 - var _v106 int32 // %t99 - var _v3 = int32(bp + 0) // %v3 - var _v4 = int32(bp + 4) // %v4 - var _v5 = int32(bp + 8) // %v5 - var _v6 = int32(bp + 12) // %v6 - var _v7 = int32(bp + 16) // %v7 - *(*int32)(unsafe.Pointer(uintptr(_v3))) = 0 - _v12 = int32(int32(_v1) + int32(0)) - _v13 = int32(*(*int8)(unsafe.Pointer(uintptr(_v12)))) - _v14 = int32(int32(uint8(_v13))) - _v15 = int32(_v14 * 2) - _v16 = crt.X__ctype_b_loc(t) - _v17 = *(*int32)(unsafe.Pointer(uintptr(_v16))) - _v18 = int32(int32(_v17) + int32(_v15)) - _v19 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v18)))) - _v20 = int32(uint16(_v19)) - _v24 = int32(int32(_v20) & int32(8192)) - goto l2 -l2: - if _v24 != 0 { - goto l127 - } - goto l3 -l127: - _v42 = 1 - goto l11 -l3: - _v28 = int32(int32(_v1) + int32(0)) - _v29 = int32(*(*int8)(unsafe.Pointer(uintptr(_v28)))) - _v30 = int32(int8(_v29)) - _v32 = crt.Bool32(int32(_v30) == int32(47)) - goto l4 -l4: - if _v32 != 0 { - goto l5 - } - goto l128 -l128: - _v41 = 0 - goto l8 -l5: - _v36 = int32(int32(_v1) + int32(1)) - _v37 = int32(*(*int8)(unsafe.Pointer(uintptr(_v36)))) - _v38 = int32(int8(_v37)) - _v40 = crt.Bool32(int32(_v38) == int32(42)) - goto l6 -l6: - if _v40 != 0 { - goto l7 - } - goto l129 -l129: - _v41 = 0 - goto l8 -l7: - _v41 = 1 - goto l8 -l8: - goto l9 -l9: - if _v41 != 0 { - goto l130 - } - goto l10 -l130: - _v42 = 1 - goto l11 -l10: - _v42 = 0 - goto l11 -l11: - if _v42 != 0 { - goto l12 - } - goto l58 -l12: - *(*int32)(unsafe.Pointer(uintptr(_v4))) = 0 - _v47 = int32(int32(_v1) + int32(0)) - _v48 = int32(*(*int8)(unsafe.Pointer(uintptr(_v47)))) - _v49 = int32(int8(_v48)) - _v51 = crt.Bool32(int32(_v49) == int32(47)) - if _v51 != 0 { - goto l13 - } - goto l14 -l13: - _v53 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v53))) = 1 - _v55 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v55))) = 2 - goto l14 -l14: - goto l15 -l15: - _v56 = int32(int32(_v3) + int32(0)) - _v57 = *(*int32)(unsafe.Pointer(uintptr(_v56))) - _v58 = int32(int32(_v57) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v56))) = _v58 - _v59 = int32(_v57 * 1) - _v61 = int32(int32(_v1) + int32(_v59)) - _v62 = int32(*(*int8)(unsafe.Pointer(uintptr(_v61)))) - _v63 = int32(int8(_v62)) - _v64 = int32(int32(_v5) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v64))) = _v63 - _v65 = *(*int32)(unsafe.Pointer(uintptr(_v64))) - _v67 = crt.Bool32(int32(_v65) != int32(0)) - if _v67 != 0 { - goto l16 - } - goto l131 -l131: - goto l57 -l16: - _v68 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v70 = crt.Bool32(int32(_v68) == int32(10)) - if _v70 != 0 { - goto l17 - } - goto l18 -l17: - _v72 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v73 = int32(int32(_v72) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v73 - goto l18 -l18: - _v74 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v75 = int32(int32(_v74) & int32(255)) - _v76 = int32(int32(uint8(_v75))) - _v77 = int32(_v76 * 2) - _v78 = crt.X__ctype_b_loc(t) - _v79 = *(*int32)(unsafe.Pointer(uintptr(_v78))) - _v80 = int32(int32(_v79) + int32(_v77)) - _v81 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v80)))) - _v82 = int32(uint16(_v81)) - _v86 = int32(int32(_v82) & int32(8192)) - if _v86 != 0 { - goto l19 - } - goto l21 -l19: - goto l15 -l21: - _v87 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - goto l22 -l22: - if _v87 != 0 { - goto l23 - } - goto l132 -l132: - _v91 = 0 - goto l26 -l23: - _v88 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v90 = crt.Bool32(int32(_v88) == int32(42)) - goto l24 -l24: - if _v90 != 0 { - goto l25 - } - goto l133 -l133: - _v91 = 0 - goto l26 -l25: - _v91 = 1 - goto l26 -l26: - goto l27 -l27: - if _v91 != 0 { - goto l28 - } - goto l134 -l134: - _v100 = 0 - goto l31 -l28: - _v92 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v93 = int32(_v92 * 1) - _v95 = int32(int32(_v1) + int32(_v93)) - _v96 = int32(*(*int8)(unsafe.Pointer(uintptr(_v95)))) - _v97 = int32(int8(_v96)) - _v99 = crt.Bool32(int32(_v97) == int32(47)) - goto l29 -l29: - if _v99 != 0 { - goto l30 - } - goto l135 -l135: - _v100 = 0 - goto l31 -l30: - _v100 = 1 - goto l31 -l31: - if _v100 != 0 { - goto l32 - } - goto l33 -l32: - _v101 = int32(int32(_v3) + int32(0)) - _v102 = *(*int32)(unsafe.Pointer(uintptr(_v101))) - _v103 = int32(int32(_v102) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v101))) = _v103 - _v105 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v105))) = 0 - goto l56 -l33: - _v106 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - goto l34 -l34: - if _v106 != 0 { - goto l35 - } - goto l136 -l136: - _v107 = 1 - goto l36 -l35: - _v107 = 0 - goto l36 -l36: - goto l37 -l37: - if _v107 != 0 { - goto l38 - } - goto l137 -l137: - _v111 = 0 - goto l41 -l38: - _v108 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v110 = crt.Bool32(int32(_v108) == int32(47)) - goto l39 -l39: - if _v110 != 0 { - goto l40 - } - goto l138 -l138: - _v111 = 0 - goto l41 -l40: - _v111 = 1 - goto l41 -l41: - goto l42 -l42: - if _v111 != 0 { - goto l43 - } - goto l139 -l139: - _v120 = 0 - goto l46 -l43: - _v112 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v113 = int32(_v112 * 1) - _v115 = int32(int32(_v1) + int32(_v113)) - _v116 = int32(*(*int8)(unsafe.Pointer(uintptr(_v115)))) - _v117 = int32(int8(_v116)) - _v119 = crt.Bool32(int32(_v117) == int32(42)) - goto l44 -l44: - if _v119 != 0 { - goto l45 - } - goto l140 -l140: - _v120 = 0 - goto l46 -l45: - _v120 = 1 - goto l46 -l46: - if _v120 != 0 { - goto l47 - } - goto l48 -l47: - _v121 = int32(int32(_v3) + int32(0)) - _v122 = *(*int32)(unsafe.Pointer(uintptr(_v121))) - _v123 = int32(int32(_v122) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v121))) = _v123 - _v125 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v125))) = 1 - goto l55 -l48: - _v126 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - goto l49 -l49: - if _v126 != 0 { - goto l50 - } - goto l141 -l141: - _v127 = 1 - goto l51 -l50: - _v127 = 0 - goto l51 -l51: - if _v127 != 0 { - goto l52 - } - goto l54 -l52: - goto l57 -l54: - goto l55 -l55: - goto l56 -l56: - goto l15 -l57: - _v128 = int32(int32(_v3) + int32(0)) - _v129 = *(*int32)(unsafe.Pointer(uintptr(_v128))) - _v130 = int32(int32(_v129) - int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v128))) = _v130 - goto l124 -l58: - _v134 = int32(int32(_v1) + int32(0)) - _v135 = int32(*(*int8)(unsafe.Pointer(uintptr(_v134)))) - _v136 = int32(int8(_v135)) - _v138 = crt.Bool32(int32(_v136) == int32(45)) - goto l59 -l59: - if _v138 != 0 { - goto l60 - } - goto l142 -l142: - _v147 = 0 - goto l63 -l60: - _v142 = int32(int32(_v1) + int32(1)) - _v143 = int32(*(*int8)(unsafe.Pointer(uintptr(_v142)))) - _v144 = int32(int8(_v143)) - _v146 = crt.Bool32(int32(_v144) == int32(45)) - goto l61 -l61: - if _v146 != 0 { - goto l62 - } - goto l143 -l143: - _v147 = 0 - goto l63 -l62: - _v147 = 1 - goto l63 -l63: - if _v147 != 0 { - goto l64 - } - goto l76 -l64: - _v149 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v149))) = 2 - goto l65 -l65: - _v150 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v151 = int32(_v150 * 1) - _v153 = int32(int32(_v1) + int32(_v151)) - _v154 = int32(*(*int8)(unsafe.Pointer(uintptr(_v153)))) - goto l66 -l66: - if _v154 != 0 { - goto l67 - } - goto l144 -l144: - _v163 = 0 - goto l70 -l67: - _v155 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v156 = int32(_v155 * 1) - _v158 = int32(int32(_v1) + int32(_v156)) - _v159 = int32(*(*int8)(unsafe.Pointer(uintptr(_v158)))) - _v160 = int32(int8(_v159)) - _v162 = crt.Bool32(int32(_v160) != int32(10)) - goto l68 -l68: - if _v162 != 0 { - goto l69 - } - goto l145 -l145: - _v163 = 0 - goto l70 -l69: - _v163 = 1 - goto l70 -l70: - if _v163 != 0 { - goto l71 - } - goto l73 -l71: - goto l72 -l72: - _v164 = int32(int32(_v3) + int32(0)) - _v165 = *(*int32)(unsafe.Pointer(uintptr(_v164))) - _v166 = int32(int32(_v165) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v164))) = _v166 - goto l65 -l73: - _v167 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v168 = int32(_v167 * 1) - _v170 = int32(int32(_v1) + int32(_v168)) - _v171 = int32(*(*int8)(unsafe.Pointer(uintptr(_v170)))) - if _v171 != 0 { - goto l74 - } - goto l75 -l74: - _v173 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v174 = int32(int32(_v173) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v174 - _v175 = int32(int32(_v3) + int32(0)) - _v176 = *(*int32)(unsafe.Pointer(uintptr(_v175))) - _v177 = int32(int32(_v176) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v175))) = _v177 - goto l75 -l75: - goto l123 -l76: - _v181 = int32(int32(_v1) + int32(0)) - _v182 = int32(*(*int8)(unsafe.Pointer(uintptr(_v181)))) - _v183 = int32(int8(_v182)) - _v185 = crt.Bool32(int32(_v183) == int32(34)) - goto l77 -l77: - if _v185 != 0 { - goto l146 - } - goto l78 -l146: - _v194 = 1 - goto l81 -l78: - _v189 = int32(int32(_v1) + int32(0)) - _v190 = int32(*(*int8)(unsafe.Pointer(uintptr(_v189)))) - _v191 = int32(int8(_v190)) - _v193 = crt.Bool32(int32(_v191) == int32(39)) - goto l79 -l79: - if _v193 != 0 { - goto l147 - } - goto l80 -l147: - _v194 = 1 - goto l81 -l80: - _v194 = 0 - goto l81 -l81: - if _v194 != 0 { - goto l82 - } - goto l94 -l82: - _v198 = int32(int32(_v1) + int32(0)) - _v199 = int32(*(*int8)(unsafe.Pointer(uintptr(_v198)))) - _v200 = int32(int8(_v199)) - *(*int32)(unsafe.Pointer(uintptr(_v6))) = _v200 - _v202 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v202))) = 1 - goto l83 -l83: - _v203 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v204 = int32(_v203 * 1) - _v206 = int32(int32(_v1) + int32(_v204)) - _v207 = int32(*(*int8)(unsafe.Pointer(uintptr(_v206)))) - if _v207 != 0 { - goto l84 - } - goto l148 -l148: - goto l93 -l84: - _v208 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v209 = int32(_v208 * 1) - _v211 = int32(int32(_v1) + int32(_v209)) - _v212 = int32(*(*int8)(unsafe.Pointer(uintptr(_v211)))) - _v213 = int32(int8(_v212)) - _v215 = crt.Bool32(int32(_v213) == int32(10)) - if _v215 != 0 { - goto l85 - } - goto l86 -l85: - _v217 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v218 = int32(int32(_v217) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v218 - goto l86 -l86: - _v219 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v220 = int32(_v219 * 1) - _v222 = int32(int32(_v1) + int32(_v220)) - _v223 = int32(*(*int8)(unsafe.Pointer(uintptr(_v222)))) - _v224 = int32(int8(_v223)) - _v225 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v226 = crt.Bool32(int32(_v224) == int32(_v225)) - if _v226 != 0 { - goto l87 - } - goto l91 -l87: - _v227 = int32(int32(_v3) + int32(0)) - _v228 = *(*int32)(unsafe.Pointer(uintptr(_v227))) - _v229 = int32(int32(_v228) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v227))) = _v229 - _v230 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v232 = int32(int32(_v230) + int32(1)) - _v233 = int32(_v232 * 1) - _v235 = int32(int32(_v1) + int32(_v233)) - _v236 = int32(*(*int8)(unsafe.Pointer(uintptr(_v235)))) - _v237 = int32(int8(_v236)) - _v238 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v239 = crt.Bool32(int32(_v237) != int32(_v238)) - if _v239 != 0 { - goto l88 - } - goto l90 -l88: - goto l93 -l90: - goto l91 -l91: - goto l92 -l92: - _v240 = int32(int32(_v3) + int32(0)) - _v241 = *(*int32)(unsafe.Pointer(uintptr(_v240))) - _v242 = int32(int32(_v241) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v240))) = _v242 - goto l83 -l93: - goto l122 -l94: - _v244 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v244))) = 1 - goto l95 -l95: - _v245 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v246 = int32(_v245 * 1) - _v248 = int32(int32(_v1) + int32(_v246)) - _v249 = int32(*(*int8)(unsafe.Pointer(uintptr(_v248)))) - _v250 = int32(int8(_v249)) - _v251 = int32(int32(_v7) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v251))) = _v250 - _v252 = *(*int32)(unsafe.Pointer(uintptr(_v251))) - _v254 = crt.Bool32(int32(_v252) != int32(0)) - goto l96 -l96: - if _v254 != 0 { - goto l97 - } - goto l149 -l149: - _v269 = 0 - goto l103 -l97: - _v255 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v256 = int32(int32(_v255) & int32(255)) - _v257 = int32(int32(uint8(_v256))) - _v258 = int32(_v257 * 2) - _v259 = crt.X__ctype_b_loc(t) - _v260 = *(*int32)(unsafe.Pointer(uintptr(_v259))) - _v261 = int32(int32(_v260) + int32(_v258)) - _v262 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v261)))) - _v263 = int32(uint16(_v262)) - _v267 = int32(int32(_v263) & int32(8192)) - goto l98 -l98: - if _v267 != 0 { - goto l99 - } - goto l150 -l150: - _v268 = 1 - goto l100 -l99: - _v268 = 0 - goto l100 -l100: - goto l101 -l101: - if _v268 != 0 { - goto l102 - } - goto l151 -l151: - _v269 = 0 - goto l103 -l102: - _v269 = 1 - goto l103 -l103: - goto l104 -l104: - if _v269 != 0 { - goto l105 - } - goto l152 -l152: - _v273 = 0 - goto l108 -l105: - _v270 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v272 = crt.Bool32(int32(_v270) != int32(34)) - goto l106 -l106: - if _v272 != 0 { - goto l107 - } - goto l153 -l153: - _v273 = 0 - goto l108 -l107: - _v273 = 1 - goto l108 -l108: - goto l109 -l109: - if _v273 != 0 { - goto l110 - } - goto l154 -l154: - _v277 = 0 - goto l113 -l110: - _v274 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v276 = crt.Bool32(int32(_v274) != int32(39)) - goto l111 -l111: - if _v276 != 0 { - goto l112 - } - goto l155 -l155: - _v277 = 0 - goto l113 -l112: - _v277 = 1 - goto l113 -l113: - goto l114 -l114: - if _v277 != 0 { - goto l115 - } - goto l156 -l156: - _v281 = 0 - goto l118 -l115: - _v278 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v280 = crt.Bool32(int32(_v278) != int32(59)) - goto l116 -l116: - if _v280 != 0 { - goto l117 - } - goto l157 -l157: - _v281 = 0 - goto l118 -l117: - _v281 = 1 - goto l118 -l118: - if _v281 != 0 { - goto l119 - } - goto l121 -l119: - goto l120 -l120: - _v282 = int32(int32(_v3) + int32(0)) - _v283 = *(*int32)(unsafe.Pointer(uintptr(_v282))) - _v284 = int32(int32(_v283) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v282))) = _v284 - goto l95 -l121: - goto l122 -l122: - goto l123 -l123: - goto l124 -l124: - _v285 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - return _v285 -} - -var s__74 = [12]byte{0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68} - -func s_extractToken(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32, _v4 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v16 int32 // %t10 - var _v19 int32 // %t13 - var _v20 int32 // %t14 - var _v22 int32 // %t16 - var _v23 int32 // %t17 - var _v26 int32 // %t20 - var _v27 int32 // %t21 - var _v28 int32 // %t22 - var _v29 int32 // %t23 - var _v30 int32 // %t24 - var _v32 int32 // %t26 - var _v33 int32 // %t27 - var _v34 int32 // %t28 - var _v35 int32 // %t29 - var _v36 int32 // %t30 - var _v37 int32 // %t31 - var _v38 int32 // %t32 - var _v39 int32 // %t33 - var _v40 int32 // %t34 - var _v44 int32 // %t38 - var _v45 int32 // %t39 - var _v10 int32 // %t4 - var _v46 int32 // %t40 - var _v47 int32 // %t41 - var _v48 int32 // %t42 - var _v50 int32 // %t44 - var _v51 int32 // %t45 - var _v52 int32 // %t46 - var _v53 int32 // %t47 - var _v54 int32 // %t48 - var _v55 int32 // %t49 - var _v56 int32 // %t50 - var _v57 int32 // %t51 - var _v58 int32 // %t52 - var _v61 int32 // %t55 - var _v62 int32 // %t56 - var _v63 int32 // %t57 - var _v64 int32 // %t58 - var _v65 int32 // %t59 - var _v15 int32 // %t9 - var _v5 = int32(bp + 0) // %v3 - var _v7 = int32(bp + 4) // %v5 - *(*int32)(unsafe.Pointer(uintptr(_v5))) = _v3 - _v10 = crt.Bool32(int32(_v2) <= int32(0)) - if _v10 != 0 { - goto l2 - } - goto l4 -l2: - _v15 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v16 = int32(int32(_v15) + int32(0)) - *(*int8)(unsafe.Pointer(uintptr(_v16))) = 0 - return 0 -l4: - _v19 = int32(int32(_v7) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v19))) = 0 - goto l5 -l5: - _v20 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v22 = crt.Bool32(int32(_v20) < int32(_v2)) - goto l6 -l6: - if _v22 != 0 { - goto l7 - } - goto l24 -l24: - _v28 = 0 - goto l10 -l7: - _v23 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v26 = int32(int32(_v4) - int32(1)) - _v27 = crt.Bool32(int32(_v23) < int32(_v26)) - goto l8 -l8: - if _v27 != 0 { - goto l9 - } - goto l25 -l25: - _v28 = 0 - goto l10 -l9: - _v28 = 1 - goto l10 -l10: - goto l11 -l11: - if _v28 != 0 { - goto l12 - } - goto l26 -l26: - _v46 = 0 - goto l18 -l12: - _v29 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v30 = int32(_v29 * 1) - _v32 = int32(int32(_v1) + int32(_v30)) - _v33 = int32(*(*int8)(unsafe.Pointer(uintptr(_v32)))) - _v34 = int32(int32(uint8(_v33))) - _v35 = int32(_v34 * 2) - _v36 = crt.X__ctype_b_loc(t) - _v37 = *(*int32)(unsafe.Pointer(uintptr(_v36))) - _v38 = int32(int32(_v37) + int32(_v35)) - _v39 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v38)))) - _v40 = int32(uint16(_v39)) - _v44 = int32(int32(_v40) & int32(8192)) - goto l13 -l13: - if _v44 != 0 { - goto l14 - } - goto l27 -l27: - _v45 = 1 - goto l15 -l14: - _v45 = 0 - goto l15 -l15: - goto l16 -l16: - if _v45 != 0 { - goto l17 - } - goto l28 -l28: - _v46 = 0 - goto l18 -l17: - _v46 = 1 - goto l18 -l18: - if _v46 != 0 { - goto l19 - } - goto l21 -l19: - _v47 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v48 = int32(_v47 * 1) - _v50 = int32(int32(_v1) + int32(_v48)) - _v51 = int32(*(*int8)(unsafe.Pointer(uintptr(_v50)))) - _v52 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v53 = int32(_v52 * 1) - _v54 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v55 = int32(int32(_v54) + int32(_v53)) - *(*int8)(unsafe.Pointer(uintptr(_v55))) = int8(_v51) - goto l20 -l20: - _v56 = int32(int32(_v7) + int32(0)) - _v57 = *(*int32)(unsafe.Pointer(uintptr(_v56))) - _v58 = int32(int32(_v57) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v56))) = _v58 - goto l5 -l21: - _v61 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v62 = int32(_v61 * 1) - _v63 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v64 = int32(int32(_v63) + int32(_v62)) - *(*int8)(unsafe.Pointer(uintptr(_v64))) = 0 - _v65 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - return _v65 -} - -var s__75 = [13]byte{0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e} - -func s_findEnd(t *crt.TLS, _v1 int32, _v2 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v15 int32 // %t12 - var _v16 int32 // %t13 - var _v18 int32 // %t15 - var _v19 int32 // %t16 - var _v21 int32 // %t18 - var _v22 int32 // %t19 - var _v5 int32 // %t2 - var _v23 int32 // %t20 - var _v24 int32 // %t21 - var _v25 int32 // %t22 - var _v26 int32 // %t23 - var _v27 int32 // %t24 - var _v28 int32 // %t25 - var _v29 int32 // %t26 - var _v6 int32 // %t3 - var _v33 int32 // %t30 - var _v34 int32 // %t31 - var _v35 int32 // %t32 - var _v36 int32 // %t33 - var _v38 int32 // %t35 - var _v39 int32 // %t36 - var _v41 int32 // %t38 - var _v42 int32 // %t39 - var _v43 int32 // %t40 - var _v44 int32 // %t41 - var _v45 int32 // %t42 - var _v8 int32 // %t5 - var _v9 int32 // %t6 - var _v11 int32 // %t8 - var _v12 int32 // %t9 - var _v3 = int32(bp + 0) // %v3 - *(*int32)(unsafe.Pointer(uintptr(_v3))) = 0 - goto l2 -l2: - _v5 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v6 = int32(_v5 * 1) - _v8 = int32(int32(_v1) + int32(_v6)) - _v9 = int32(*(*int8)(unsafe.Pointer(uintptr(_v8)))) - goto l3 -l3: - if _v9 != 0 { - goto l4 - } - goto l20 -l20: - _v36 = 0 - goto l15 -l4: - _v11 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v12 = int32(int32(_v1) + int32(_v11)) - _v15 = crt.Xstrncmp(t, _v12, int32(uintptr(unsafe.Pointer(&s__77))), 5) - goto l5 -l5: - if _v15 != 0 { - goto l21 - } - goto l6 -l21: - _v35 = 1 - goto l12 -l6: - _v16 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v18 = int32(int32(_v16) + int32(5)) - _v19 = int32(_v18 * 1) - _v21 = int32(int32(_v1) + int32(_v19)) - _v22 = int32(*(*int8)(unsafe.Pointer(uintptr(_v21)))) - _v23 = int32(int32(uint8(_v22))) - _v24 = int32(_v23 * 2) - _v25 = crt.X__ctype_b_loc(t) - _v26 = *(*int32)(unsafe.Pointer(uintptr(_v25))) - _v27 = int32(int32(_v26) + int32(_v24)) - _v28 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v27)))) - _v29 = int32(uint16(_v28)) - _v33 = int32(int32(_v29) & int32(8192)) - goto l7 -l7: - if _v33 != 0 { - goto l8 - } - goto l22 -l22: - _v34 = 1 - goto l9 -l8: - _v34 = 0 - goto l9 -l9: - goto l10 -l10: - if _v34 != 0 { - goto l23 - } - goto l11 -l23: - _v35 = 1 - goto l12 -l11: - _v35 = 0 - goto l12 -l12: - goto l13 -l13: - if _v35 != 0 { - goto l14 - } - goto l24 -l24: - _v36 = 0 - goto l15 -l14: - _v36 = 1 - goto l15 -l15: - if _v36 != 0 { - goto l16 - } - goto l17 -l16: - _v38 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v39 = int32(int32(_v1) + int32(_v38)) - _v41 = s_tokenLength(t, _v39, _v2) - _v42 = int32(int32(_v3) + int32(0)) - _v43 = *(*int32)(unsafe.Pointer(uintptr(_v42))) - _v44 = int32(int32(_v43) + int32(_v41)) - *(*int32)(unsafe.Pointer(uintptr(_v42))) = _v44 - goto l2 -l17: - _v45 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - return _v45 -} - -var s__76 = [8]byte{0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x64} - -var s__77 = [6]byte{0x2d, 0x2d, 0x65, 0x6e, 0x64} - -func s_findEndif(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v106 int32 // %t100 - var _v107 int32 // %t101 - var _v108 int32 // %t102 - var _v109 int32 // %t103 - var _v112 int32 // %t106 - var _v113 int32 // %t107 - var _v114 int32 // %t108 - var _v115 int32 // %t109 - var _v17 int32 // %t11 - var _v116 int32 // %t110 - var _v117 int32 // %t111 - var _v118 int32 // %t112 - var _v119 int32 // %t113 - var _v120 int32 // %t114 - var _v121 int32 // %t115 - var _v122 int32 // %t116 - var _v123 int32 // %t117 - var _v19 int32 // %t13 - var _v20 int32 // %t14 - var _v23 int32 // %t17 - var _v25 int32 // %t19 - var _v8 int32 // %t2 - var _v26 int32 // %t20 - var _v28 int32 // %t22 - var _v29 int32 // %t23 - var _v31 int32 // %t25 - var _v32 int32 // %t26 - var _v33 int32 // %t27 - var _v34 int32 // %t28 - var _v35 int32 // %t29 - var _v9 int32 // %t3 - var _v36 int32 // %t30 - var _v37 int32 // %t31 - var _v38 int32 // %t32 - var _v39 int32 // %t33 - var _v43 int32 // %t37 - var _v44 int32 // %t38 - var _v47 int32 // %t41 - var _v48 int32 // %t42 - var _v51 int32 // %t45 - var _v53 int32 // %t47 - var _v54 int32 // %t48 - var _v55 int32 // %t49 - var _v11 int32 // %t5 - var _v57 int32 // %t51 - var _v58 int32 // %t52 - var _v60 int32 // %t54 - var _v61 int32 // %t55 - var _v62 int32 // %t56 - var _v63 int32 // %t57 - var _v64 int32 // %t58 - var _v65 int32 // %t59 - var _v12 int32 // %t6 - var _v66 int32 // %t60 - var _v67 int32 // %t61 - var _v68 int32 // %t62 - var _v72 int32 // %t66 - var _v73 int32 // %t67 - var _v74 int32 // %t68 - var _v75 int32 // %t69 - var _v76 int32 // %t70 - var _v77 int32 // %t71 - var _v79 int32 // %t73 - var _v80 int32 // %t74 - var _v83 int32 // %t77 - var _v85 int32 // %t79 - var _v14 int32 // %t8 - var _v86 int32 // %t80 - var _v88 int32 // %t82 - var _v89 int32 // %t83 - var _v91 int32 // %t85 - var _v92 int32 // %t86 - var _v93 int32 // %t87 - var _v94 int32 // %t88 - var _v95 int32 // %t89 - var _v15 int32 // %t9 - var _v96 int32 // %t90 - var _v97 int32 // %t91 - var _v98 int32 // %t92 - var _v99 int32 // %t93 - var _v103 int32 // %t97 - var _v104 int32 // %t98 - var _v4 = int32(bp + 0) // %v4 - var _v5 = int32(bp + 4) // %v5 - var _v6 = int32(bp + 8) // %v6 - *(*int32)(unsafe.Pointer(uintptr(_v4))) = 0 - goto l2 -l2: - _v8 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v9 = int32(_v8 * 1) - _v11 = int32(int32(_v1) + int32(_v9)) - _v12 = int32(*(*int8)(unsafe.Pointer(uintptr(_v11)))) - if _v12 != 0 { - goto l3 - } - goto l35 -l3: - _v14 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v15 = int32(int32(_v1) + int32(_v14)) - _v17 = s_tokenLength(t, _v15, _v3) - *(*int32)(unsafe.Pointer(uintptr(_v5))) = _v17 - _v19 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v20 = int32(int32(_v1) + int32(_v19)) - _v23 = crt.Xstrncmp(t, _v20, int32(uintptr(unsafe.Pointer(&s__79))), 7) - _v25 = crt.Bool32(int32(_v23) == int32(0)) - goto l4 -l4: - if _v25 != 0 { - goto l5 - } - goto l38 -l38: - _v44 = 0 - goto l8 -l5: - _v26 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v28 = int32(int32(_v26) + int32(7)) - _v29 = int32(_v28 * 1) - _v31 = int32(int32(_v1) + int32(_v29)) - _v32 = int32(*(*int8)(unsafe.Pointer(uintptr(_v31)))) - _v33 = int32(int32(uint8(_v32))) - _v34 = int32(_v33 * 2) - _v35 = crt.X__ctype_b_loc(t) - _v36 = *(*int32)(unsafe.Pointer(uintptr(_v35))) - _v37 = int32(int32(_v36) + int32(_v34)) - _v38 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v37)))) - _v39 = int32(uint16(_v38)) - _v43 = int32(int32(_v39) & int32(8192)) - goto l6 -l6: - if _v43 != 0 { - goto l7 - } - goto l39 -l39: - _v44 = 0 - goto l8 -l7: - _v44 = 1 - goto l8 -l8: - goto l9 -l9: - if _v44 != 0 { - goto l40 - } - goto l10 -l40: - _v74 = 1 - goto l23 -l10: - goto l11 -l11: - if _v2 != 0 { - goto l12 - } - goto l41 -l41: - _v54 = 0 - goto l15 -l12: - _v47 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v48 = int32(int32(_v1) + int32(_v47)) - _v51 = crt.Xstrncmp(t, _v48, int32(uintptr(unsafe.Pointer(&s__80))), 6) - _v53 = crt.Bool32(int32(_v51) == int32(0)) - goto l13 -l13: - if _v53 != 0 { - goto l14 - } - goto l42 -l42: - _v54 = 0 - goto l15 -l14: - _v54 = 1 - goto l15 -l15: - goto l16 -l16: - if _v54 != 0 { - goto l17 - } - goto l43 -l43: - _v73 = 0 - goto l20 -l17: - _v55 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v57 = int32(int32(_v55) + int32(6)) - _v58 = int32(_v57 * 1) - _v60 = int32(int32(_v1) + int32(_v58)) - _v61 = int32(*(*int8)(unsafe.Pointer(uintptr(_v60)))) - _v62 = int32(int32(uint8(_v61))) - _v63 = int32(_v62 * 2) - _v64 = crt.X__ctype_b_loc(t) - _v65 = *(*int32)(unsafe.Pointer(uintptr(_v64))) - _v66 = int32(int32(_v65) + int32(_v63)) - _v67 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v66)))) - _v68 = int32(uint16(_v67)) - _v72 = int32(int32(_v68) & int32(8192)) - goto l18 -l18: - if _v72 != 0 { - goto l19 - } - goto l44 -l44: - _v73 = 0 - goto l20 -l19: - _v73 = 1 - goto l20 -l20: - goto l21 -l21: - if _v73 != 0 { - goto l45 - } - goto l22 -l45: - _v74 = 1 - goto l23 -l22: - _v74 = 0 - goto l23 -l23: - if _v74 != 0 { - goto l24 - } - goto l26 -l24: - _v75 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v76 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v77 = int32(int32(_v75) + int32(_v76)) - return _v77 -l26: - _v79 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v80 = int32(int32(_v1) + int32(_v79)) - _v83 = crt.Xstrncmp(t, _v80, int32(uintptr(unsafe.Pointer(&s__81))), 4) - _v85 = crt.Bool32(int32(_v83) == int32(0)) - goto l27 -l27: - if _v85 != 0 { - goto l28 - } - goto l46 -l46: - _v104 = 0 - goto l31 -l28: - _v86 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v88 = int32(int32(_v86) + int32(4)) - _v89 = int32(_v88 * 1) - _v91 = int32(int32(_v1) + int32(_v89)) - _v92 = int32(*(*int8)(unsafe.Pointer(uintptr(_v91)))) - _v93 = int32(int32(uint8(_v92))) - _v94 = int32(_v93 * 2) - _v95 = crt.X__ctype_b_loc(t) - _v96 = *(*int32)(unsafe.Pointer(uintptr(_v95))) - _v97 = int32(int32(_v96) + int32(_v94)) - _v98 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v97)))) - _v99 = int32(uint16(_v98)) - _v103 = int32(int32(_v99) & int32(8192)) - goto l29 -l29: - if _v103 != 0 { - goto l30 - } - goto l47 -l47: - _v104 = 0 - goto l31 -l30: - _v104 = 1 - goto l31 -l31: - if _v104 != 0 { - goto l32 - } - goto l33 -l32: - _v106 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v107 = int32(int32(_v1) + int32(_v106)) - _v108 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v109 = int32(int32(_v107) + int32(_v108)) - _v112 = s_findEndif(t, _v109, 0, _v3) - *(*int32)(unsafe.Pointer(uintptr(_v6))) = _v112 - _v113 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v114 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v115 = int32(int32(_v113) + int32(_v114)) - _v116 = int32(int32(_v4) + int32(0)) - _v117 = *(*int32)(unsafe.Pointer(uintptr(_v116))) - _v118 = int32(int32(_v117) + int32(_v115)) - *(*int32)(unsafe.Pointer(uintptr(_v116))) = _v118 - goto l34 -l33: - _v119 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v120 = int32(int32(_v4) + int32(0)) - _v121 = *(*int32)(unsafe.Pointer(uintptr(_v120))) - _v122 = int32(int32(_v121) + int32(_v119)) - *(*int32)(unsafe.Pointer(uintptr(_v120))) = _v122 - goto l34 -l34: - goto l2 -l35: - _v123 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - return _v123 -} - -var s__78 = [10]byte{0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x64, 0x69, 0x66} - -var s__79 = [8]byte{0x2d, 0x2d, 0x65, 0x6e, 0x64, 0x69, 0x66} - -var s__80 = [7]byte{0x2d, 0x2d, 0x65, 0x6c, 0x73, 0x65} - -var s__81 = [5]byte{0x2d, 0x2d, 0x69, 0x66} - -func s_waitForClient(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32) { - bp := t.Alloc(48) - defer t.Free(48) - var _v18 int32 // %t11 - var _v19 int32 // %t12 - var _v23 int32 // %t16 - var _v24 int32 // %t17 - var _v25 int32 // %t18 - var _v26 int32 // %t19 - var _v28 int32 // %t21 - var _v29 int32 // %t22 - var _v31 int32 // %t24 - var _v32 int32 // %t25 - var _v33 int32 // %t26 - var _v35 int32 // %t28 - var _v36 int32 // %t29 - var _v37 int32 // %t30 - var _v42 int32 // %t35 - var _v43 int32 // %t36 - var _v44 int32 // %t37 - var _v45 int32 // %t38 - var _v50 int32 // %t43 - var _v52 int32 // %t45 - var _v53 int32 // %t46 - var _v55 int32 // %t48 - var _v12 int32 // %t5 - var _v57 int32 // %t50 - var _v60 int32 // %t53 - var _v62 int32 // %t55 - var _v65 int32 // %t58 - var _v15 int32 // %t8 - var _v16 int32 // %t9 - var _v4 = int32(bp + 32) // %v2 - var _v6 = int32(bp + 36) // %v3 - var _v8 = int32(bp + 40) // %v4 - var _v9 = int32(bp + 44) // %v5 - *(*int32)(unsafe.Pointer(uintptr(_v4))) = _v2 - *(*int32)(unsafe.Pointer(uintptr(_v6))) = _v3 - _v12 = crt.Bool32(int32(_v1) > int32(0)) - if _v12 != 0 { - goto l2 - } - goto l3 -l2: - *(*int32)(unsafe.Pointer(bp + 0)) = _v1 - - _v15 = s_prepareSql(t, int32(uintptr(unsafe.Pointer(&s__83))), bp+0) - _v16 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v16))) = _v15 - goto l4 -l3: - - _v18 = s_prepareSql(t, int32(uintptr(unsafe.Pointer(&s__84))), 0) - _v19 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v19))) = _v18 - goto l4 -l4: - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) = 0 - goto l5 -l5: - _v23 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v24 = Xsqlite3_step(t, _v23) - _v25 = int32(int32(_v9) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v25))) = _v24 - _v26 = *(*int32)(unsafe.Pointer(uintptr(_v25))) - _v28 = crt.Bool32(int32(_v26) == int32(5)) - goto l6 -l6: - if _v28 != 0 { - goto l26 - } - goto l7 -l26: - _v32 = 1 - goto l10 -l7: - _v29 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v31 = crt.Bool32(int32(_v29) == int32(100)) - goto l8 -l8: - if _v31 != 0 { - goto l27 - } - goto l9 -l27: - _v32 = 1 - goto l10 -l9: - _v32 = 0 - goto l10 -l10: - goto l11 -l11: - if _v32 != 0 { - goto l12 - } - goto l28 -l28: - _v36 = 0 - goto l15 -l12: - _v33 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v35 = crt.Bool32(int32(_v33) > int32(0)) - goto l13 -l13: - if _v35 != 0 { - goto l14 - } - goto l29 -l29: - _v36 = 0 - goto l15 -l14: - _v36 = 1 - goto l15 -l15: - if _v36 != 0 { - goto l16 - } - goto l17 -l16: - _v37 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _ = Xsqlite3_reset(t, _v37) - _ = Xsqlite3_sleep(t, 50) - _v42 = int32(int32(_v4) + int32(0)) - _v43 = *(*int32)(unsafe.Pointer(uintptr(_v42))) - _v44 = int32(int32(_v43) - int32(50)) - *(*int32)(unsafe.Pointer(uintptr(_v42))) = _v44 - goto l5 -l17: - _v45 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _ = Xsqlite3_finalize(t, _v45) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) = 10000 - _v50 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v52 = crt.Bool32(int32(_v50) != int32(101)) - if _v52 != 0 { - goto l18 - } - goto l24 -l18: - _v53 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v55 = crt.Bool32(int32(_v53) == int32(0)) - if _v55 != 0 { - goto l19 - } - goto l20 -l19: - _v57 = int32(int32(_v6) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v57))) = int32(uintptr(unsafe.Pointer(&s__85))) - goto l20 -l20: - _v60 = crt.Bool32(int32(_v1) > int32(0)) - if _v60 != 0 { - goto l21 - } - goto l22 -l21: - _v62 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - *(*int32)(unsafe.Pointer(bp + 8)) = _v62 - - *(*int32)(unsafe.Pointer(bp + 16)) = _v1 - s_errorMessage(t, int32(uintptr(unsafe.Pointer(&s__86))), bp+8) - goto l23 -l22: - _v65 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - *(*int32)(unsafe.Pointer(bp + 24)) = _v65 - s_errorMessage(t, int32(uintptr(unsafe.Pointer(&s__87))), bp+24) - goto l23 -l23: - goto l24 -l24: - goto l25 -l25: -} - -var s__82 = [14]byte{0x77, 0x61, 0x69, 0x74, 0x46, 0x6f, 0x72, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74} - -var s__83 = [96]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x31, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x74, 0x61, - 0x73, 0x6b, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x3d, - 0x25, 0x64, 0x20, 0x20, 0x20, 0x41, 0x4e, 0x44, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, - 0x49, 0x4e, 0x20, 0x28, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x69, 0x64, 0x20, 0x46, 0x52, - 0x4f, 0x4d, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x20, 0x41, 0x4e, 0x44, 0x20, - 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x49, 0x53, 0x20, 0x4e, 0x55, 0x4c, 0x4c, -} - -var s__84 = [81]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x31, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x74, 0x61, - 0x73, 0x6b, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, - 0x49, 0x4e, 0x20, 0x28, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x69, 0x64, 0x20, 0x46, 0x52, - 0x4f, 0x4d, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x20, 0x20, 0x41, 0x4e, 0x44, - 0x20, 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x49, 0x53, 0x20, 0x4e, 0x55, 0x4c, 0x4c, -} - -var s__85 [1]byte - -var s__86 = [32]byte{ - 0x25, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x20, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, - 0x67, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x25, 0x64, -} - -var s__87 = [34]byte{ - 0x25, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x20, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, - 0x67, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x73, -} - -func s_filenameTail(t *crt.TLS, _v1 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v13 int32 // %t10 - var _v14 int32 // %t11 - var _v16 int32 // %t13 - var _v17 int32 // %t14 - var _v18 int32 // %t15 - var _v20 int32 // %t17 - var _v21 int32 // %t18 - var _v5 int32 // %t2 - var _v23 int32 // %t20 - var _v24 int32 // %t21 - var _v25 int32 // %t22 - var _v26 int32 // %t23 - var _v27 int32 // %t24 - var _v29 int32 // %t26 - var _v30 int32 // %t27 - var _v6 int32 // %t3 - var _v7 int32 // %t4 - var _v8 int32 // %t5 - var _v9 int32 // %t6 - var _v11 int32 // %t8 - var _v12 int32 // %t9 - var _v2 = int32(bp + 0) // %v2 - var _v3 = int32(bp + 4) // %v3 - _v5 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v5))) = 0 - _v6 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v7 = int32(int32(_v2) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v7))) = _v6 - goto l2 -l2: - _v8 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v9 = int32(_v8 * 1) - _v11 = int32(int32(_v1) + int32(_v9)) - _v12 = int32(*(*int8)(unsafe.Pointer(uintptr(_v11)))) - if _v12 != 0 { - goto l3 - } - goto l7 -l3: - _v13 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v14 = int32(_v13 * 1) - _v16 = int32(int32(_v1) + int32(_v14)) - _v17 = int32(*(*int8)(unsafe.Pointer(uintptr(_v16)))) - _v18 = int32(int8(_v17)) - _v20 = crt.Bool32(int32(_v18) == int32(47)) - if _v20 != 0 { - goto l4 - } - goto l5 -l4: - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v23 = int32(int32(_v21) + int32(1)) - _v24 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v24))) = _v23 - goto l5 -l5: - goto l6 -l6: - _v25 = int32(int32(_v2) + int32(0)) - _v26 = *(*int32)(unsafe.Pointer(uintptr(_v25))) - _v27 = int32(int32(_v26) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v25))) = _v27 - goto l2 -l7: - _v29 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v30 = int32(int32(_v1) + int32(_v29)) - return _v30 -} - -var s__88 = [13]byte{0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x54, 0x61, 0x69, 0x6c} - -func s_booleanValue(t *crt.TLS, _v1 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v12 int32 // %t10 - var _v13 int32 // %t11 - var _v14 int32 // %t12 - var _v16 int32 // %t14 - var _v17 int32 // %t15 - var _v18 int32 // %t16 - var _v20 int32 // %t18 - var _v21 int32 // %t19 - var _v22 int32 // %t20 - var _v24 int32 // %t22 - var _v25 int32 // %t23 - var _v26 int32 // %t24 - var _v27 int32 // %t25 - var _v28 int32 // %t26 - var _v29 int32 // %t27 - var _v31 int32 // %t29 - var _v5 int32 // %t3 - var _v32 int32 // %t30 - var _v33 int32 // %t31 - var _v35 int32 // %t33 - var _v36 int32 // %t34 - var _v37 int32 // %t35 - var _v39 int32 // %t37 - var _v40 int32 // %t38 - var _v42 int32 // %t40 - var _v45 int32 // %t43 - var _v47 int32 // %t45 - var _v50 int32 // %t48 - var _v52 int32 // %t50 - var _v53 int32 // %t51 - var _v57 int32 // %t55 - var _v59 int32 // %t57 - var _v8 int32 // %t6 - var _v62 int32 // %t60 - var _v64 int32 // %t62 - var _v65 int32 // %t63 - var _v9 int32 // %t7 - var _v10 int32 // %t8 - var _v2 = int32(bp + 8) // %v2 - _v5 = crt.Bool32(int32(_v1) == int32(0)) - if _v5 != 0 { - goto l2 - } - goto l4 -l2: - return 0 -l4: - _v8 = int32(int32(_v2) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v8))) = 0 - goto l5 -l5: - _v9 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v10 = int32(_v9 * 1) - _v12 = int32(int32(_v1) + int32(_v10)) - _v13 = int32(*(*int8)(unsafe.Pointer(uintptr(_v12)))) - _v14 = int32(int8(_v13)) - _v16 = crt.Bool32(int32(_v14) >= int32(48)) - goto l6 -l6: - if _v16 != 0 { - goto l7 - } - goto l40 -l40: - _v25 = 0 - goto l10 -l7: - _v17 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v18 = int32(_v17 * 1) - _v20 = int32(int32(_v1) + int32(_v18)) - _v21 = int32(*(*int8)(unsafe.Pointer(uintptr(_v20)))) - _v22 = int32(int8(_v21)) - _v24 = crt.Bool32(int32(_v22) <= int32(57)) - goto l8 -l8: - if _v24 != 0 { - goto l9 - } - goto l41 -l41: - _v25 = 0 - goto l10 -l9: - _v25 = 1 - goto l10 -l10: - if _v25 != 0 { - goto l11 - } - goto l13 -l11: - goto l12 -l12: - _v26 = int32(int32(_v2) + int32(0)) - _v27 = *(*int32)(unsafe.Pointer(uintptr(_v26))) - _v28 = int32(int32(_v27) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v26))) = _v28 - goto l5 -l13: - _v29 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v31 = crt.Bool32(int32(_v29) > int32(0)) - goto l14 -l14: - if _v31 != 0 { - goto l15 - } - goto l42 -l42: - _v40 = 0 - goto l18 -l15: - _v32 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v33 = int32(_v32 * 1) - _v35 = int32(int32(_v1) + int32(_v33)) - _v36 = int32(*(*int8)(unsafe.Pointer(uintptr(_v35)))) - _v37 = int32(int8(_v36)) - _v39 = crt.Bool32(int32(_v37) == int32(0)) - goto l16 -l16: - if _v39 != 0 { - goto l17 - } - goto l43 -l43: - _v40 = 0 - goto l18 -l17: - _v40 = 1 - goto l18 -l18: - if _v40 != 0 { - goto l19 - } - goto l21 -l19: - _v42 = crt.Xatoi(t, _v1) - return _v42 -l21: - _v45 = Xsqlite3_stricmp(t, _v1, int32(uintptr(unsafe.Pointer(&s__90)))) - _v47 = crt.Bool32(int32(_v45) == int32(0)) - goto l22 -l22: - if _v47 != 0 { - goto l44 - } - goto l23 -l44: - _v53 = 1 - goto l26 -l23: - _v50 = Xsqlite3_stricmp(t, _v1, int32(uintptr(unsafe.Pointer(&s__91)))) - _v52 = crt.Bool32(int32(_v50) == int32(0)) - goto l24 -l24: - if _v52 != 0 { - goto l45 - } - goto l25 -l45: - _v53 = 1 - goto l26 -l25: - _v53 = 0 - goto l26 -l26: - if _v53 != 0 { - goto l27 - } - goto l29 -l27: - return 1 -l29: - _v57 = Xsqlite3_stricmp(t, _v1, int32(uintptr(unsafe.Pointer(&s__92)))) - _v59 = crt.Bool32(int32(_v57) == int32(0)) - goto l30 -l30: - if _v59 != 0 { - goto l46 - } - goto l31 -l46: - _v65 = 1 - goto l34 -l31: - _v62 = Xsqlite3_stricmp(t, _v1, int32(uintptr(unsafe.Pointer(&s__93)))) - _v64 = crt.Bool32(int32(_v62) == int32(0)) - goto l32 -l32: - if _v64 != 0 { - goto l47 - } - goto l33 -l47: - _v65 = 1 - goto l34 -l33: - _v65 = 0 - goto l34 -l34: - if _v65 != 0 { - goto l35 - } - goto l37 -l35: - return 0 -l37: - *(*int32)(unsafe.Pointer(bp + 0)) = _v1 - s_errorMessage(t, int32(uintptr(unsafe.Pointer(&s__94))), bp+0) - return 0 -} - -var s__89 = [13]byte{0x62, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65} - -var s__90 = [3]byte{0x6f, 0x6e} - -var s__91 = [4]byte{0x79, 0x65, 0x73} - -var s__92 = [4]byte{0x6f, 0x66, 0x66} - -var s__93 = [3]byte{0x6e, 0x6f} - -var s__94 = [22]byte{ - 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x62, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x3a, - 0x20, 0x5b, 0x25, 0x73, 0x5d, -} - -func s_test_breakpoint(t *crt.TLS) { - var _v2 int32 // %t2 - var _v3 int32 // %t3 - _v2 = *(*int32)(unsafe.Pointer(&s__96)) - _v3 = int32(int32(_v2) + int32(1)) - *(*int32)(unsafe.Pointer(&s__96)) = _v3 - goto l2 -l2: -} - -var s__95 = [16]byte{0x74, 0x65, 0x73, 0x74, 0x5f, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74} - -var s__96 [4]byte - -func s_runScript(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32, _v4 int32) { - bp := t.Alloc(1744) - defer t.Free(1744) - var _v50 int32 // %t10 - var _v140 int32 // %t100 - var _v142 int32 // %t102 - var _v143 int32 // %t103 - var _v144 int32 // %t104 - var _v146 int32 // %t106 - var _v147 int32 // %t107 - var _v148 int32 // %t108 - var _v149 int32 // %t109 - var _v51 int32 // %t11 - var _v150 int32 // %t110 - var _v152 int32 // %t112 - var _v153 int32 // %t113 - var _v154 int32 // %t114 - var _v155 int32 // %t115 - var _v156 int32 // %t116 - var _v159 int32 // %t119 - var _v161 int32 // %t121 - var _v163 int32 // %t123 - var _v165 int32 // %t125 - var _v166 int32 // %t126 - var _v168 int32 // %t128 - var _v169 int32 // %t129 - var _v53 int32 // %t13 - var _v171 int32 // %t131 - var _v172 int32 // %t132 - var _v174 int32 // %t134 - var _v177 int32 // %t137 - var _v178 int32 // %t138 - var _v54 int32 // %t14 - var _v180 int32 // %t140 - var _v181 int32 // %t141 - var _v182 int32 // %t142 - var _v184 int32 // %t144 - var _v185 int32 // %t145 - var _v186 int32 // %t146 - var _v188 int32 // %t148 - var _v189 int32 // %t149 - var _v55 int32 // %t15 - var _v190 int32 // %t150 - var _v191 int32 // %t151 - var _v193 int32 // %t153 - var _v194 int32 // %t154 - var _v195 int32 // %t155 - var _v197 int32 // %t157 - var _v198 int32 // %t158 - var _v199 int32 // %t159 - var _v56 int32 // %t16 - var _v200 int32 // %t160 - var _v202 int32 // %t162 - var _v203 int32 // %t163 - var _v204 int32 // %t164 - var _v205 int32 // %t165 - var _v206 int32 // %t166 - var _v207 int32 // %t167 - var _v208 int32 // %t168 - var _v209 int32 // %t169 - var _v57 int32 // %t17 - var _v210 int32 // %t170 - var _v214 int32 // %t174 - var _v215 int32 // %t175 - var _v216 int32 // %t176 - var _v217 int32 // %t177 - var _v218 int32 // %t178 - var _v219 int32 // %t179 - var _v220 int32 // %t180 - var _v222 int32 // %t182 - var _v223 int32 // %t183 - var _v225 int32 // %t185 - var _v226 int32 // %t186 - var _v228 int32 // %t188 - var _v229 int32 // %t189 - var _v59 int32 // %t19 - var _v230 int32 // %t190 - var _v231 int32 // %t191 - var _v233 int32 // %t193 - var _v234 int32 // %t194 - var _v235 int32 // %t195 - var _v236 int32 // %t196 - var _v237 int32 // %t197 - var _v239 int32 // %t199 - var _v60 int32 // %t20 - var _v241 int32 // %t201 - var _v242 int32 // %t202 - var _v243 int32 // %t203 - var _v244 int32 // %t204 - var _v245 int32 // %t205 - var _v246 int32 // %t206 - var _v247 int32 // %t207 - var _v248 int32 // %t208 - var _v249 int32 // %t209 - var _v61 int32 // %t21 - var _v250 int32 // %t210 - var _v252 int32 // %t212 - var _v257 int32 // %t217 - var _v258 int32 // %t218 - var _v259 int32 // %t219 - var _v260 int32 // %t220 - var _v261 int32 // %t221 - var _v262 int32 // %t222 - var _v263 int32 // %t223 - var _v264 int32 // %t224 - var _v265 int32 // %t225 - var _v266 int32 // %t226 - var _v267 int32 // %t227 - var _v269 int32 // %t229 - var _v63 int32 // %t23 - var _v271 int32 // %t231 - var _v274 int32 // %t234 - var _v275 int32 // %t235 - var _v276 int32 // %t236 - var _v278 int32 // %t238 - var _v64 int32 // %t24 - var _v280 int32 // %t240 - var _v282 int32 // %t242 - var _v285 int32 // %t245 - var _v286 int32 // %t246 - var _v287 int32 // %t247 - var _v65 int32 // %t25 - var _v292 int32 // %t252 - var _v294 int32 // %t254 - var _v297 int32 // %t257 - var _v299 int32 // %t259 - var _v66 int32 // %t26 - var _v300 int32 // %t260 - var _v302 int32 // %t262 - var _v304 int32 // %t264 - var _v307 int32 // %t267 - var _v309 int32 // %t269 - var _v67 int32 // %t27 - var _v311 int32 // %t271 - var _v313 int32 // %t273 - var _v315 int32 // %t275 - var _v316 int32 // %t276 - var _v317 int32 // %t277 - var _v318 int32 // %t278 - var _v68 int32 // %t28 - var _v320 int32 // %t280 - var _v322 int32 // %t282 - var _v325 int32 // %t285 - var _v326 int32 // %t286 - var _v69 int32 // %t29 - var _v333 int32 // %t293 - var _v335 int32 // %t295 - var _v336 int32 // %t296 - var _v339 int32 // %t299 - var _v70 int32 // %t30 - var _v341 int32 // %t301 - var _v343 int32 // %t303 - var _v344 int32 // %t304 - var _v346 int32 // %t306 - var _v347 int32 // %t307 - var _v348 int32 // %t308 - var _v71 int32 // %t31 - var _v350 int32 // %t310 - var _v351 int32 // %t311 - var _v352 int32 // %t312 - var _v353 int32 // %t313 - var _v354 int32 // %t314 - var _v355 int32 // %t315 - var _v356 int32 // %t316 - var _v357 int32 // %t317 - var _v358 int32 // %t318 - var _v359 int32 // %t319 - var _v72 int32 // %t32 - var _v360 int32 // %t320 - var _v361 int32 // %t321 - var _v362 int32 // %t322 - var _v363 int32 // %t323 - var _v367 int32 // %t327 - var _v368 int32 // %t328 - var _v369 int32 // %t329 - var _v73 int32 // %t33 - var _v370 int32 // %t330 - var _v371 int32 // %t331 - var _v372 int32 // %t332 - var _v373 int32 // %t333 - var _v374 int32 // %t334 - var _v375 int32 // %t335 - var _v376 int32 // %t336 - var _v377 int32 // %t337 - var _v378 int32 // %t338 - var _v74 int32 // %t34 - var _v380 int32 // %t340 - var _v381 int32 // %t341 - var _v382 int32 // %t342 - var _v383 int32 // %t343 - var _v384 int32 // %t344 - var _v385 int32 // %t345 - var _v386 int32 // %t346 - var _v387 int32 // %t347 - var _v388 int32 // %t348 - var _v389 int32 // %t349 - var _v75 int32 // %t35 - var _v390 int32 // %t350 - var _v391 int32 // %t351 - var _v393 int32 // %t353 - var _v394 int32 // %t354 - var _v395 int32 // %t355 - var _v397 int32 // %t357 - var _v399 int32 // %t359 - var _v76 int32 // %t36 - var _v400 int32 // %t360 - var _v401 int32 // %t361 - var _v403 int32 // %t363 - var _v404 int32 // %t364 - var _v405 int32 // %t365 - var _v406 int32 // %t366 - var _v407 int32 // %t367 - var _v410 int32 // %t370 - var _v411 int32 // %t371 - var _v412 int32 // %t372 - var _v415 int32 // %t375 - var _v417 int32 // %t377 - var _v420 int32 // %t380 - var _v422 int32 // %t382 - var _v423 int32 // %t383 - var _v425 int32 // %t385 - var _v426 int32 // %t386 - var _v430 int32 // %t390 - var _v431 int32 // %t391 - var _v432 int32 // %t392 - var _v434 int32 // %t394 - var _v437 int32 // %t397 - var _v438 int32 // %t398 - var _v439 int32 // %t399 - var _v80 int32 // %t40 - var _v440 int32 // %t400 - var _v441 int32 // %t401 - var _v442 int32 // %t402 - var _v444 int32 // %t404 - var _v445 int32 // %t405 - var _v446 int32 // %t406 - var _v447 int32 // %t407 - var _v448 int32 // %t408 - var _v449 int32 // %t409 - var _v81 int32 // %t41 - var _v450 int32 // %t410 - var _v451 int32 // %t411 - var _v452 int32 // %t412 - var _v453 int32 // %t413 - var _v454 int32 // %t414 - var _v455 int32 // %t415 - var _v456 int32 // %t416 - var _v457 int32 // %t417 - var _v461 int32 // %t421 - var _v462 int32 // %t422 - var _v463 int32 // %t423 - var _v464 int32 // %t424 - var _v465 int32 // %t425 - var _v466 int32 // %t426 - var _v467 int32 // %t427 - var _v468 int32 // %t428 - var _v469 int32 // %t429 - var _v83 int32 // %t43 - var _v471 int32 // %t431 - var _v472 int32 // %t432 - var _v473 int32 // %t433 - var _v475 int32 // %t435 - var _v476 int32 // %t436 - var _v477 int32 // %t437 - var _v478 int32 // %t438 - var _v479 int32 // %t439 - var _v84 int32 // %t44 - var _v480 int32 // %t440 - var _v481 int32 // %t441 - var _v482 int32 // %t442 - var _v483 int32 // %t443 - var _v485 int32 // %t445 - var _v486 int32 // %t446 - var _v487 int32 // %t447 - var _v489 int32 // %t449 - var _v491 int32 // %t451 - var _v492 int32 // %t452 - var _v493 int32 // %t453 - var _v494 int32 // %t454 - var _v495 int32 // %t455 - var _v498 int32 // %t458 - var _v499 int32 // %t459 - var _v86 int32 // %t46 - var _v500 int32 // %t460 - var _v503 int32 // %t463 - var _v505 int32 // %t465 - var _v507 int32 // %t467 - var _v508 int32 // %t468 - var _v509 int32 // %t469 - var _v87 int32 // %t47 - var _v512 int32 // %t472 - var _v514 int32 // %t474 - var _v519 int32 // %t479 - var _v520 int32 // %t480 - var _v523 int32 // %t483 - var _v524 int32 // %t484 - var _v525 int32 // %t485 - var _v526 int32 // %t486 - var _v528 int32 // %t488 - var _v529 int32 // %t489 - var _v89 int32 // %t49 - var _v531 int32 // %t491 - var _v533 int32 // %t493 - var _v534 int32 // %t494 - var _v535 int32 // %t495 - var _v537 int32 // %t497 - var _v538 int32 // %t498 - var _v539 int32 // %t499 - var _v45 int32 // %t5 - var _v90 int32 // %t50 - var _v541 int32 // %t501 - var _v542 int32 // %t502 - var _v543 int32 // %t503 - var _v545 int32 // %t505 - var _v546 int32 // %t506 - var _v547 int32 // %t507 - var _v548 int32 // %t508 - var _v549 int32 // %t509 - var _v91 int32 // %t51 - var _v550 int32 // %t510 - var _v551 int32 // %t511 - var _v553 int32 // %t513 - var _v555 int32 // %t515 - var _v557 int32 // %t517 - var _v558 int32 // %t518 - var _v559 int32 // %t519 - var _v560 int32 // %t520 - var _v561 int32 // %t521 - var _v562 int32 // %t522 - var _v563 int32 // %t523 - var _v564 int32 // %t524 - var _v567 int32 // %t527 - var _v569 int32 // %t529 - var _v93 int32 // %t53 - var _v572 int32 // %t532 - var _v573 int32 // %t533 - var _v574 int32 // %t534 - var _v577 int32 // %t537 - var _v579 int32 // %t539 - var _v94 int32 // %t54 - var _v580 int32 // %t540 - var _v583 int32 // %t543 - var _v585 int32 // %t545 - var _v587 int32 // %t547 - var _v588 int32 // %t548 - var _v589 int32 // %t549 - var _v95 int32 // %t55 - var _v590 int32 // %t550 - var _v591 int32 // %t551 - var _v592 int32 // %t552 - var _v593 int32 // %t553 - var _v594 int32 // %t554 - var _v596 int32 // %t556 - var _v597 int32 // %t557 - var _v598 int32 // %t558 - var _v599 int32 // %t559 - var _v96 int32 // %t56 - var _v600 int32 // %t560 - var _v601 int32 // %t561 - var _v602 int32 // %t562 - var _v603 int32 // %t563 - var _v604 int32 // %t564 - var _v608 int32 // %t568 - var _v609 int32 // %t569 - var _v97 int32 // %t57 - var _v610 int32 // %t570 - var _v611 int32 // %t571 - var _v612 int32 // %t572 - var _v614 int32 // %t574 - var _v615 int32 // %t575 - var _v616 int32 // %t576 - var _v618 int32 // %t578 - var _v619 int32 // %t579 - var _v98 int32 // %t58 - var _v620 int32 // %t580 - var _v621 int32 // %t581 - var _v624 int32 // %t584 - var _v626 int32 // %t586 - var _v628 int32 // %t588 - var _v629 int32 // %t589 - var _v99 int32 // %t59 - var _v630 int32 // %t590 - var _v631 int32 // %t591 - var _v632 int32 // %t592 - var _v633 int32 // %t593 - var _v634 int32 // %t594 - var _v635 int32 // %t595 - var _v637 int32 // %t597 - var _v638 int32 // %t598 - var _v639 int32 // %t599 - var _v100 int32 // %t60 - var _v640 int32 // %t600 - var _v641 int32 // %t601 - var _v642 int32 // %t602 - var _v643 int32 // %t603 - var _v644 int32 // %t604 - var _v645 int32 // %t605 - var _v649 int32 // %t609 - var _v650 int32 // %t610 - var _v651 int32 // %t611 - var _v652 int32 // %t612 - var _v653 int32 // %t613 - var _v655 int32 // %t615 - var _v656 int32 // %t616 - var _v657 int32 // %t617 - var _v659 int32 // %t619 - var _v102 int32 // %t62 - var _v660 int32 // %t620 - var _v661 int32 // %t621 - var _v662 int32 // %t622 - var _v663 int32 // %t623 - var _v664 int32 // %t624 - var _v665 int32 // %t625 - var _v666 int32 // %t626 - var _v667 int32 // %t627 - var _v668 int32 // %t628 - var _v103 int32 // %t63 - var _v670 int32 // %t630 - var _v671 int32 // %t631 - var _v673 int32 // %t633 - var _v675 int32 // %t635 - var _v676 int32 // %t636 - var _v678 int32 // %t638 - var _v679 int32 // %t639 - var _v680 int32 // %t640 - var _v681 int32 // %t641 - var _v683 int32 // %t643 - var _v684 int32 // %t644 - var _v685 int32 // %t645 - var _v686 int32 // %t646 - var _v687 int32 // %t647 - var _v688 int32 // %t648 - var _v105 int32 // %t65 - var _v692 int32 // %t652 - var _v694 int32 // %t654 - var _v696 int32 // %t656 - var _v697 int32 // %t657 - var _v698 int32 // %t658 - var _v699 int32 // %t659 - var _v106 int32 // %t66 - var _v701 int32 // %t661 - var _v702 int32 // %t662 - var _v703 int32 // %t663 - var _v704 int32 // %t664 - var _v705 int32 // %t665 - var _v708 int32 // %t668 - var _v710 int32 // %t670 - var _v713 int32 // %t673 - var _v715 int32 // %t675 - var _v718 int32 // %t678 - var _v719 int32 // %t679 - var _v108 int32 // %t68 - var _v723 int32 // %t683 - var _v724 int32 // %t684 - var _v725 int32 // %t685 - var _v727 int32 // %t687 - var _v728 int32 // %t688 - var _v109 int32 // %t69 - var _v731 int32 // %t691 - var _v733 int32 // %t693 - var _v736 int32 // %t696 - var _v737 int32 // %t697 - var _v738 int32 // %t698 - var _v110 int32 // %t70 - var _v740 int32 // %t700 - var _v744 int32 // %t704 - var _v745 int32 // %t705 - var _v747 int32 // %t707 - var _v751 int32 // %t711 - var _v757 int32 // %t717 - var _v758 int32 // %t718 - var _v759 int32 // %t719 - var _v112 int32 // %t72 - var _v763 int32 // %t723 - var _v765 int32 // %t725 - var _v768 int32 // %t728 - var _v769 int32 // %t729 - var _v113 int32 // %t73 - var _v773 int32 // %t733 - var _v774 int32 // %t734 - var _v776 int32 // %t736 - var _v777 int32 // %t737 - var _v778 int32 // %t738 - var _v779 int32 // %t739 - var _v114 int32 // %t74 - var _v780 int32 // %t740 - var _v781 int32 // %t741 - var _v782 int32 // %t742 - var _v783 int32 // %t743 - var _v785 int32 // %t745 - var _v787 int32 // %t747 - var _v789 int32 // %t749 - var _v791 int32 // %t751 - var _v793 int32 // %t753 - var _v794 int32 // %t754 - var _v795 int32 // %t755 - var _v796 int32 // %t756 - var _v797 int32 // %t757 - var _v798 int32 // %t758 - var _v799 int32 // %t759 - var _v116 int32 // %t76 - var _v801 int32 // %t761 - var _v806 int32 // %t766 - var _v807 int32 // %t767 - var _v808 int32 // %t768 - var _v117 int32 // %t77 - var _v811 int32 // %t771 - var _v812 int32 // %t772 - var _v813 int32 // %t773 - var _v814 int32 // %t774 - var _v815 int32 // %t775 - var _v817 int32 // %t777 - var _v818 int32 // %t778 - var _v819 int32 // %t779 - var _v820 int32 // %t780 - var _v821 int32 // %t781 - var _v823 int32 // %t783 - var _v824 int32 // %t784 - var _v825 int32 // %t785 - var _v826 int32 // %t786 - var _v827 int32 // %t787 - var _v828 int32 // %t788 - var _v829 int32 // %t789 - var _v119 int32 // %t79 - var _v830 int32 // %t790 - var _v831 int32 // %t791 - var _v832 int32 // %t792 - var _v833 int32 // %t793 - var _v834 int32 // %t794 - var _v835 int32 // %t795 - var _v836 int32 // %t796 - var _v837 int32 // %t797 - var _v838 int32 // %t798 - var _v839 int32 // %t799 - var _v120 int32 // %t80 - var _v840 int32 // %t800 - var _v841 int32 // %t801 - var _v844 int32 // %t804 - var _v846 int32 // %t806 - var _v849 int32 // %t809 - var _v121 int32 // %t81 - var _v851 int32 // %t811 - var _v852 int32 // %t812 - var _v854 int32 // %t814 - var _v858 int32 // %t818 - var _v859 int32 // %t819 - var _v122 int32 // %t82 - var _v860 int32 // %t820 - var _v862 int32 // %t822 - var _v866 int32 // %t826 - var _v869 int32 // %t829 - var _v123 int32 // %t83 - var _v870 int32 // %t830 - var _v871 int32 // %t831 - var _v872 int32 // %t832 - var _v873 int32 // %t833 - var _v874 int32 // %t834 - var _v875 int32 // %t835 - var _v877 int32 // %t837 - var _v878 int32 // %t838 - var _v879 int32 // %t839 - var _v124 int32 // %t84 - var _v881 int32 // %t841 - var _v882 int32 // %t842 - var _v883 int32 // %t843 - var _v884 int32 // %t844 - var _v885 int32 // %t845 - var _v886 int32 // %t846 - var _v125 int32 // %t85 - var _v126 int32 // %t86 - var _v127 int32 // %t87 - var _v49 int32 // %t9 - var _v131 int32 // %t91 - var _v132 int32 // %t92 - var _v133 int32 // %t93 - var _v134 int32 // %t94 - var _v135 int32 // %t95 - var _v136 int32 // %t96 - var _v137 int32 // %t97 - var _v138 int32 // %t98 - var _v139 int32 // %t99 - var _v10 = int32(bp + 380) // %v10 - var _v11 = int32(bp + 384) // %v11 - var _v12 = int32(bp + 388) // %v12 - var _v13 = int32(bp + 392) // %v13 - var _v14 = int32(bp + 396) // %v14 - var _v15 = int32(bp + 408) // %v15 - var _v16 = int32(bp + 440) // %v16 - var _v17 = int32(bp + 1440) // %v17 - var _v18 = int32(bp + 1640) // %v18 - var _v19 = int32(bp + 1644) // %v19 - var _v20 = int32(bp + 1648) // %v20 - var _v21 = int32(bp + 1652) // %v21 - var _v22 = int32(bp + 1656) // %v22 - var _v23 = int32(bp + 1660) // %v23 - var _v24 = int32(bp + 1664) // %v24 - var _v25 = int32(bp + 1668) // %v25 - var _v26 = int32(bp + 1672) // %v26 - var _v27 = int32(bp + 1676) // %v27 - var _v28 = int32(bp + 1680) // %v28 - var _v29 = int32(bp + 1684) // %v29 - var _v30 = int32(bp + 1688) // %v30 - var _v31 = int32(bp + 1692) // %v31 - var _v32 = int32(bp + 1696) // %v32 - var _v33 = int32(bp + 1700) // %v33 - var _v34 = int32(bp + 1704) // %v34 - var _v35 = int32(bp + 1708) // %v35 - var _v36 = int32(bp + 1712) // %v36 - var _v37 = int32(bp + 1716) // %v37 - var _v38 = int32(bp + 1720) // %v38 - var _v39 = int32(bp + 1724) // %v39 - var _v40 = int32(bp + 1728) // %v40 - var _v5 = int32(bp + 360) // %v5 - var _v6 = int32(bp + 364) // %v6 - var _v7 = int32(bp + 368) // %v7 - var _v8 = int32(bp + 372) // %v8 - var _v9 = int32(bp + 376) // %v9 - *(*int32)(unsafe.Pointer(uintptr(_v5))) = 1 - *(*int32)(unsafe.Pointer(uintptr(_v6))) = 1 - *(*int32)(unsafe.Pointer(uintptr(_v7))) = 0 - *(*int32)(unsafe.Pointer(uintptr(_v8))) = 0 - _v45 = int32(int32(_v14) + int32(0)) - _ = crt.Xmemset(t, _v45, 0, 12) - _v49 = int32(int32(_v14) + int32(0)) - s_stringReset(t, _v49) - goto l2 -l2: - _v50 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v51 = int32(_v50 * 1) - _v53 = int32(int32(_v3) + int32(_v51)) - _v54 = int32(*(*int8)(unsafe.Pointer(uintptr(_v53)))) - _v55 = int32(int8(_v54)) - _v56 = int32(int32(_v10) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v56))) = _v55 - _v57 = *(*int32)(unsafe.Pointer(uintptr(_v56))) - _v59 = crt.Bool32(int32(_v57) != int32(0)) - if _v59 != 0 { - goto l3 - } - goto l242 -l3: - _v60 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v61 = int32(int32(_v6) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v61))) = _v60 - _v63 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v64 = int32(int32(_v3) + int32(_v63)) - _v65 = int32(int32(_v5) + int32(0)) - _v66 = s_tokenLength(t, _v64, _v65) - _v67 = int32(int32(_v12) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v67))) = _v66 - _v68 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _v69 = int32(int32(_v68) & int32(255)) - _v70 = int32(int32(uint8(_v69))) - _v71 = int32(_v70 * 2) - _v72 = crt.X__ctype_b_loc(t) - _v73 = *(*int32)(unsafe.Pointer(uintptr(_v72))) - _v74 = int32(int32(_v73) + int32(_v71)) - _v75 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v74)))) - _v76 = int32(uint16(_v75)) - _v80 = int32(int32(_v76) & int32(8192)) - goto l4 -l4: - if _v80 != 0 { - goto l246 - } - goto l5 -l246: - _v95 = 1 - goto l13 -l5: - _v81 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _v83 = crt.Bool32(int32(_v81) == int32(47)) - goto l6 -l6: - if _v83 != 0 { - goto l7 - } - goto l247 -l247: - _v94 = 0 - goto l10 -l7: - _v84 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v86 = int32(int32(_v84) + int32(1)) - _v87 = int32(_v86 * 1) - _v89 = int32(int32(_v3) + int32(_v87)) - _v90 = int32(*(*int8)(unsafe.Pointer(uintptr(_v89)))) - _v91 = int32(int8(_v90)) - _v93 = crt.Bool32(int32(_v91) == int32(42)) - goto l8 -l8: - if _v93 != 0 { - goto l9 - } - goto l248 -l248: - _v94 = 0 - goto l10 -l9: - _v94 = 1 - goto l10 -l10: - goto l11 -l11: - if _v94 != 0 { - goto l249 - } - goto l12 -l249: - _v95 = 1 - goto l13 -l12: - _v95 = 0 - goto l13 -l13: - if _v95 != 0 { - goto l14 - } - goto l16 -l14: - _v96 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v97 = int32(int32(_v7) + int32(0)) - _v98 = *(*int32)(unsafe.Pointer(uintptr(_v97))) - _v99 = int32(int32(_v98) + int32(_v96)) - *(*int32)(unsafe.Pointer(uintptr(_v97))) = _v99 - goto l2 -l16: - _v100 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _v102 = crt.Bool32(int32(_v100) != int32(45)) - goto l17 -l17: - if _v102 != 0 { - goto l250 - } - goto l18 -l250: - _v113 = 1 - goto l21 -l18: - _v103 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v105 = int32(int32(_v103) + int32(1)) - _v106 = int32(_v105 * 1) - _v108 = int32(int32(_v3) + int32(_v106)) - _v109 = int32(*(*int8)(unsafe.Pointer(uintptr(_v108)))) - _v110 = int32(int8(_v109)) - _v112 = crt.Bool32(int32(_v110) != int32(45)) - goto l19 -l19: - if _v112 != 0 { - goto l251 - } - goto l20 -l251: - _v113 = 1 - goto l21 -l20: - _v113 = 0 - goto l21 -l21: - goto l22 -l22: - if _v113 != 0 { - goto l252 - } - goto l23 -l252: - _v133 = 1 - goto l29 -l23: - _v114 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v116 = int32(int32(_v114) + int32(2)) - _v117 = int32(_v116 * 1) - _v119 = int32(int32(_v3) + int32(_v117)) - _v120 = int32(*(*int8)(unsafe.Pointer(uintptr(_v119)))) - _v121 = int32(int8(_v120)) - _v122 = int32(_v121 * 2) - _v123 = crt.X__ctype_b_loc(t) - _v124 = *(*int32)(unsafe.Pointer(uintptr(_v123))) - _v125 = int32(int32(_v124) + int32(_v122)) - _v126 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v125)))) - _v127 = int32(uint16(_v126)) - _v131 = int32(int32(_v127) & int32(1024)) - goto l24 -l24: - if _v131 != 0 { - goto l25 - } - goto l253 -l253: - _v132 = 1 - goto l26 -l25: - _v132 = 0 - goto l26 -l26: - goto l27 -l27: - if _v132 != 0 { - goto l254 - } - goto l28 -l254: - _v133 = 1 - goto l29 -l28: - _v133 = 0 - goto l29 -l29: - if _v133 != 0 { - goto l30 - } - goto l32 -l30: - _v134 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v135 = int32(int32(_v7) + int32(0)) - _v136 = *(*int32)(unsafe.Pointer(uintptr(_v135))) - _v137 = int32(int32(_v136) + int32(_v134)) - *(*int32)(unsafe.Pointer(uintptr(_v135))) = _v137 - goto l2 -l32: - _v138 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v139 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v140 = crt.Bool32(int32(_v138) > int32(_v139)) - if _v140 != 0 { - goto l33 - } - goto l34 -l33: - _v142 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v143 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v144 = int32(int32(_v142) - int32(_v143)) - _v146 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v147 = int32(int32(_v3) + int32(_v146)) - *(*int32)(unsafe.Pointer(bp + 0)) = _v144 - - *(*int32)(unsafe.Pointer(bp + 8)) = _v147 - - _v148 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__98))), bp+0) - *(*int32)(unsafe.Pointer(uintptr(_v18))) = _v148 - _v149 = int32(int32(_v14) + int32(0)) - _v150 = *(*int32)(unsafe.Pointer(uintptr(_v18))) - - _ = s_evalSql(t, _v149, _v150, 0) - _v152 = *(*int32)(unsafe.Pointer(uintptr(_v18))) - Xsqlite3_free(t, _v152) - _v153 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v154 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v155 = int32(int32(_v153) + int32(_v154)) - _v156 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v156))) = _v155 - goto l34 -l34: - _v159 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - _v161 = crt.Bool32(int32(_v159) >= int32(2)) - if _v161 != 0 { - goto l35 - } - goto l36 -l35: - _v163 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v165 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v166 = int32(int32(_v3) + int32(_v165)) - *(*int32)(unsafe.Pointer(bp + 16)) = _v163 - - *(*int32)(unsafe.Pointer(bp + 24)) = _v166 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__98))), bp+16) - goto l36 -l36: - _v168 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v169 = int32(int32(_v3) + int32(_v168)) - _v171 = int32(int32(_v169) + int32(2)) - _v172 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v174 = int32(int32(_v172) - int32(2)) - _v177 = s_extractToken(t, _v171, _v174, _v15, 30) - _v178 = int32(int32(_v9) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v178))) = _v177 - _v180 = int32(int32(_v13) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v180))) = 0 - goto l37 -l37: - _v181 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v182 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v184 = int32(int32(_v182) - int32(2)) - _v185 = crt.Bool32(int32(_v181) < int32(_v184)) - goto l38 -l38: - if _v185 != 0 { - goto l39 - } - goto l255 -l255: - _v189 = 0 - goto l42 -l39: - _v186 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v188 = crt.Bool32(int32(_v186) < int32(2)) - goto l40 -l40: - if _v188 != 0 { - goto l41 - } - goto l256 -l256: - _v189 = 0 - goto l42 -l41: - _v189 = 1 - goto l42 -l42: - if _v189 != 0 { - goto l43 - } - goto l257 -l257: - goto l56 -l43: - goto l44 -l44: - _v190 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v191 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v193 = int32(int32(_v191) - int32(2)) - _v194 = crt.Bool32(int32(_v190) < int32(_v193)) - goto l45 -l45: - if _v194 != 0 { - goto l46 - } - goto l258 -l258: - _v215 = 0 - goto l49 -l46: - _v195 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v197 = int32(int32(_v195) + int32(2)) - _v198 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v199 = int32(int32(_v197) + int32(_v198)) - _v200 = int32(_v199 * 1) - _v202 = int32(int32(_v3) + int32(_v200)) - _v203 = int32(*(*int8)(unsafe.Pointer(uintptr(_v202)))) - _v204 = int32(int32(uint8(_v203))) - _v205 = int32(_v204 * 2) - _v206 = crt.X__ctype_b_loc(t) - _v207 = *(*int32)(unsafe.Pointer(uintptr(_v206))) - _v208 = int32(int32(_v207) + int32(_v205)) - _v209 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v208)))) - _v210 = int32(uint16(_v209)) - _v214 = int32(int32(_v210) & int32(8192)) - goto l47 -l47: - if _v214 != 0 { - goto l48 - } - goto l259 -l259: - _v215 = 0 - goto l49 -l48: - _v215 = 1 - goto l49 -l49: - if _v215 != 0 { - goto l50 - } - goto l51 -l50: - _v216 = int32(int32(_v9) + int32(0)) - _v217 = *(*int32)(unsafe.Pointer(uintptr(_v216))) - _v218 = int32(int32(_v217) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v216))) = _v218 - goto l44 -l51: - _v219 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v220 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v222 = int32(int32(_v220) - int32(2)) - _v223 = crt.Bool32(int32(_v219) >= int32(_v222)) - if _v223 != 0 { - goto l52 - } - goto l54 -l52: - goto l56 -l54: - _v225 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v226 = int32(int32(_v3) + int32(_v225)) - _v228 = int32(int32(_v226) + int32(2)) - _v229 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v230 = int32(int32(_v228) + int32(_v229)) - _v231 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v233 = int32(int32(_v231) - int32(2)) - _v234 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v235 = int32(int32(_v233) - int32(_v234)) - _v236 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v237 = int32(_v236 * 100) - _v239 = int32(int32(_v17) + int32(_v237)) - _v241 = s_extractToken(t, _v230, _v235, _v239, 100) - _v242 = int32(int32(_v9) + int32(0)) - _v243 = *(*int32)(unsafe.Pointer(uintptr(_v242))) - _v244 = int32(int32(_v243) + int32(_v241)) - *(*int32)(unsafe.Pointer(uintptr(_v242))) = _v244 - goto l55 -l55: - _v245 = int32(int32(_v13) + int32(0)) - _v246 = *(*int32)(unsafe.Pointer(uintptr(_v245))) - _v247 = int32(int32(_v246) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v245))) = _v247 - goto l37 -l56: - _v248 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v249 = int32(int32(_v11) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v249))) = _v248 - goto l57 -l57: - _v250 = *(*int32)(unsafe.Pointer(uintptr(_v11))) - _v252 = crt.Bool32(int32(_v250) < int32(2)) - if _v252 != 0 { - goto l58 - } - goto l60 -l58: - _v257 = int32(int32(_v11) + int32(0)) - _v258 = *(*int32)(unsafe.Pointer(uintptr(_v257))) - _v259 = int32(int32(_v258) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v257))) = _v259 - _v260 = int32(_v258 * 100) - _v261 = int32(_v17) - _v262 = int32(int32(_v261) + int32(_v260)) - _v263 = int32(int32(_v262) + int32(0)) - *(*int8)(unsafe.Pointer(uintptr(_v263))) = 0 - goto l59 -l59: - _v264 = int32(int32(_v11) + int32(0)) - _v265 = *(*int32)(unsafe.Pointer(uintptr(_v264))) - _v266 = int32(int32(_v265) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v264))) = _v266 - goto l57 -l60: - _v267 = int32(_v15) - _v269 = crt.Xstrcmp(t, _v267, int32(uintptr(unsafe.Pointer(&s__99)))) - _v271 = crt.Bool32(int32(_v269) == int32(0)) - if _v271 != 0 { - goto l61 - } - goto l62 -l61: - _v274 = int32(_v17) - _v275 = int32(int32(_v274) + int32(0)) - _v276 = crt.Xatoi(t, _v275) - _ = Xsqlite3_sleep(t, _v276) - goto l241 -l62: - _v278 = int32(_v15) - _v280 = crt.Xstrcmp(t, _v278, int32(uintptr(unsafe.Pointer(&s__100)))) - _v282 = crt.Bool32(int32(_v280) == int32(0)) - if _v282 != 0 { - goto l63 - } - goto l66 -l63: - _v285 = int32(_v17) - _v286 = int32(int32(_v285) + int32(0)) - _v287 = crt.Xatoi(t, _v286) - *(*int32)(unsafe.Pointer(uintptr(_v19))) = _v287 - _ = s_finishScript(t, _v1, _v2, 1) - _v292 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - _v294 = crt.Bool32(int32(_v292) == int32(0)) - if _v294 != 0 { - goto l64 - } - goto l65 -l64: - _v297 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _ = Xsqlite3_close(t, _v297) - goto l65 -l65: - _v299 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - crt.Xexit(t, _v299) - goto l240 -l66: - _v300 = int32(_v15) - _v302 = crt.Xstrcmp(t, _v300, int32(uintptr(unsafe.Pointer(&s__101)))) - _v304 = crt.Bool32(int32(_v302) == int32(0)) - if _v304 != 0 { - goto l67 - } - goto l70 -l67: - _v307 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - _v309 = crt.Bool32(int32(_v307) == int32(1)) - if _v309 != 0 { - goto l68 - } - goto l69 -l68: - _v311 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v313 = int32(int32(_v311) - int32(1)) - _v315 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v316 = int32(int32(_v3) + int32(_v315)) - *(*int32)(unsafe.Pointer(bp + 32)) = _v313 - - *(*int32)(unsafe.Pointer(bp + 40)) = _v316 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__98))), bp+32) - goto l69 -l69: - _v317 = int32(int32(_v14) + int32(0)) - s_stringReset(t, _v317) - goto l239 -l70: - _v318 = int32(_v15) - _v320 = crt.Xstrcmp(t, _v318, int32(uintptr(unsafe.Pointer(&s__102)))) - _v322 = crt.Bool32(int32(_v320) == int32(0)) - goto l71 -l71: - if _v322 != 0 { - goto l72 - } - goto l260 -l260: - _v326 = 0 - goto l75 -l72: - _v325 = crt.Bool32(int32(_v1) > int32(0)) - goto l73 -l73: - if _v325 != 0 { - goto l74 - } - goto l261 -l261: - _v326 = 0 - goto l75 -l74: - _v326 = 1 - goto l75 -l75: - if _v326 != 0 { - goto l76 - } - goto l77 -l76: - _ = s_finishScript(t, _v1, _v2, 1) - goto l238 -l77: - _v333 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__103)))) - _v335 = crt.Bool32(int32(_v333) == int32(0)) - if _v335 != 0 { - goto l78 - } - goto l79 -l78: - _v336 = int32(int32(_v14) + int32(0)) - s_stringReset(t, _v336) - goto l237 -l79: - _v339 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__104)))) - _v341 = crt.Bool32(int32(_v339) == int32(0)) - if _v341 != 0 { - goto l80 - } - goto l97 -l80: - _v343 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v344 = int32(int32(_v3) + int32(_v343)) - *(*int32)(unsafe.Pointer(uintptr(_v21))) = _v344 - _v346 = int32(int32(_v20) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v346))) = 7 - goto l81 -l81: - _v347 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v348 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v350 = int32(int32(_v348) - int32(1)) - _v351 = crt.Bool32(int32(_v347) < int32(_v350)) - goto l82 -l82: - if _v351 != 0 { - goto l83 - } - goto l262 -l262: - _v368 = 0 - goto l86 -l83: - _v352 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v353 = int32(_v352 * 1) - _v354 = *(*int32)(unsafe.Pointer(uintptr(_v21))) - _v355 = int32(int32(_v354) + int32(_v353)) - _v356 = int32(*(*int8)(unsafe.Pointer(uintptr(_v355)))) - _v357 = int32(int32(uint8(_v356))) - _v358 = int32(_v357 * 2) - _v359 = crt.X__ctype_b_loc(t) - _v360 = *(*int32)(unsafe.Pointer(uintptr(_v359))) - _v361 = int32(int32(_v360) + int32(_v358)) - _v362 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v361)))) - _v363 = int32(uint16(_v362)) - _v367 = int32(int32(_v363) & int32(8192)) - goto l84 -l84: - if _v367 != 0 { - goto l85 - } - goto l263 -l263: - _v368 = 0 - goto l86 -l85: - _v368 = 1 - goto l86 -l86: - if _v368 != 0 { - goto l87 - } - goto l89 -l87: - goto l88 -l88: - _v369 = int32(int32(_v20) + int32(0)) - _v370 = *(*int32)(unsafe.Pointer(uintptr(_v369))) - _v371 = int32(int32(_v370) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v369))) = _v371 - goto l81 -l89: - _v372 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v373 = int32(int32(_v21) + int32(0)) - _v374 = *(*int32)(unsafe.Pointer(uintptr(_v373))) - _v375 = int32(int32(_v374) + int32(_v372)) - *(*int32)(unsafe.Pointer(uintptr(_v373))) = _v375 - _v376 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v377 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v378 = int32(int32(_v376) - int32(_v377)) - _v380 = int32(int32(_v378) - int32(1)) - _v381 = int32(int32(_v14) + int32(0)) - _v382 = int32(int32(_v381) + int32(4)) - _v383 = *(*int32)(unsafe.Pointer(uintptr(_v382))) - _v384 = crt.Bool32(int32(_v380) != int32(_v383)) - goto l90 -l90: - if _v384 != 0 { - goto l264 - } - goto l91 -l264: - _v395 = 1 - goto l94 -l91: - _v385 = int32(int32(_v14) + int32(0)) - _v386 = int32(int32(_v385) + int32(0)) - _v387 = *(*int32)(unsafe.Pointer(uintptr(_v386))) - _v388 = *(*int32)(unsafe.Pointer(uintptr(_v21))) - _v389 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v390 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v391 = int32(int32(_v389) - int32(_v390)) - _v393 = int32(int32(_v391) - int32(1)) - _v394 = crt.Xstrncmp(t, _v387, _v388, _v393) - goto l92 -l92: - if _v394 != 0 { - goto l265 - } - goto l93 -l265: - _v395 = 1 - goto l94 -l93: - _v395 = 0 - goto l94 -l94: - if _v395 != 0 { - goto l95 - } - goto l96 -l95: - _v397 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v399 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v400 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v401 = int32(int32(_v399) - int32(_v400)) - _v403 = int32(int32(_v401) - int32(1)) - _v404 = *(*int32)(unsafe.Pointer(uintptr(_v21))) - _v405 = int32(int32(_v14) + int32(0)) - _v406 = int32(int32(_v405) + int32(0)) - _v407 = *(*int32)(unsafe.Pointer(uintptr(_v406))) - *(*int32)(unsafe.Pointer(bp + 48)) = _v397 - - *(*int32)(unsafe.Pointer(bp + 56)) = _v4 - - *(*int32)(unsafe.Pointer(bp + 64)) = _v403 - - *(*int32)(unsafe.Pointer(bp + 72)) = _v404 - - *(*int32)(unsafe.Pointer(bp + 80)) = _v407 - s_errorMessage(t, int32(uintptr(unsafe.Pointer(&s__105))), bp+48) - goto l96 -l96: - _v410 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 84)) - _v411 = int32(int32(_v410) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 84)) = _v411 - _v412 = int32(int32(_v14) + int32(0)) - s_stringReset(t, _v412) - goto l236 -l97: - _v415 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__106)))) - _v417 = crt.Bool32(int32(_v415) == int32(0)) - goto l98 -l98: - if _v417 != 0 { - goto l266 - } - goto l99 -l266: - _v423 = 1 - goto l102 -l99: - _v420 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__107)))) - _v422 = crt.Bool32(int32(_v420) == int32(0)) - goto l100 -l100: - if _v422 != 0 { - goto l267 - } - goto l101 -l267: - _v423 = 1 - goto l102 -l101: - _v423 = 0 - goto l102 -l102: - if _v423 != 0 { - goto l103 - } - goto l115 -l103: - _v425 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v426 = int32(int32(_v3) + int32(_v425)) - *(*int32)(unsafe.Pointer(uintptr(_v23))) = _v426 - _v430 = int32(int32(_v15) + int32(0)) - _v431 = int32(*(*int8)(unsafe.Pointer(uintptr(_v430)))) - _v432 = int32(int8(_v431)) - _v434 = crt.Bool32(int32(_v432) == int32(103)) - *(*int32)(unsafe.Pointer(uintptr(_v25))) = _v434 - _v437 = *(*int32)(unsafe.Pointer(uintptr(_v25))) - _v438 = int32(3 * _v437) - _v439 = int32(int32(9) - int32(_v438)) - _v440 = int32(int32(_v22) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v440))) = _v439 - goto l104 -l104: - _v441 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v442 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v444 = int32(int32(_v442) - int32(1)) - _v445 = crt.Bool32(int32(_v441) < int32(_v444)) - goto l105 -l105: - if _v445 != 0 { - goto l106 - } - goto l268 -l268: - _v462 = 0 - goto l109 -l106: - _v446 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v447 = int32(_v446 * 1) - _v448 = *(*int32)(unsafe.Pointer(uintptr(_v23))) - _v449 = int32(int32(_v448) + int32(_v447)) - _v450 = int32(*(*int8)(unsafe.Pointer(uintptr(_v449)))) - _v451 = int32(int32(uint8(_v450))) - _v452 = int32(_v451 * 2) - _v453 = crt.X__ctype_b_loc(t) - _v454 = *(*int32)(unsafe.Pointer(uintptr(_v453))) - _v455 = int32(int32(_v454) + int32(_v452)) - _v456 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v455)))) - _v457 = int32(uint16(_v456)) - _v461 = int32(int32(_v457) & int32(8192)) - goto l107 -l107: - if _v461 != 0 { - goto l108 - } - goto l269 -l269: - _v462 = 0 - goto l109 -l108: - _v462 = 1 - goto l109 -l109: - if _v462 != 0 { - goto l110 - } - goto l112 -l110: - goto l111 -l111: - _v463 = int32(int32(_v22) + int32(0)) - _v464 = *(*int32)(unsafe.Pointer(uintptr(_v463))) - _v465 = int32(int32(_v464) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v463))) = _v465 - goto l104 -l112: - _v466 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v467 = int32(int32(_v23) + int32(0)) - _v468 = *(*int32)(unsafe.Pointer(uintptr(_v467))) - _v469 = int32(int32(_v468) + int32(_v466)) - *(*int32)(unsafe.Pointer(uintptr(_v467))) = _v469 - _v471 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v472 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v473 = int32(int32(_v471) - int32(_v472)) - _v475 = int32(int32(_v473) - int32(1)) - _v476 = *(*int32)(unsafe.Pointer(uintptr(_v23))) - *(*int32)(unsafe.Pointer(bp + 88)) = _v475 - - *(*int32)(unsafe.Pointer(bp + 96)) = _v476 - - _v477 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__98))), bp+88) - _v478 = int32(int32(_v24) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v478))) = _v477 - _v479 = *(*int32)(unsafe.Pointer(uintptr(_v24))) - _v480 = int32(int32(_v14) + int32(0)) - _v481 = int32(int32(_v480) + int32(0)) - _v482 = *(*int32)(unsafe.Pointer(uintptr(_v481))) - _v483 = Xsqlite3_strglob(t, _v479, _v482) - _v485 = crt.Bool32(int32(_v483) == int32(0)) - _v486 = *(*int32)(unsafe.Pointer(uintptr(_v25))) - _v487 = int32(_v485 ^ _v486) - if _v487 != 0 { - goto l113 - } - goto l114 -l113: - _v489 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v491 = *(*int32)(unsafe.Pointer(uintptr(_v24))) - _v492 = int32(int32(_v14) + int32(0)) - _v493 = int32(int32(_v492) + int32(0)) - _v494 = *(*int32)(unsafe.Pointer(uintptr(_v493))) - *(*int32)(unsafe.Pointer(bp + 104)) = _v489 - - *(*int32)(unsafe.Pointer(bp + 112)) = _v4 - - *(*int32)(unsafe.Pointer(bp + 120)) = _v491 - - *(*int32)(unsafe.Pointer(bp + 128)) = _v494 - s_errorMessage(t, int32(uintptr(unsafe.Pointer(&s__108))), bp+104) - goto l114 -l114: - _v495 = *(*int32)(unsafe.Pointer(uintptr(_v24))) - Xsqlite3_free(t, _v495) - _v498 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 84)) - _v499 = int32(int32(_v498) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 84)) = _v499 - _v500 = int32(int32(_v14) + int32(0)) - s_stringReset(t, _v500) - goto l235 -l115: - _v503 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__109)))) - _v505 = crt.Bool32(int32(_v503) == int32(0)) - if _v505 != 0 { - goto l116 - } - goto l117 -l116: - _v507 = int32(int32(_v14) + int32(0)) - _v508 = int32(int32(_v507) + int32(0)) - _v509 = *(*int32)(unsafe.Pointer(uintptr(_v508))) - *(*int32)(unsafe.Pointer(bp + 136)) = _v509 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__55))), bp+136) - goto l234 -l117: - _v512 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__110)))) - _v514 = crt.Bool32(int32(_v512) == int32(0)) - if _v514 != 0 { - goto l118 - } - goto l142 -l118: - *(*int32)(unsafe.Pointer(uintptr(_v28))) = 0 - _v519 = int32(int32(_v17) + int32(0)) - _v520 = int32(int32(_v26) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v520))) = _v519 - _v523 = *(*int32)(unsafe.Pointer(uintptr(_v26))) - _v524 = int32(int32(_v523) + int32(0)) - _v525 = int32(*(*int8)(unsafe.Pointer(uintptr(_v524)))) - _v526 = int32(int8(_v525)) - _v528 = crt.Bool32(int32(_v526) == int32(47)) - goto l119 -l119: - if _v528 != 0 { - goto l120 - } - goto l270 -l270: - _v529 = 1 - goto l121 -l120: - _v529 = 0 - goto l121 -l121: - if _v529 != 0 { - goto l122 - } - goto l271 -l271: - goto l137 -l122: - _v531 = crt.Xstrlen(t, _v4) - _v533 = int32(int32(_v531) - int32(1)) - _v534 = int32(int32(_v29) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v534))) = _v533 - goto l123 -l123: - _v535 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v537 = crt.Bool32(int32(_v535) >= int32(0)) - goto l124 -l124: - if _v537 != 0 { - goto l125 - } - goto l272 -l272: - _v547 = 0 - goto l131 -l125: - _v538 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v539 = int32(_v538 * 1) - _v541 = int32(int32(_v4) + int32(_v539)) - _v542 = int32(*(*int8)(unsafe.Pointer(uintptr(_v541)))) - _v543 = int32(int8(_v542)) - _v545 = crt.Bool32(int32(_v543) == int32(47)) - goto l126 -l126: - if _v545 != 0 { - goto l127 - } - goto l273 -l273: - _v546 = 1 - goto l128 -l127: - _v546 = 0 - goto l128 -l128: - goto l129 -l129: - if _v546 != 0 { - goto l130 - } - goto l274 -l274: - _v547 = 0 - goto l131 -l130: - _v547 = 1 - goto l131 -l131: - if _v547 != 0 { - goto l132 - } - goto l134 -l132: - goto l133 -l133: - _v548 = int32(int32(_v29) + int32(0)) - _v549 = *(*int32)(unsafe.Pointer(uintptr(_v548))) - _v550 = int32(int32(_v549) - int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v548))) = _v550 - goto l123 -l134: - _v551 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v553 = crt.Bool32(int32(_v551) > int32(0)) - if _v553 != 0 { - goto l135 - } - goto l136 -l135: - _v555 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v557 = *(*int32)(unsafe.Pointer(uintptr(_v26))) - *(*int32)(unsafe.Pointer(bp + 144)) = _v555 - - *(*int32)(unsafe.Pointer(bp + 152)) = _v4 - - *(*int32)(unsafe.Pointer(bp + 160)) = _v557 - - _v558 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__111))), bp+144) - _v559 = int32(int32(_v28) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v559))) = _v558 - _v560 = *(*int32)(unsafe.Pointer(uintptr(_v559))) - _v561 = int32(int32(_v26) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v561))) = _v560 - goto l136 -l136: - goto l137 -l137: - _v562 = *(*int32)(unsafe.Pointer(uintptr(_v26))) - _v563 = s_readFile(t, _v562) - _v564 = int32(int32(_v27) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v564))) = _v563 - _v567 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - if _v567 != 0 { - goto l138 - } - goto l139 -l138: - _v569 = *(*int32)(unsafe.Pointer(uintptr(_v26))) - *(*int32)(unsafe.Pointer(bp + 168)) = _v569 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__112))), bp+168) - goto l139 -l139: - _v572 = *(*int32)(unsafe.Pointer(uintptr(_v27))) - _v573 = *(*int32)(unsafe.Pointer(uintptr(_v26))) - s_runScript(t, 0, 0, _v572, _v573) - _v574 = *(*int32)(unsafe.Pointer(uintptr(_v27))) - Xsqlite3_free(t, _v574) - _v577 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - if _v577 != 0 { - goto l140 - } - goto l141 -l140: - _v579 = *(*int32)(unsafe.Pointer(uintptr(_v26))) - *(*int32)(unsafe.Pointer(bp + 176)) = _v579 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__113))), bp+176) - goto l141 -l141: - _v580 = *(*int32)(unsafe.Pointer(uintptr(_v28))) - Xsqlite3_free(t, _v580) - goto l233 -l142: - _v583 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__114)))) - _v585 = crt.Bool32(int32(_v583) == int32(0)) - if _v585 != 0 { - goto l143 - } - goto l153 -l143: - _v587 = int32(int32(_v30) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v587))) = 7 - goto l144 -l144: - _v588 = *(*int32)(unsafe.Pointer(uintptr(_v30))) - _v589 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v590 = crt.Bool32(int32(_v588) < int32(_v589)) - goto l145 -l145: - if _v590 != 0 { - goto l146 - } - goto l275 -l275: - _v609 = 0 - goto l149 -l146: - _v591 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v592 = *(*int32)(unsafe.Pointer(uintptr(_v30))) - _v593 = int32(int32(_v591) + int32(_v592)) - _v594 = int32(_v593 * 1) - _v596 = int32(int32(_v3) + int32(_v594)) - _v597 = int32(*(*int8)(unsafe.Pointer(uintptr(_v596)))) - _v598 = int32(int32(uint8(_v597))) - _v599 = int32(_v598 * 2) - _v600 = crt.X__ctype_b_loc(t) - _v601 = *(*int32)(unsafe.Pointer(uintptr(_v600))) - _v602 = int32(int32(_v601) + int32(_v599)) - _v603 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v602)))) - _v604 = int32(uint16(_v603)) - _v608 = int32(int32(_v604) & int32(8192)) - goto l147 -l147: - if _v608 != 0 { - goto l148 - } - goto l276 -l276: - _v609 = 0 - goto l149 -l148: - _v609 = 1 - goto l149 -l149: - if _v609 != 0 { - goto l150 - } - goto l152 -l150: - goto l151 -l151: - _v610 = int32(int32(_v30) + int32(0)) - _v611 = *(*int32)(unsafe.Pointer(uintptr(_v610))) - _v612 = int32(int32(_v611) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v610))) = _v612 - goto l144 -l152: - _v614 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v615 = *(*int32)(unsafe.Pointer(uintptr(_v30))) - _v616 = int32(int32(_v614) - int32(_v615)) - _v618 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v619 = int32(int32(_v3) + int32(_v618)) - _v620 = *(*int32)(unsafe.Pointer(uintptr(_v30))) - _v621 = int32(int32(_v619) + int32(_v620)) - *(*int32)(unsafe.Pointer(bp + 184)) = _v616 - - *(*int32)(unsafe.Pointer(bp + 192)) = _v621 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__98))), bp+184) - goto l232 -l153: - _v624 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__115)))) - _v626 = crt.Bool32(int32(_v624) == int32(0)) - if _v626 != 0 { - goto l154 - } - goto l171 -l154: - _v628 = int32(int32(_v31) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v628))) = 4 - goto l155 -l155: - _v629 = *(*int32)(unsafe.Pointer(uintptr(_v31))) - _v630 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v631 = crt.Bool32(int32(_v629) < int32(_v630)) - goto l156 -l156: - if _v631 != 0 { - goto l157 - } - goto l277 -l277: - _v650 = 0 - goto l160 -l157: - _v632 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v633 = *(*int32)(unsafe.Pointer(uintptr(_v31))) - _v634 = int32(int32(_v632) + int32(_v633)) - _v635 = int32(_v634 * 1) - _v637 = int32(int32(_v3) + int32(_v635)) - _v638 = int32(*(*int8)(unsafe.Pointer(uintptr(_v637)))) - _v639 = int32(int32(uint8(_v638))) - _v640 = int32(_v639 * 2) - _v641 = crt.X__ctype_b_loc(t) - _v642 = *(*int32)(unsafe.Pointer(uintptr(_v641))) - _v643 = int32(int32(_v642) + int32(_v640)) - _v644 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v643)))) - _v645 = int32(uint16(_v644)) - _v649 = int32(int32(_v645) & int32(8192)) - goto l158 -l158: - if _v649 != 0 { - goto l159 - } - goto l278 -l278: - _v650 = 0 - goto l160 -l159: - _v650 = 1 - goto l160 -l160: - if _v650 != 0 { - goto l161 - } - goto l163 -l161: - goto l162 -l162: - _v651 = int32(int32(_v31) + int32(0)) - _v652 = *(*int32)(unsafe.Pointer(uintptr(_v651))) - _v653 = int32(int32(_v652) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v651))) = _v653 - goto l155 -l163: - _v655 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v656 = *(*int32)(unsafe.Pointer(uintptr(_v31))) - _v657 = int32(int32(_v655) - int32(_v656)) - _v659 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v660 = int32(int32(_v3) + int32(_v659)) - _v661 = *(*int32)(unsafe.Pointer(uintptr(_v31))) - _v662 = int32(int32(_v660) + int32(_v661)) - *(*int32)(unsafe.Pointer(bp + 200)) = _v657 - - *(*int32)(unsafe.Pointer(bp + 208)) = _v662 - - _v663 = s_prepareSql(t, int32(uintptr(unsafe.Pointer(&s__116))), bp+200) - _v664 = int32(int32(_v33) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v664))) = _v663 - _v665 = *(*int32)(unsafe.Pointer(uintptr(_v33))) - _v666 = Xsqlite3_step(t, _v665) - _v667 = int32(int32(_v32) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v667))) = _v666 - _v668 = *(*int32)(unsafe.Pointer(uintptr(_v32))) - _v670 = crt.Bool32(int32(_v668) != int32(100)) - goto l164 -l164: - if _v670 != 0 { - goto l279 - } - goto l165 -l279: - _v676 = 1 - goto l168 -l165: - _v671 = *(*int32)(unsafe.Pointer(uintptr(_v33))) - _v673 = Xsqlite3_column_int(t, _v671, 0) - _v675 = crt.Bool32(int32(_v673) == int32(0)) - goto l166 -l166: - if _v675 != 0 { - goto l280 - } - goto l167 -l280: - _v676 = 1 - goto l168 -l167: - _v676 = 0 - goto l168 -l168: - if _v676 != 0 { - goto l169 - } - goto l170 -l169: - _v678 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v679 = int32(int32(_v3) + int32(_v678)) - _v680 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v681 = int32(int32(_v679) + int32(_v680)) - _v683 = int32(int32(_v5) + int32(0)) - _v684 = s_findEndif(t, _v681, 1, _v683) - _v685 = int32(int32(_v7) + int32(0)) - _v686 = *(*int32)(unsafe.Pointer(uintptr(_v685))) - _v687 = int32(int32(_v686) + int32(_v684)) - *(*int32)(unsafe.Pointer(uintptr(_v685))) = _v687 - goto l170 -l170: - _v688 = *(*int32)(unsafe.Pointer(uintptr(_v33))) - _ = Xsqlite3_finalize(t, _v688) - goto l231 -l171: - _v692 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__117)))) - _v694 = crt.Bool32(int32(_v692) == int32(0)) - if _v694 != 0 { - goto l172 - } - goto l173 -l172: - _v696 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v697 = int32(int32(_v3) + int32(_v696)) - _v698 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v699 = int32(int32(_v697) + int32(_v698)) - _v701 = int32(int32(_v5) + int32(0)) - _v702 = s_findEndif(t, _v699, 0, _v701) - _v703 = int32(int32(_v7) + int32(0)) - _v704 = *(*int32)(unsafe.Pointer(uintptr(_v703))) - _v705 = int32(int32(_v704) + int32(_v702)) - *(*int32)(unsafe.Pointer(uintptr(_v703))) = _v705 - goto l230 -l173: - _v708 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__118)))) - _v710 = crt.Bool32(int32(_v708) == int32(0)) - if _v710 != 0 { - goto l174 - } - goto l175 -l174: - goto l229 -l175: - _v713 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__119)))) - _v715 = crt.Bool32(int32(_v713) == int32(0)) - goto l176 -l176: - if _v715 != 0 { - goto l177 - } - goto l281 -l281: - _v719 = 0 - goto l180 -l177: - _v718 = crt.Bool32(int32(_v1) == int32(0)) - goto l178 -l178: - if _v718 != 0 { - goto l179 - } - goto l282 -l282: - _v719 = 0 - goto l180 -l179: - _v719 = 1 - goto l180 -l180: - if _v719 != 0 { - goto l181 - } - goto l184 -l181: - _v723 = int32(int32(_v17) + int32(0)) - _v724 = crt.Xatoi(t, _v723) - *(*int32)(unsafe.Pointer(uintptr(_v34))) = _v724 - _v725 = *(*int32)(unsafe.Pointer(uintptr(_v34))) - _v727 = crt.Bool32(int32(_v725) > int32(0)) - if _v727 != 0 { - goto l182 - } - goto l183 -l182: - _v728 = *(*int32)(unsafe.Pointer(uintptr(_v34))) - s_startClient(t, _v728) - goto l183 -l183: - goto l228 -l184: - _v731 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__120)))) - _v733 = crt.Bool32(int32(_v731) == int32(0)) - goto l185 -l185: - if _v733 != 0 { - goto l186 - } - goto l283 -l283: - _v737 = 0 - goto l189 -l186: - _v736 = crt.Bool32(int32(_v1) == int32(0)) - goto l187 -l187: - if _v736 != 0 { - goto l188 - } - goto l284 -l284: - _v737 = 0 - goto l189 -l188: - _v737 = 1 - goto l189 -l189: - if _v737 != 0 { - goto l190 - } - goto l197 -l190: - _v738 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v740 = crt.Bool32(int32(_v738) >= int32(2)) - goto l191 -l191: - if _v740 != 0 { - goto l192 - } - goto l194 -l192: - _v744 = int32(int32(_v17) + int32(100)) - _v745 = crt.Xatoi(t, _v744) - goto l193 -l193: - _v747 = _v745 - goto l196 -l194: - goto l195 -l195: - _v747 = 10000 - goto l196 -l196: - *(*int32)(unsafe.Pointer(uintptr(_v35))) = _v747 - _v751 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - *(*int32)(unsafe.Pointer(bp + 216)) = _v751 - - *(*int32)(unsafe.Pointer(bp + 224)) = _v4 - - _ = Xsqlite3_snprintf(t, 1000, _v16, int32(uintptr(unsafe.Pointer(&s__121))), bp+216) - _v757 = int32(int32(_v17) + int32(0)) - _v758 = crt.Xatoi(t, _v757) - _v759 = *(*int32)(unsafe.Pointer(uintptr(_v35))) - s_waitForClient(t, _v758, _v759, _v16) - goto l227 -l197: - _v763 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__122)))) - _v765 = crt.Bool32(int32(_v763) == int32(0)) - goto l198 -l198: - if _v765 != 0 { - goto l199 - } - goto l285 -l285: - _v769 = 0 - goto l202 -l199: - _v768 = crt.Bool32(int32(_v1) == int32(0)) - goto l200 -l200: - if _v768 != 0 { - goto l201 - } - goto l286 -l286: - _v769 = 0 - goto l202 -l201: - _v769 = 1 - goto l202 -l202: - if _v769 != 0 { - goto l203 - } - goto l210 -l203: - _v773 = int32(int32(_v17) + int32(0)) - _v774 = crt.Xatoi(t, _v773) - *(*int32)(unsafe.Pointer(uintptr(_v36))) = _v774 - _v776 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v777 = int32(int32(_v3) + int32(_v776)) - _v778 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v779 = int32(int32(_v777) + int32(_v778)) - _v780 = int32(int32(_v5) + int32(0)) - _v781 = s_findEnd(t, _v779, _v780) - _v782 = int32(int32(_v37) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v782))) = _v781 - _v783 = *(*int32)(unsafe.Pointer(uintptr(_v36))) - _v785 = crt.Bool32(int32(_v783) < int32(0)) - if _v785 != 0 { - goto l204 - } - goto l205 -l204: - _v787 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v789 = *(*int32)(unsafe.Pointer(uintptr(_v36))) - *(*int32)(unsafe.Pointer(bp + 232)) = _v787 - - *(*int32)(unsafe.Pointer(bp + 240)) = _v4 - - *(*int32)(unsafe.Pointer(bp + 248)) = _v789 - s_errorMessage(t, int32(uintptr(unsafe.Pointer(&s__123))), bp+232) - goto l209 -l205: - _v791 = *(*int32)(unsafe.Pointer(uintptr(_v37))) - _v793 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v794 = int32(int32(_v3) + int32(_v793)) - _v795 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v796 = int32(int32(_v794) + int32(_v795)) - *(*int32)(unsafe.Pointer(bp + 256)) = _v791 - - *(*int32)(unsafe.Pointer(bp + 264)) = _v796 - - _v797 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__98))), bp+256) - _v798 = int32(int32(_v38) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v798))) = _v797 - _v799 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v801 = crt.Bool32(int32(_v799) > int32(1)) - if _v801 != 0 { - goto l206 - } - goto l207 -l206: - _v806 = int32(int32(_v17) + int32(100)) - *(*int32)(unsafe.Pointer(bp + 272)) = _v806 - - _v807 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__55))), bp+272) - _v808 = int32(int32(_v39) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v808))) = _v807 - goto l208 -l207: - _v811 = s_filenameTail(t, _v4) - _v812 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - *(*int32)(unsafe.Pointer(bp + 280)) = _v811 - - *(*int32)(unsafe.Pointer(bp + 288)) = _v812 - - _v813 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__124))), bp+280) - _v814 = int32(int32(_v39) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v814))) = _v813 - goto l208 -l208: - _v815 = *(*int32)(unsafe.Pointer(uintptr(_v36))) - s_startClient(t, _v815) - _v817 = *(*int32)(unsafe.Pointer(uintptr(_v36))) - _v818 = *(*int32)(unsafe.Pointer(uintptr(_v38))) - _v819 = *(*int32)(unsafe.Pointer(uintptr(_v39))) - *(*int32)(unsafe.Pointer(bp + 296)) = _v817 - - *(*int32)(unsafe.Pointer(bp + 304)) = _v818 - - *(*int32)(unsafe.Pointer(bp + 312)) = _v819 - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__125))), bp+296) - _v820 = *(*int32)(unsafe.Pointer(uintptr(_v38))) - Xsqlite3_free(t, _v820) - _v821 = *(*int32)(unsafe.Pointer(uintptr(_v39))) - Xsqlite3_free(t, _v821) - goto l209 -l209: - _v823 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v824 = int32(int32(_v3) + int32(_v823)) - _v825 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v826 = int32(int32(_v824) + int32(_v825)) - _v827 = *(*int32)(unsafe.Pointer(uintptr(_v37))) - _v828 = int32(int32(_v826) + int32(_v827)) - _v829 = int32(int32(_v5) + int32(0)) - _v830 = s_tokenLength(t, _v828, _v829) - _v831 = int32(int32(_v37) + int32(0)) - _v832 = *(*int32)(unsafe.Pointer(uintptr(_v831))) - _v833 = int32(int32(_v832) + int32(_v830)) - *(*int32)(unsafe.Pointer(uintptr(_v831))) = _v833 - _v834 = *(*int32)(unsafe.Pointer(uintptr(_v37))) - _v835 = int32(int32(_v12) + int32(0)) - _v836 = *(*int32)(unsafe.Pointer(uintptr(_v835))) - _v837 = int32(int32(_v836) + int32(_v834)) - *(*int32)(unsafe.Pointer(uintptr(_v835))) = _v837 - _v838 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v839 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v840 = int32(int32(_v838) + int32(_v839)) - _v841 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v841))) = _v840 - goto l226 -l210: - _v844 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__126)))) - _v846 = crt.Bool32(int32(_v844) == int32(0)) - if _v846 != 0 { - goto l211 - } - goto l212 -l211: - s_test_breakpoint(t) - goto l225 -l212: - _v849 = crt.Xstrcmp(t, _v15, int32(uintptr(unsafe.Pointer(&s__127)))) - _v851 = crt.Bool32(int32(_v849) == int32(0)) - if _v851 != 0 { - goto l213 - } - goto l223 -l213: - _v852 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v854 = crt.Bool32(int32(_v852) >= int32(1)) - goto l214 -l214: - if _v854 != 0 { - goto l215 - } - goto l220 -l215: - _v858 = int32(int32(_v17) + int32(0)) - _v859 = s_booleanValue(t, _v858) - goto l216 -l216: - if _v859 != 0 { - goto l217 - } - goto l287 -l287: - _v860 = 1 - goto l218 -l217: - _v860 = 0 - goto l218 -l218: - goto l219 -l219: - _v862 = int32(_v860) - goto l222 -l220: - goto l221 -l221: - _v862 = 1 - goto l222 -l222: - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 76)) = _v862 - goto l224 -l223: - _v866 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - *(*int32)(unsafe.Pointer(bp + 320)) = _v866 - - *(*int32)(unsafe.Pointer(bp + 328)) = _v4 - - *(*int32)(unsafe.Pointer(bp + 336)) = _v15 - s_errorMessage(t, int32(uintptr(unsafe.Pointer(&s__128))), bp+320) - goto l224 -l224: - goto l225 -l225: - goto l226 -l226: - goto l227 -l227: - goto l228 -l228: - goto l229 -l229: - goto l230 -l230: - goto l231 -l231: - goto l232 -l232: - goto l233 -l233: - goto l234 -l234: - goto l235 -l235: - goto l236 -l236: - goto l237 -l237: - goto l238 -l238: - goto l239 -l239: - goto l240 -l240: - goto l241 -l241: - _v869 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v870 = int32(int32(_v7) + int32(0)) - _v871 = *(*int32)(unsafe.Pointer(uintptr(_v870))) - _v872 = int32(int32(_v871) + int32(_v869)) - *(*int32)(unsafe.Pointer(uintptr(_v870))) = _v872 - goto l2 -l242: - _v873 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v874 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v875 = crt.Bool32(int32(_v873) < int32(_v874)) - if _v875 != 0 { - goto l243 - } - goto l244 -l243: - _v877 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v878 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v879 = int32(int32(_v877) - int32(_v878)) - _v881 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v882 = int32(int32(_v3) + int32(_v881)) - *(*int32)(unsafe.Pointer(bp + 344)) = _v879 - - *(*int32)(unsafe.Pointer(bp + 352)) = _v882 - - _v883 = Xsqlite3_mprintf(t, int32(uintptr(unsafe.Pointer(&s__98))), bp+344) - *(*int32)(unsafe.Pointer(uintptr(_v40))) = _v883 - _v884 = *(*int32)(unsafe.Pointer(uintptr(_v40))) - s_runSql(t, _v884, 0) - _v885 = *(*int32)(unsafe.Pointer(uintptr(_v40))) - Xsqlite3_free(t, _v885) - goto l244 -l244: - _v886 = int32(int32(_v14) + int32(0)) - s_stringFree(t, _v886) - goto l245 -l245: -} - -var s__97 = [10]byte{0x72, 0x75, 0x6e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74} - -var s__98 = [5]byte{0x25, 0x2e, 0x2a, 0x73} - -var s__99 = [6]byte{0x73, 0x6c, 0x65, 0x65, 0x70} - -var s__100 = [5]byte{0x65, 0x78, 0x69, 0x74} - -var s__101 = [9]byte{0x74, 0x65, 0x73, 0x74, 0x63, 0x61, 0x73, 0x65} - -var s__102 = [7]byte{0x66, 0x69, 0x6e, 0x69, 0x73, 0x68} - -var s__103 = [6]byte{0x72, 0x65, 0x73, 0x65, 0x74} - -var s__104 = [6]byte{0x6d, 0x61, 0x74, 0x63, 0x68} - -var s__105 = [45]byte{ - 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x25, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x73, 0x3a, 0x0a, 0x45, - 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x5b, 0x25, 0x2e, 0x2a, 0x73, 0x5d, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x47, 0x6f, 0x74, 0x20, 0x5b, 0x25, 0x73, 0x5d, -} - -var s__106 = [5]byte{0x67, 0x6c, 0x6f, 0x62} - -var s__107 = [8]byte{0x6e, 0x6f, 0x74, 0x67, 0x6c, 0x6f, 0x62} - -var s__108 = [43]byte{ - 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x25, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x73, 0x3a, 0x0a, 0x45, - 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x5b, 0x25, 0x73, 0x5d, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x47, 0x6f, 0x74, 0x20, 0x5b, 0x25, 0x73, 0x5d, -} - -var s__109 = [7]byte{0x6f, 0x75, 0x74, 0x70, 0x75, 0x74} - -var s__110 = [7]byte{0x73, 0x6f, 0x75, 0x72, 0x63, 0x65} - -var s__111 = [8]byte{0x25, 0x2e, 0x2a, 0x73, 0x2f, 0x25, 0x73} - -var s__112 = [19]byte{ - 0x62, 0x65, 0x67, 0x69, 0x6e, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x5b, 0x25, 0x73, - 0x5d, 0x0a, -} - -var s__113 = [17]byte{0x65, 0x6e, 0x64, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x5b, 0x25, 0x73, 0x5d, 0x0a} - -var s__114 = [6]byte{0x70, 0x72, 0x69, 0x6e, 0x74} - -var s__115 = [3]byte{0x69, 0x66} - -var s__116 = [12]byte{0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x25, 0x2e, 0x2a, 0x73} - -var s__117 = [5]byte{0x65, 0x6c, 0x73, 0x65} - -var s__118 = [6]byte{0x65, 0x6e, 0x64, 0x69, 0x66} - -var s__119 = [6]byte{0x73, 0x74, 0x61, 0x72, 0x74} - -var s__120 = [5]byte{0x77, 0x61, 0x69, 0x74} - -var s__121 = [15]byte{0x6c, 0x69, 0x6e, 0x65, 0x20, 0x25, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x73, 0x0a} - -var s__122 = [5]byte{0x74, 0x61, 0x73, 0x6b} - -var s__123 = [37]byte{ - 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x25, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x73, 0x3a, 0x20, 0x62, - 0x61, 0x64, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x3a, 0x20, 0x25, 0x64, -} - -var s__124 = [6]byte{0x25, 0x73, 0x3a, 0x25, 0x64} - -var s__125 = [56]byte{ - 0x49, 0x4e, 0x53, 0x45, 0x52, 0x54, 0x20, 0x49, 0x4e, 0x54, 0x4f, 0x20, 0x74, 0x61, 0x73, 0x6b, - 0x28, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2c, 0x6e, - 0x61, 0x6d, 0x65, 0x29, 0x20, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x53, 0x28, 0x25, 0x64, 0x2c, 0x27, - 0x25, 0x71, 0x27, 0x2c, 0x25, 0x51, 0x29, -} - -var s__126 = [11]byte{0x62, 0x72, 0x65, 0x61, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74} - -var s__127 = [16]byte{0x73, 0x68, 0x6f, 0x77, 0x2d, 0x73, 0x71, 0x6c, 0x2d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73} - -var s__128 = [36]byte{ - 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x25, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x73, 0x3a, 0x20, 0x75, - 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x20, 0x2d, - 0x2d, 0x25, 0x73, -} - -func s_findOption(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32, _v4 int32) int32 { - bp := t.Alloc(32) - defer t.Free(32) - var _v19 int32 // %t10 - var _v109 int32 // %t100 - var _v110 int32 // %t101 - var _v111 int32 // %t102 - var _v112 int32 // %t103 - var _v113 int32 // %t104 - var _v115 int32 // %t106 - var _v116 int32 // %t107 - var _v117 int32 // %t108 - var _v118 int32 // %t109 - var _v119 int32 // %t110 - var _v120 int32 // %t111 - var _v122 int32 // %t113 - var _v123 int32 // %t114 - var _v125 int32 // %t116 - var _v126 int32 // %t117 - var _v127 int32 // %t118 - var _v128 int32 // %t119 - var _v129 int32 // %t120 - var _v25 int32 // %t16 - var _v26 int32 // %t17 - var _v27 int32 // %t18 - var _v28 int32 // %t19 - var _v29 int32 // %t20 - var _v31 int32 // %t22 - var _v32 int32 // %t23 - var _v33 int32 // %t24 - var _v34 int32 // %t25 - var _v35 int32 // %t26 - var _v37 int32 // %t28 - var _v38 int32 // %t29 - var _v12 int32 // %t3 - var _v39 int32 // %t30 - var _v42 int32 // %t33 - var _v43 int32 // %t34 - var _v44 int32 // %t35 - var _v45 int32 // %t36 - var _v47 int32 // %t38 - var _v48 int32 // %t39 - var _v49 int32 // %t40 - var _v50 int32 // %t41 - var _v53 int32 // %t44 - var _v54 int32 // %t45 - var _v55 int32 // %t46 - var _v56 int32 // %t47 - var _v58 int32 // %t49 - var _v61 int32 // %t52 - var _v62 int32 // %t53 - var _v63 int32 // %t54 - var _v64 int32 // %t55 - var _v66 int32 // %t57 - var _v67 int32 // %t58 - var _v68 int32 // %t59 - var _v15 int32 // %t6 - var _v69 int32 // %t60 - var _v70 int32 // %t61 - var _v72 int32 // %t63 - var _v74 int32 // %t65 - var _v76 int32 // %t67 - var _v77 int32 // %t68 - var _v79 int32 // %t70 - var _v80 int32 // %t71 - var _v81 int32 // %t72 - var _v83 int32 // %t74 - var _v85 int32 // %t76 - var _v87 int32 // %t78 - var _v88 int32 // %t79 - var _v90 int32 // %t81 - var _v91 int32 // %t82 - var _v92 int32 // %t83 - var _v93 int32 // %t84 - var _v94 int32 // %t85 - var _v96 int32 // %t87 - var _v97 int32 // %t88 - var _v98 int32 // %t89 - var _v18 int32 // %t9 - var _v99 int32 // %t90 - var _v101 int32 // %t92 - var _v104 int32 // %t95 - var _v105 int32 // %t96 - var _v106 int32 // %t97 - var _v107 int32 // %t98 - var _v108 int32 // %t99 - var _v5 = int32(bp + 8) // %v5 - var _v6 = int32(bp + 12) // %v6 - var _v7 = int32(bp + 16) // %v7 - var _v8 = int32(bp + 20) // %v8 - var _v9 = int32(bp + 24) // %v9 - *(*int32)(unsafe.Pointer(uintptr(_v7))) = 0 - _v12 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - *(*int32)(unsafe.Pointer(uintptr(_v8))) = _v12 - _v15 = crt.Bool32(int32(_v4) == int32(0)) - goto l2 -l2: - if _v15 != 0 { - goto l46 - } - goto l3 -l46: - _v19 = 1 - goto l6 -l3: - _v18 = crt.Bool32(int32(_v4) == int32(1)) - goto l4 -l4: - if _v18 != 0 { - goto l47 - } - goto l5 -l47: - _v19 = 1 - goto l6 -l5: - _v19 = 0 - goto l6 -l6: - goto l7 -l7: - if _v19 != 0 { - goto l8 - } - goto l10 -l8: - goto l9 -l9: - goto l12 -l10: - crt.X__assert_fail(t, int32(uintptr(unsafe.Pointer(&s__130))), int32(uintptr(unsafe.Pointer(&s__44))), 1211, int32(uintptr(unsafe.Pointer(&s__129)))) - goto l11 -l11: - goto l12 -l12: - _v25 = int32(int32(_v5) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v25))) = 0 - goto l13 -l13: - _v26 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v27 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v28 = crt.Bool32(int32(_v26) < int32(_v27)) - if _v28 != 0 { - goto l14 - } - goto l43 -l14: - _v29 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v31 = int32(int32(_v29) + int32(_v4)) - _v32 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v33 = crt.Bool32(int32(_v31) >= int32(_v32)) - if _v33 != 0 { - goto l15 - } - goto l17 -l15: - goto l43 -l17: - _v34 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v35 = int32(_v34 * 4) - _v37 = int32(int32(_v1) + int32(_v35)) - _v38 = *(*int32)(unsafe.Pointer(uintptr(_v37))) - _v39 = int32(int32(_v9) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v39))) = _v38 - _v42 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v43 = int32(int32(_v42) + int32(0)) - _v44 = int32(*(*int8)(unsafe.Pointer(uintptr(_v43)))) - _v45 = int32(int8(_v44)) - _v47 = crt.Bool32(int32(_v45) != int32(45)) - if _v47 != 0 { - goto l18 - } - goto l20 -l18: - goto l42 -l20: - _v48 = int32(int32(_v9) + int32(0)) - _v49 = *(*int32)(unsafe.Pointer(uintptr(_v48))) - _v50 = int32(int32(_v49) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v48))) = _v50 - _v53 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v54 = int32(int32(_v53) + int32(0)) - _v55 = int32(*(*int8)(unsafe.Pointer(uintptr(_v54)))) - _v56 = int32(int8(_v55)) - _v58 = crt.Bool32(int32(_v56) == int32(45)) - if _v58 != 0 { - goto l21 - } - goto l25 -l21: - _v61 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v62 = int32(int32(_v61) + int32(1)) - _v63 = int32(*(*int8)(unsafe.Pointer(uintptr(_v62)))) - _v64 = int32(int8(_v63)) - _v66 = crt.Bool32(int32(_v64) == int32(0)) - if _v66 != 0 { - goto l22 - } - goto l24 -l22: - goto l43 -l24: - _v67 = int32(int32(_v9) + int32(0)) - _v68 = *(*int32)(unsafe.Pointer(uintptr(_v67))) - _v69 = int32(int32(_v68) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v67))) = _v69 - goto l25 -l25: - _v70 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v72 = crt.Xstrcmp(t, _v70, _v3) - _v74 = crt.Bool32(int32(_v72) == int32(0)) - if _v74 != 0 { - goto l26 - } - goto l41 -l26: - goto l27 -l27: - if _v4 != 0 { - goto l28 - } - goto l48 -l48: - _v81 = 0 - goto l31 -l28: - _v76 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v77 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v79 = int32(int32(_v77) - int32(1)) - _v80 = crt.Bool32(int32(_v76) == int32(_v79)) - goto l29 -l29: - if _v80 != 0 { - goto l30 - } - goto l49 -l49: - _v81 = 0 - goto l31 -l30: - _v81 = 1 - goto l31 -l31: - if _v81 != 0 { - goto l32 - } - goto l33 -l32: - _v83 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - *(*int32)(unsafe.Pointer(bp + 0)) = _v83 - s_fatalError(t, int32(uintptr(unsafe.Pointer(&s__131))), bp+0) - goto l33 -l33: - if _v4 != 0 { - goto l34 - } - goto l35 -l34: - _v85 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v87 = int32(int32(_v85) + int32(1)) - _v88 = int32(_v87 * 4) - _v90 = int32(int32(_v1) + int32(_v88)) - _v91 = *(*int32)(unsafe.Pointer(uintptr(_v90))) - _v92 = int32(int32(_v7) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v92))) = _v91 - goto l36 -l35: - _v93 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v94 = int32(_v93 * 4) - _v96 = int32(int32(_v1) + int32(_v94)) - _v97 = *(*int32)(unsafe.Pointer(uintptr(_v96))) - _v98 = int32(int32(_v7) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v98))) = _v97 - goto l36 -l36: - _v99 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v101 = int32(int32(_v99) + int32(1)) - _v104 = crt.Bool32(int32(_v4) != int32(0)) - _v105 = int32(int32(_v101) + int32(_v104)) - _v106 = int32(int32(_v6) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v106))) = _v105 - goto l37 -l37: - _v107 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v108 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v109 = crt.Bool32(int32(_v107) < int32(_v108)) - if _v109 != 0 { - goto l38 - } - goto l39 -l38: - _v110 = int32(int32(_v6) + int32(0)) - _v111 = *(*int32)(unsafe.Pointer(uintptr(_v110))) - _v112 = int32(int32(_v111) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v110))) = _v112 - _v113 = int32(_v111 * 4) - _v115 = int32(int32(_v1) + int32(_v113)) - _v116 = *(*int32)(unsafe.Pointer(uintptr(_v115))) - _v117 = int32(int32(_v5) + int32(0)) - _v118 = *(*int32)(unsafe.Pointer(uintptr(_v117))) - _v119 = int32(int32(_v118) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v117))) = _v119 - _v120 = int32(_v118 * 4) - _v122 = int32(int32(_v1) + int32(_v120)) - *(*int32)(unsafe.Pointer(uintptr(_v122))) = _v116 - goto l37 -l39: - _v123 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v123 - _v125 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - return _v125 -l41: - goto l42 -l42: - _v126 = int32(int32(_v5) + int32(0)) - _v127 = *(*int32)(unsafe.Pointer(uintptr(_v126))) - _v128 = int32(int32(_v127) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v126))) = _v128 - goto l13 -l43: - _v129 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - return _v129 -} - -var s__129 = [11]byte{0x66, 0x69, 0x6e, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e} - -var s__130 = [23]byte{ - 0x68, 0x61, 0x73, 0x41, 0x72, 0x67, 0x3d, 0x3d, 0x30, 0x20, 0x7c, 0x7c, 0x20, 0x68, 0x61, 0x73, - 0x41, 0x72, 0x67, 0x3d, 0x3d, 0x31, -} - -var s__131 = [48]byte{ - 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2d, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x20, 0x22, 0x2d, 0x2d, 0x25, 0x73, 0x22, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, - 0x72, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, -} - -func s_usage(t *crt.TLS, _v1 int32) { - bp := t.Alloc(16) - defer t.Free(16) - var _v13 int32 // %t10 - var _v15 int32 // %t12 - var _v16 int32 // %t13 - var _v17 int32 // %t14 - var _v19 int32 // %t16 - var _v21 int32 // %t18 - var _v22 int32 // %t19 - var _v24 int32 // %t21 - var _v25 int32 // %t22 - var _v26 int32 // %t23 - var _v27 int32 // %t24 - var _v28 int32 // %t25 - var _v29 int32 // %t26 - var _v31 int32 // %t28 - var _v6 int32 // %t3 - var _v33 int32 // %t30 - var _v7 int32 // %t4 - var _v8 int32 // %t5 - var _v10 int32 // %t7 - var _v11 int32 // %t8 - var _v12 int32 // %t9 - var _v2 = int32(bp + 8) // %v2 - var _v3 = int32(bp + 12) // %v3 - *(*int32)(unsafe.Pointer(uintptr(_v3))) = _v1 - _v6 = int32(int32(_v2) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v6))) = 0 - goto l2 -l2: - _v7 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v8 = int32(_v7 * 1) - _v10 = int32(int32(_v1) + int32(_v8)) - _v11 = int32(*(*int8)(unsafe.Pointer(uintptr(_v10)))) - if _v11 != 0 { - goto l3 - } - goto l7 -l3: - _v12 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v13 = int32(_v12 * 1) - _v15 = int32(int32(_v1) + int32(_v13)) - _v16 = int32(*(*int8)(unsafe.Pointer(uintptr(_v15)))) - _v17 = int32(int8(_v16)) - _v19 = crt.Bool32(int32(_v17) == int32(47)) - if _v19 != 0 { - goto l4 - } - goto l5 -l4: - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v22 = int32(int32(_v1) + int32(_v21)) - _v24 = int32(int32(_v22) + int32(1)) - _v25 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v25))) = _v24 - goto l5 -l5: - goto l6 -l6: - _v26 = int32(int32(_v2) + int32(0)) - _v27 = *(*int32)(unsafe.Pointer(uintptr(_v26))) - _v28 = int32(int32(_v27) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v26))) = _v28 - goto l2 -l7: - _v29 = *(*int32)(unsafe.Pointer(&crt.Xstderr)) - _v31 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - *(*int32)(unsafe.Pointer(bp + 0)) = _v31 - - _ = crt.Xfprintf(t, _v29, int32(uintptr(unsafe.Pointer(&s__133))), bp+0) - _v33 = *(*int32)(unsafe.Pointer(&crt.Xstderr)) - - _ = crt.Xfprintf(t, _v33, int32(uintptr(unsafe.Pointer(&s__134))), 0) - crt.Xexit(t, 1) - goto l8 -l8: -} - -var s__132 = [6]byte{0x75, 0x73, 0x61, 0x67, 0x65} - -var s__133 = [39]byte{ - 0x55, 0x73, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x25, 0x73, 0x20, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, - 0x53, 0x45, 0x20, 0x3f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x3f, 0x20, 0x3f, 0x53, 0x43, - 0x52, 0x49, 0x50, 0x54, 0x3f, 0x0a, -} - -var s__134 = [572]byte{ - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x65, 0x72, - 0x72, 0x6c, 0x6f, 0x67, 0x20, 0x46, 0x49, 0x4c, 0x45, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x57, 0x72, 0x69, 0x74, 0x65, 0x20, 0x65, 0x72, - 0x72, 0x6f, 0x72, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x46, 0x49, 0x4c, 0x45, 0x4e, 0x41, 0x4d, 0x45, - 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x6a, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x6d, 0x6f, 0x64, - 0x65, 0x20, 0x4d, 0x4f, 0x44, 0x45, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x55, 0x73, 0x65, 0x20, 0x4d, 0x4f, 0x44, 0x45, 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, - 0x6a, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x0a, 0x20, 0x20, 0x20, - 0x2d, 0x2d, 0x6c, 0x6f, 0x67, 0x20, 0x46, 0x49, 0x4c, 0x45, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x6f, 0x67, 0x20, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x46, 0x49, 0x4c, 0x45, - 0x4e, 0x41, 0x4d, 0x45, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x71, 0x75, 0x69, 0x65, 0x74, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x53, 0x75, 0x70, 0x70, 0x72, 0x65, 0x73, 0x73, 0x20, 0x75, 0x6e, 0x6e, - 0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0x20, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x0a, - 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x76, 0x66, 0x73, 0x20, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, - 0x73, 0x65, 0x20, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x56, - 0x46, 0x53, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x20, 0x4e, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x65, 0x73, - 0x74, 0x20, 0x4e, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x73, - 0x71, 0x6c, 0x74, 0x72, 0x61, 0x63, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x20, - 0x53, 0x51, 0x4c, 0x20, 0x74, 0x72, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x0a, 0x20, 0x20, 0x20, 0x2d, - 0x2d, 0x73, 0x79, 0x6e, 0x63, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x45, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x20, 0x73, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x6f, 0x75, 0x73, 0x20, 0x64, 0x69, - 0x73, 0x6b, 0x20, 0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x74, - 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x20, 0x4d, 0x49, 0x4c, 0x4c, 0x49, 0x53, 0x45, 0x43, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x42, 0x75, 0x73, 0x79, 0x20, 0x74, 0x69, - 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x20, 0x69, 0x73, 0x20, 0x4d, 0x49, 0x4c, 0x4c, 0x49, 0x53, 0x45, - 0x43, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x74, 0x72, 0x61, 0x63, 0x65, 0x20, 0x42, 0x4f, 0x4f, - 0x4c, 0x45, 0x41, 0x4e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x20, 0x74, 0x72, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x0a, -} - -func s_unrecognizedArguments(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32) { - bp := t.Alloc(32) - defer t.Free(32) - var _v5 int32 // %t1 - var _v14 int32 // %t10 - var _v16 int32 // %t12 - var _v17 int32 // %t13 - var _v19 int32 // %t15 - var _v20 int32 // %t16 - var _v22 int32 // %t18 - var _v23 int32 // %t19 - var _v24 int32 // %t20 - var _v25 int32 // %t21 - var _v10 int32 // %t6 - var _v11 int32 // %t7 - var _v13 int32 // %t9 - var _v4 = int32(bp + 16) // %v4 - _v5 = *(*int32)(unsafe.Pointer(&crt.Xstderr)) - *(*int32)(unsafe.Pointer(bp + 0)) = _v1 - - _ = crt.Xfprintf(t, _v5, int32(uintptr(unsafe.Pointer(&s__136))), bp+0) - _v10 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v10))) = 0 - goto l2 -l2: - _v11 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v13 = crt.Bool32(int32(_v11) < int32(_v2)) - if _v13 != 0 { - goto l3 - } - goto l5 -l3: - _v14 = *(*int32)(unsafe.Pointer(&crt.Xstderr)) - _v16 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v17 = int32(_v16 * 4) - _v19 = int32(int32(_v3) + int32(_v17)) - _v20 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - *(*int32)(unsafe.Pointer(bp + 8)) = _v20 - - _ = crt.Xfprintf(t, _v14, int32(uintptr(unsafe.Pointer(&s__137))), bp+8) - goto l4 -l4: - _v22 = int32(int32(_v4) + int32(0)) - _v23 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v24 = int32(int32(_v23) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v22))) = _v24 - goto l2 -l5: - _v25 = *(*int32)(unsafe.Pointer(&crt.Xstderr)) - - _ = crt.Xfprintf(t, _v25, int32(uintptr(unsafe.Pointer(&s__138))), 0) - crt.Xexit(t, 1) - goto l6 -l6: -} - -var s__135 = [22]byte{ - 0x75, 0x6e, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x64, 0x41, 0x72, 0x67, 0x75, - 0x6d, 0x65, 0x6e, 0x74, 0x73, -} - -var s__136 = [28]byte{ - 0x25, 0x73, 0x3a, 0x20, 0x75, 0x6e, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x64, - 0x20, 0x61, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, -} - -var s__137 = [4]byte{0x20, 0x25, 0x73} - -var s__138 = [2]byte{0x0a} - -func Xmain(t *crt.TLS, _v1 int32, _v2 int32) int32 { - bp := t.Alloc(320) - defer t.Free(320) - var _v122 int32 // %t100 - var _v123 int32 // %t101 - var _v126 int32 // %t104 - var _v127 int32 // %t105 - var _v131 int32 // %t109 - var _v132 int32 // %t110 - var _v135 int32 // %t113 - var _v141 int32 // %t119 - var _v142 int32 // %t120 - var _v145 int32 // %t123 - var _v151 int32 // %t129 - var _v152 int32 // %t130 - var _v155 int32 // %t133 - var _v156 int32 // %t134 - var _v157 int32 // %t135 - var _v158 int32 // %t136 - var _v159 int32 // %t137 - var _v165 int32 // %t143 - var _v166 int32 // %t144 - var _v169 int32 // %t147 - var _v171 int32 // %t149 - var _v178 int32 // %t156 - var _v179 int32 // %t157 - var _v38 int32 // %t16 - var _v182 int32 // %t160 - var _v183 int32 // %t161 - var _v184 int32 // %t162 - var _v185 int32 // %t163 - var _v186 int32 // %t164 - var _v187 int32 // %t165 - var _v191 int32 // %t169 - var _v192 int32 // %t170 - var _v195 int32 // %t173 - var _v197 int32 // %t175 - var _v203 int32 // %t181 - var _v204 int32 // %t182 - var _v207 int32 // %t185 - var _v209 int32 // %t187 - var _v214 int32 // %t192 - var _v217 int32 // %t195 - var _v219 int32 // %t197 - var _v42 int32 // %t20 - var _v222 int32 // %t200 - var _v227 int32 // %t205 - var _v230 int32 // %t208 - var _v43 int32 // %t21 - var _v232 int32 // %t210 - var _v235 int32 // %t213 - var _v242 int32 // %t220 - var _v243 int32 // %t221 - var _v244 int32 // %t222 - var _v245 int32 // %t223 - var _v246 int32 // %t224 - var _v248 int32 // %t226 - var _v250 int32 // %t228 - var _v255 int32 // %t233 - var _v256 int32 // %t234 - var _v261 int32 // %t239 - var _v263 int32 // %t241 - var _v268 int32 // %t246 - var _v269 int32 // %t247 - var _v47 int32 // %t25 - var _v272 int32 // %t250 - var _v273 int32 // %t251 - var _v275 int32 // %t253 - var _v277 int32 // %t255 - var _v278 int32 // %t256 - var _v280 int32 // %t258 - var _v281 int32 // %t259 - var _v48 int32 // %t26 - var _v283 int32 // %t261 - var _v284 int32 // %t262 - var _v285 int32 // %t263 - var _v291 int32 // %t269 - var _v292 int32 // %t270 - var _v293 int32 // %t271 - var _v294 int32 // %t272 - var _v295 int32 // %t273 - var _v297 int32 // %t275 - var _v299 int32 // %t277 - var _v301 int32 // %t279 - var _v302 int32 // %t280 - var _v303 int32 // %t281 - var _v304 int32 // %t282 - var _v307 int32 // %t285 - var _v308 int32 // %t286 - var _v310 int32 // %t288 - var _v312 int32 // %t290 - var _v314 int32 // %t292 - var _v316 int32 // %t294 - var _v319 int32 // %t297 - var _v322 int32 // %t300 - var _v326 int32 // %t304 - var _v327 int32 // %t305 - var _v328 int32 // %t306 - var _v329 int32 // %t307 - var _v330 int32 // %t308 - var _v331 int32 // %t309 - var _v333 int32 // %t311 - var _v334 int32 // %t312 - var _v336 int32 // %t314 - var _v337 int32 // %t315 - var _v339 int32 // %t317 - var _v340 int32 // %t318 - var _v341 int32 // %t319 - var _v54 int32 // %t32 - var _v342 int32 // %t320 - var _v343 int32 // %t321 - var _v345 int32 // %t323 - var _v346 int32 // %t324 - var _v348 int32 // %t326 - var _v350 int32 // %t328 - var _v351 int32 // %t329 - var _v55 int32 // %t33 - var _v352 int32 // %t330 - var _v354 int32 // %t332 - var _v358 int32 // %t336 - var _v359 int32 // %t337 - var _v361 int32 // %t339 - var _v362 int32 // %t340 - var _v363 int32 // %t341 - var _v366 int32 // %t344 - var _v369 int32 // %t347 - var _v372 int32 // %t350 - var _v373 int32 // %t351 - var _v374 int32 // %t352 - var _v375 int32 // %t353 - var _v379 int32 // %t357 - var _v380 int32 // %t358 - var _v382 int32 // %t360 - var _v385 int32 // %t363 - var _v386 int32 // %t364 - var _v388 int32 // %t366 - var _v390 int32 // %t368 - var _v59 int32 // %t37 - var _v393 int32 // %t371 - var _v394 int32 // %t372 - var _v399 int32 // %t377 - var _v60 int32 // %t38 - var _v404 int32 // %t382 - var _v410 int32 // %t388 - var _v61 int32 // %t39 - var _v421 int32 // %t399 - var _v63 int32 // %t41 - var _v435 int32 // %t413 - var _v438 int32 // %t416 - var _v442 int32 // %t420 - var _v444 int32 // %t422 - var _v445 int32 // %t423 - var _v447 int32 // %t425 - var _v451 int32 // %t429 - var _v65 int32 // %t43 - var _v452 int32 // %t430 - var _v453 int32 // %t431 - var _v457 int32 // %t435 - var _v460 int32 // %t438 - var _v66 int32 // %t44 - var _v464 int32 // %t442 - var _v465 int32 // %t443 - var _v466 int32 // %t444 - var _v467 int32 // %t445 - var _v468 int32 // %t446 - var _v469 int32 // %t447 - var _v470 int32 // %t448 - var _v472 int32 // %t450 - var _v475 int32 // %t453 - var _v477 int32 // %t455 - var _v478 int32 // %t456 - var _v479 int32 // %t457 - var _v480 int32 // %t458 - var _v481 int32 // %t459 - var _v68 int32 // %t46 - var _v482 int32 // %t460 - var _v485 int32 // %t463 - var _v487 int32 // %t465 - var _v488 int32 // %t466 - var _v489 int32 // %t467 - var _v490 int32 // %t468 - var _v493 int32 // %t471 - var _v498 int32 // %t476 - var _v500 int32 // %t478 - var _v502 int32 // %t480 - var _v504 int32 // %t482 - var _v506 int32 // %t484 - var _v510 int32 // %t488 - var _v511 int32 // %t489 - var _v512 int32 // %t490 - var _v516 int32 // %t494 - var _v521 int32 // %t499 - var _v522 int32 // %t500 - var _v523 int32 // %t501 - var _v524 int32 // %t502 - var _v526 int32 // %t504 - var _v527 int32 // %t505 - var _v528 int32 // %t506 - var _v529 int32 // %t507 - var _v532 int32 // %t510 - var _v537 int32 // %t515 - var _v538 int32 // %t516 - var _v539 int32 // %t517 - var _v74 int32 // %t52 - var _v542 int32 // %t520 - var _v546 int32 // %t524 - var _v547 int32 // %t525 - var _v550 int32 // %t528 - var _v75 int32 // %t53 - var _v555 int32 // %t533 - var _v556 int32 // %t534 - var _v557 int32 // %t535 - var _v558 int32 // %t536 - var _v559 int32 // %t537 - var _v560 int32 // %t538 - var _v561 int32 // %t539 - var _v573 int32 // %t551 - var _v575 int32 // %t553 - var _v576 int32 // %t554 - var _v577 int32 // %t555 - var _v579 int32 // %t557 - var _v580 int32 // %t558 - var _v582 int32 // %t560 - var _v583 int32 // %t561 - var _v584 int32 // %t562 - var _v586 int32 // %t564 - var _v587 int32 // %t565 - var _v591 int32 // %t569 - var _v592 int32 // %t570 - var _v593 int32 // %t571 - var _v597 int32 // %t575 - var _v598 int32 // %t576 - var _v600 int32 // %t578 - var _v601 int32 // %t579 - var _v80 int32 // %t58 - var _v602 int32 // %t580 - var _v603 int32 // %t581 - var _v604 int32 // %t582 - var _v606 int32 // %t584 - var _v607 int32 // %t585 - var _v609 int32 // %t587 - var _v610 int32 // %t588 - var _v614 int32 // %t592 - var _v615 int32 // %t593 - var _v616 int32 // %t594 - var _v617 int32 // %t595 - var _v619 int32 // %t597 - var _v620 int32 // %t598 - var _v622 int32 // %t600 - var _v625 int32 // %t603 - var _v626 int32 // %t604 - var _v627 int32 // %t605 - var _v629 int32 // %t607 - var _v632 int32 // %t610 - var _v633 int32 // %t611 - var _v634 int32 // %t612 - var _v638 int32 // %t616 - var _v642 int32 // %t620 - var _v645 int32 // %t623 - var _v646 int32 // %t624 - var _v648 int32 // %t626 - var _v85 int32 // %t63 - var _v652 int32 // %t630 - var _v655 int32 // %t633 - var _v661 int32 // %t639 - var _v86 int32 // %t64 - var _v662 int32 // %t640 - var _v665 int32 // %t643 - var _v666 int32 // %t644 - var _v668 int32 // %t646 - var _v670 int32 // %t648 - var _v671 int32 // %t649 - var _v673 int32 // %t651 - var _v674 int32 // %t652 - var _v676 int32 // %t654 - var _v677 int32 // %t655 - var _v678 int32 // %t656 - var _v683 int32 // %t661 - var _v685 int32 // %t663 - var _v89 int32 // %t67 - var _v90 int32 // %t68 - var _v29 int32 // %t7 - var _v94 int32 // %t72 - var _v95 int32 // %t73 - var _v98 int32 // %t76 - var _v99 int32 // %t77 - var _v100 int32 // %t78 - var _v101 int32 // %t79 - var _v30 int32 // %t8 - var _v102 int32 // %t80 - var _v103 int32 // %t81 - var _v104 int32 // %t82 - var _v106 int32 // %t84 - var _v108 int32 // %t86 - var _v112 int32 // %t90 - var _v113 int32 // %t91 - var _v116 int32 // %t94 - var _v10 = int32(bp + 260) // %v10 - var _v11 = int32(bp + 264) // %v11 - var _v12 = int32(bp + 268) // %v12 - var _v13 = int32(bp + 272) // %v13 - var _v14 = int32(bp + 276) // %v14 - var _v15 = int32(bp + 280) // %v15 - var _v16 = int32(bp + 284) // %v16 - var _v17 = int32(bp + 288) // %v17 - var _v18 = int32(bp + 292) // %v18 - var _v19 = int32(bp + 296) // %v19 - var _v20 = int32(bp + 300) // %v20 - var _v21 = int32(bp + 304) // %v21 - var _v22 = int32(bp + 308) // %v22 - var _v3 = int32(bp + 232) // %v3 - var _v4 = int32(bp + 236) // %v4 - var _v5 = int32(bp + 240) // %v5 - var _v6 = int32(bp + 244) // %v6 - var _v7 = int32(bp + 248) // %v7 - var _v8 = int32(bp + 252) // %v8 - var _v9 = int32(bp + 256) // %v9 - *(*int32)(unsafe.Pointer(uintptr(_v7))) = 2 - *(*int32)(unsafe.Pointer(uintptr(_v15))) = 1 - *(*int32)(unsafe.Pointer(uintptr(_v17))) = 0 - _v29 = int32(int32(_v2) + int32(0)) - _v30 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - *(*int32)(unsafe.Pointer(&s_g)) = _v30 - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) = 1 - _v38 = crt.Bool32(int32(_v1) < int32(2)) - if _v38 != 0 { - goto l2 - } - goto l3 -l2: - _v42 = int32(int32(_v2) + int32(0)) - _v43 = *(*int32)(unsafe.Pointer(uintptr(_v42))) - s_usage(t, _v43) - goto l3 -l3: - _v47 = int32(int32(_v2) + int32(4)) - _v48 = *(*int32)(unsafe.Pointer(uintptr(_v47))) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) = _v48 - _v54 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) - _v55 = Xstrglob(t, int32(uintptr(unsafe.Pointer(&s__140))), _v54) - if _v55 != 0 { - goto l4 - } - goto l5 -l4: - _v59 = int32(int32(_v2) + int32(0)) - _v60 = *(*int32)(unsafe.Pointer(uintptr(_v59))) - s_usage(t, _v60) - goto l5 -l5: - _v61 = Xsqlite3_sourceid(t) - _v63 = crt.Xstrcmp(t, _v61, int32(uintptr(unsafe.Pointer(&s__141)))) - _v65 = crt.Bool32(int32(_v63) != int32(0)) - if _v65 != 0 { - goto l6 - } - goto l7 -l6: - _v66 = *(*int32)(unsafe.Pointer(&crt.Xstderr)) - _v68 = Xsqlite3_sourceid(t) - *(*int32)(unsafe.Pointer(bp + 0)) = _v68 - - *(*int32)(unsafe.Pointer(bp + 8)) = int32(uintptr(unsafe.Pointer(&s__141))) - - _ = crt.Xfprintf(t, _v66, int32(uintptr(unsafe.Pointer(&s__142))), bp+0) - crt.Xexit(t, 1) - goto l7 -l7: - _v74 = int32(int32(_v1) - int32(2)) - _v75 = int32(int32(_v5) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v75))) = _v74 - _v80 = crt.Xgetpid(t) - *(*int32)(unsafe.Pointer(bp + 16)) = _v80 - - _ = Xsqlite3_snprintf(t, 32, int32(uintptr(unsafe.Pointer(&s_g))+32), int32(uintptr(unsafe.Pointer(&s__143))), bp+16) - _v85 = int32(int32(_v2) + int32(8)) - _v86 = int32(int32(_v5) + int32(0)) - _v89 = s_findOption(t, _v85, _v86, int32(uintptr(unsafe.Pointer(&s__144))), 1) - _v90 = int32(int32(_v13) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v90))) = _v89 - _v94 = int32(int32(_v2) + int32(8)) - _v95 = int32(int32(_v5) + int32(0)) - _v98 = s_findOption(t, _v94, _v95, int32(uintptr(unsafe.Pointer(&s__145))), 1) - _v99 = int32(int32(_v14) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v99))) = _v98 - _v100 = *(*int32)(unsafe.Pointer(uintptr(_v14))) - if _v100 != 0 { - goto l8 - } - goto l9 -l8: - _v101 = *(*int32)(unsafe.Pointer(uintptr(_v14))) - _v102 = crt.Xatoi(t, _v101) - _v103 = int32(int32(_v15) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v103))) = _v102 - goto l9 -l9: - _v104 = *(*int32)(unsafe.Pointer(uintptr(_v15))) - _v106 = crt.Bool32(int32(_v104) < int32(1)) - if _v106 != 0 { - goto l10 - } - goto l11 -l10: - _v108 = int32(int32(_v15) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v108))) = 1 - goto l11 -l11: - _v112 = int32(int32(_v2) + int32(8)) - _v113 = int32(int32(_v5) + int32(0)) - _v116 = s_findOption(t, _v112, _v113, int32(uintptr(unsafe.Pointer(&s__146))), 1) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 4)) = _v116 - _v122 = int32(int32(_v2) + int32(8)) - _v123 = int32(int32(_v5) + int32(0)) - _v126 = s_findOption(t, _v122, _v123, int32(uintptr(unsafe.Pointer(&s__147))), 1) - _v127 = int32(int32(_v3) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v127))) = _v126 - _v131 = int32(int32(_v2) + int32(8)) - _v132 = int32(int32(_v5) + int32(0)) - _v135 = s_findOption(t, _v131, _v132, int32(uintptr(unsafe.Pointer(&s__148))), 1) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) = _v135 - _v141 = int32(int32(_v2) + int32(8)) - _v142 = int32(int32(_v5) + int32(0)) - _v145 = s_findOption(t, _v141, _v142, int32(uintptr(unsafe.Pointer(&s__149))), 1) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) = _v145 - _v151 = int32(int32(_v2) + int32(8)) - _v152 = int32(int32(_v5) + int32(0)) - _v155 = s_findOption(t, _v151, _v152, int32(uintptr(unsafe.Pointer(&s__150))), 1) - _v156 = int32(int32(_v11) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v156))) = _v155 - _v157 = *(*int32)(unsafe.Pointer(uintptr(_v11))) - if _v157 != 0 { - goto l12 - } - goto l13 -l12: - _v158 = *(*int32)(unsafe.Pointer(uintptr(_v11))) - _v159 = crt.Xatoi(t, _v158) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) = _v159 - goto l13 -l13: - _v165 = int32(int32(_v2) + int32(8)) - _v166 = int32(int32(_v5) + int32(0)) - _v169 = s_findOption(t, _v165, _v166, int32(uintptr(unsafe.Pointer(&s__151))), 0) - _v171 = crt.Bool32(int32(_v169) != int32(0)) - if _v171 != 0 { - goto l14 - } - goto l15 -l14: - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) = 0 - goto l15 -l15: - _v178 = int32(int32(_v2) + int32(8)) - _v179 = int32(int32(_v5) + int32(0)) - _v182 = s_findOption(t, _v178, _v179, int32(uintptr(unsafe.Pointer(&s__152))), 1) - _v183 = int32(int32(_v18) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v183))) = _v182 - _v184 = *(*int32)(unsafe.Pointer(uintptr(_v18))) - if _v184 != 0 { - goto l16 - } - goto l17 -l16: - _v185 = *(*int32)(unsafe.Pointer(uintptr(_v18))) - _v186 = crt.Xatoi(t, _v185) - _v187 = int32(int32(_v17) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v187))) = _v186 - goto l17 -l17: - _v191 = int32(int32(_v2) + int32(8)) - _v192 = int32(int32(_v5) + int32(0)) - _v195 = s_findOption(t, _v191, _v192, int32(uintptr(unsafe.Pointer(&s__153))), 0) - _v197 = crt.Bool32(int32(_v195) != int32(0)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 72)) = _v197 - _v203 = int32(int32(_v2) + int32(8)) - _v204 = int32(int32(_v5) + int32(0)) - _v207 = s_findOption(t, _v203, _v204, int32(uintptr(unsafe.Pointer(&s__154))), 0) - _v209 = crt.Bool32(int32(_v207) != int32(0)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 92)) = _v209 - _v214 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) - if _v214 != 0 { - goto l18 - } - goto l19 -l18: - _v217 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) - _v219 = crt.Xfopen(t, _v217, int32(uintptr(unsafe.Pointer(&s__155)))) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 20)) = _v219 - goto l20 -l19: - _v222 = *(*int32)(unsafe.Pointer(&crt.Xstderr)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 20)) = _v222 - goto l20 -l20: - _v227 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - if _v227 != 0 { - goto l21 - } - goto l22 -l21: - _v230 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v232 = crt.Xfopen(t, _v230, int32(uintptr(unsafe.Pointer(&s__155)))) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) = _v232 - goto l23 -l22: - _v235 = *(*int32)(unsafe.Pointer(&crt.Xstdout)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) = _v235 - goto l23 -l23: - *(*int32)(unsafe.Pointer(bp + 24)) = *(*int32)(unsafe.Pointer(&struct { - f func(*crt.TLS, int32, int32, int32) - }{s_sqlErrorCallback})) - - *(*int32)(unsafe.Pointer(bp + 32)) = 0 - - _ = Xsqlite3_config(t, 16, bp+24) - _v242 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - if _v242 != 0 { - goto l24 - } - goto l27 -l24: - _v243 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v244 = crt.Xatoi(t, _v243) - _v245 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v245))) = _v244 - _v246 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v248 = crt.Bool32(int32(_v246) < int32(1)) - if _v248 != 0 { - goto l25 - } - goto l26 -l25: - _v250 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - *(*int32)(unsafe.Pointer(bp + 40)) = _v250 - s_fatalError(t, int32(uintptr(unsafe.Pointer(&s__156))), bp+40) - goto l26 -l26: - _v255 = crt.Xgetpid(t) - _v256 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - *(*int32)(unsafe.Pointer(bp + 48)) = _v255 - - *(*int32)(unsafe.Pointer(bp + 56)) = _v256 - - _ = Xsqlite3_snprintf(t, 32, int32(uintptr(unsafe.Pointer(&s_g))+32), int32(uintptr(unsafe.Pointer(&s__157))), bp+48) - goto l68 -l27: - *(*int32)(unsafe.Pointer(uintptr(_v19))) = 0 - _v261 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - _v263 = crt.Bool32(int32(_v261) > int32(0)) - if _v263 != 0 { - goto l28 - } - goto l144 -l144: - goto l37 -l28: - _v268 = int32(int32(_v2) + int32(0)) - _v269 = *(*int32)(unsafe.Pointer(uintptr(_v268))) - *(*int32)(unsafe.Pointer(bp + 64)) = _v269 - - _ = crt.Xprintf(t, int32(uintptr(unsafe.Pointer(&s__158))), bp+64) - _v272 = int32(int32(_v6) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v272))) = 1 - goto l29 -l29: - _v273 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v275 = crt.Bool32(int32(_v273) < int32(_v1)) - if _v275 != 0 { - goto l30 - } - goto l32 -l30: - _v277 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v278 = int32(_v277 * 4) - _v280 = int32(int32(_v2) + int32(_v278)) - _v281 = *(*int32)(unsafe.Pointer(uintptr(_v280))) - *(*int32)(unsafe.Pointer(bp + 72)) = _v281 - - _ = crt.Xprintf(t, int32(uintptr(unsafe.Pointer(&s__137))), bp+72) - goto l31 -l31: - _v283 = int32(int32(_v6) + int32(0)) - _v284 = *(*int32)(unsafe.Pointer(uintptr(_v283))) - _v285 = int32(int32(_v284) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v283))) = _v285 - goto l29 -l32: - - _ = crt.Xprintf(t, int32(uintptr(unsafe.Pointer(&s__138))), 0) - - _ = crt.Xprintf(t, int32(uintptr(unsafe.Pointer(&s__159))), 0) - _v291 = int32(int32(_v6) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v291))) = 0 - goto l33 -l33: - _v292 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v293 = Xsqlite3_compileoption_get(t, _v292) - _v294 = int32(int32(_v12) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v294))) = _v293 - _v295 = *(*int32)(unsafe.Pointer(uintptr(_v294))) - _v297 = crt.Bool32(int32(_v295) != int32(0)) - if _v297 != 0 { - goto l34 - } - goto l36 -l34: - _v299 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - *(*int32)(unsafe.Pointer(bp + 80)) = _v299 - - _ = crt.Xprintf(t, int32(uintptr(unsafe.Pointer(&s__160))), bp+80) - goto l35 -l35: - _v301 = int32(int32(_v6) + int32(0)) - _v302 = *(*int32)(unsafe.Pointer(uintptr(_v301))) - _v303 = int32(int32(_v302) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v301))) = _v303 - goto l33 -l36: - _v304 = *(*int32)(unsafe.Pointer(&crt.Xstdout)) - _ = crt.Xfflush(t, _v304) - goto l37 -l37: - _v307 = int32(int32(_v4) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v307))) = 0 - goto l38 -l38: - _v308 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - _v310 = int32(int32(_v308) % int32(5)) - _v312 = crt.Bool32(int32(_v310) == int32(4)) - if _v312 != 0 { - goto l39 - } - goto l145 -l145: - goto l46 -l39: - _v314 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - _v316 = crt.Bool32(int32(_v314) > int32(5)) - goto l40 -l40: - if _v316 != 0 { - goto l41 - } - goto l43 -l41: - goto l42 -l42: - _v319 = int32(uintptr(unsafe.Pointer(&s__162))) - goto l45 -l43: - goto l44 -l44: - _v319 = int32(uintptr(unsafe.Pointer(&s__85))) - goto l45 -l45: - _v322 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) - *(*int32)(unsafe.Pointer(bp + 88)) = _v319 - - *(*int32)(unsafe.Pointer(bp + 96)) = _v322 - - _ = crt.Xprintf(t, int32(uintptr(unsafe.Pointer(&s__161))), bp+88) - goto l46 -l46: - _v326 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) - _v327 = crt.Xunlink(t, _v326) - _v328 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v328))) = _v327 - _v329 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - goto l47 -l47: - if _v329 != 0 { - goto l48 - } - goto l146 -l146: - _v334 = 0 - goto l51 -l48: - _v330 = crt.X__errno_location(t) - _v331 = *(*int32)(unsafe.Pointer(uintptr(_v330))) - _v333 = crt.Bool32(int32(_v331) == int32(2)) - goto l49 -l49: - if _v333 != 0 { - goto l50 - } - goto l147 -l147: - _v334 = 0 - goto l51 -l50: - _v334 = 1 - goto l51 -l51: - if _v334 != 0 { - goto l52 - } - goto l53 -l52: - _v336 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v336))) = 0 - goto l53 -l53: - goto l54 -l54: - _v337 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v339 = crt.Bool32(int32(_v337) != int32(0)) - goto l55 -l55: - if _v339 != 0 { - goto l56 - } - goto l148 -l148: - _v346 = 0 - goto l59 -l56: - _v340 = int32(int32(_v19) + int32(0)) - _v341 = *(*int32)(unsafe.Pointer(uintptr(_v340))) - _v342 = int32(int32(_v341) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v340))) = _v342 - _v343 = *(*int32)(unsafe.Pointer(uintptr(_v340))) - _v345 = crt.Bool32(int32(_v343) < int32(60)) - goto l57 -l57: - if _v345 != 0 { - goto l58 - } - goto l149 -l149: - _v346 = 0 - goto l59 -l58: - _v346 = 1 - goto l59 -l59: - goto l60 -l60: - if _v346 != 0 { - goto l61 - } - goto l150 -l150: - _v351 = 0 - goto l64 -l61: - _v348 = Xsqlite3_sleep(t, 1000) - _v350 = crt.Bool32(int32(_v348) > int32(0)) - goto l62 -l62: - if _v350 != 0 { - goto l63 - } - goto l151 -l151: - _v351 = 0 - goto l64 -l63: - _v351 = 1 - goto l64 -l64: - if _v351 != 0 { - goto l152 - } - goto l65 -l152: - goto l38 -l65: - _v352 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v354 = crt.Bool32(int32(_v352) != int32(0)) - if _v354 != 0 { - goto l66 - } - goto l67 -l66: - _v358 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) - _v359 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - *(*int32)(unsafe.Pointer(bp + 104)) = _v358 - - *(*int32)(unsafe.Pointer(bp + 112)) = _v359 - s_fatalError(t, int32(uintptr(unsafe.Pointer(&s__163))), bp+104) - goto l67 -l67: - _v361 = int32(int32(_v7) + int32(0)) - _v362 = *(*int32)(unsafe.Pointer(uintptr(_v361))) - _v363 = int32(_v362 | 4) - *(*int32)(unsafe.Pointer(uintptr(_v361))) = _v363 - goto l68 -l68: - _v366 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) - _v369 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v372 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 4)) - _v373 = Xsqlite3_open_v2(t, _v366, int32(uintptr(unsafe.Pointer(&s_g))+12), _v369, _v372) - _v374 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v374))) = _v373 - _v375 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - if _v375 != 0 { - goto l69 - } - goto l70 -l69: - _v379 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) - *(*int32)(unsafe.Pointer(bp + 120)) = _v379 - s_fatalError(t, int32(uintptr(unsafe.Pointer(&s__164))), bp+120) - goto l70 -l70: - _v380 = *(*int32)(unsafe.Pointer(uintptr(_v17))) - _v382 = crt.Bool32(int32(_v380) > int32(0)) - if _v382 != 0 { - goto l71 - } - goto l72 -l71: - _v385 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _v386 = *(*int32)(unsafe.Pointer(uintptr(_v17))) - _ = Xsqlite3_busy_timeout(t, _v385, _v386) - goto l72 -l72: - _v388 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - if _v388 != 0 { - goto l73 - } - goto l74 -l73: - _v390 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - *(*int32)(unsafe.Pointer(bp + 128)) = _v390 - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__165))), bp+128) - goto l74 -l74: - _v393 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 92)) - goto l75 -l75: - if _v393 != 0 { - goto l76 - } - goto l153 -l153: - _v394 = 1 - goto l77 -l76: - _v394 = 0 - goto l77 -l77: - if _v394 != 0 { - goto l78 - } - goto l79 -l78: - - _ = s_trySql(t, int32(uintptr(unsafe.Pointer(&s__166))), 0) - goto l79 -l79: - _v399 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _ = Xsqlite3_enable_load_extension(t, _v399, 1) - _v404 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _ = Xsqlite3_busy_handler(t, _v404, *(*int32)(unsafe.Pointer(&struct { - f func(*crt.TLS, int32, int32) int32 - }{s_busyHandler})), 0) - _v410 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _ = Xsqlite3_create_function(t, _v410, int32(uintptr(unsafe.Pointer(&s__167))), 0, 1, 0, *(*int32)(unsafe.Pointer(&struct { - f func(*crt.TLS, int32, int32, int32) - }{s_vfsNameFunc})), 0, 0) - _v421 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _ = Xsqlite3_create_function(t, _v421, int32(uintptr(unsafe.Pointer(&s__168))), 1, 1, 0, *(*int32)(unsafe.Pointer(&struct { - f func(*crt.TLS, int32, int32, int32) - }{s_evalFunc})), 0, 0) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) = 10000 - _v435 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 72)) - if _v435 != 0 { - goto l80 - } - goto l81 -l80: - _v438 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _ = Xsqlite3_trace(t, _v438, *(*int32)(unsafe.Pointer(&struct{ f func(*crt.TLS, int32, int32) }{s_sqlTraceCallback})), 0) - goto l81 -l81: - _v442 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v444 = crt.Bool32(int32(_v442) > int32(0)) - if _v444 != 0 { - goto l82 - } - goto l99 -l82: - _v445 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v447 = crt.Bool32(int32(_v445) > int32(0)) - if _v447 != 0 { - goto l83 - } - goto l84 -l83: - _v451 = int32(int32(_v2) + int32(0)) - _v452 = *(*int32)(unsafe.Pointer(uintptr(_v451))) - _v453 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v457 = int32(int32(_v2) + int32(8)) - s_unrecognizedArguments(t, _v452, _v453, _v457) - goto l84 -l84: - _v460 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - if _v460 != 0 { - goto l85 - } - goto l86 -l85: - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__169))), 0) - goto l86 -l86: - goto l87 -l87: - if 1 != 0 { - goto l88 - } - goto l96 -l88: - *(*int32)(unsafe.Pointer(uintptr(_v20))) = 0 - _v464 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v465 = int32(int32(_v9) + int32(0)) - _v466 = int32(int32(_v10) + int32(0)) - _v467 = int32(int32(_v20) + int32(0)) - _v468 = s_startScript(t, _v464, _v465, _v466, _v467) - _v469 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v469))) = _v468 - _v470 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v472 = crt.Bool32(int32(_v470) == int32(101)) - if _v472 != 0 { - goto l89 - } - goto l91 -l89: - goto l96 -l91: - _v475 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - if _v475 != 0 { - goto l92 - } - goto l93 -l92: - _v477 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v478 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - *(*int32)(unsafe.Pointer(bp + 136)) = _v477 - - *(*int32)(unsafe.Pointer(bp + 144)) = _v478 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__170))), bp+136) - goto l93 -l93: - _v479 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v480 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _v481 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v482 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - s_runScript(t, _v479, _v480, _v481, _v482) - _v485 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - if _v485 != 0 { - goto l94 - } - goto l95 -l94: - _v487 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v488 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - *(*int32)(unsafe.Pointer(bp + 152)) = _v487 - - *(*int32)(unsafe.Pointer(bp + 160)) = _v488 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__171))), bp+152) - goto l95 -l95: - _v489 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v490 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _ = s_finishScript(t, _v489, _v490, 0) - _v493 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - Xsqlite3_free(t, _v493) - _ = Xsqlite3_sleep(t, 10) - goto l87 -l96: - _v498 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - if _v498 != 0 { - goto l97 - } - goto l98 -l97: - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__172))), 0) - goto l98 -l98: - goto l135 -l99: - _v500 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v502 = crt.Bool32(int32(_v500) == int32(0)) - if _v502 != 0 { - goto l100 - } - goto l101 -l100: - s_fatalError(t, int32(uintptr(unsafe.Pointer(&s__173))), 0) - goto l101 -l101: - _v504 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v506 = crt.Bool32(int32(_v504) > int32(1)) - if _v506 != 0 { - goto l102 - } - goto l103 -l102: - _v510 = int32(int32(_v2) + int32(0)) - _v511 = *(*int32)(unsafe.Pointer(uintptr(_v510))) - _v512 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v516 = int32(int32(_v2) + int32(8)) - s_unrecognizedArguments(t, _v511, _v512, _v516) - goto l103 -l103: - s_runSql(t, int32(uintptr(unsafe.Pointer(&s__174))), 0) - _v521 = int32(int32(_v2) + int32(8)) - _v522 = *(*int32)(unsafe.Pointer(uintptr(_v521))) - _v523 = s_readFile(t, _v522) - _v524 = int32(int32(_v9) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v524))) = _v523 - _v526 = int32(int32(_v16) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v526))) = 1 - goto l104 -l104: - _v527 = *(*int32)(unsafe.Pointer(uintptr(_v16))) - _v528 = *(*int32)(unsafe.Pointer(uintptr(_v15))) - _v529 = crt.Bool32(int32(_v527) <= int32(_v528)) - if _v529 != 0 { - goto l105 - } - goto l111 -l105: - _v532 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - if _v532 != 0 { - goto l106 - } - goto l107 -l106: - _v537 = int32(int32(_v2) + int32(8)) - _v538 = *(*int32)(unsafe.Pointer(uintptr(_v537))) - _v539 = *(*int32)(unsafe.Pointer(uintptr(_v16))) - *(*int32)(unsafe.Pointer(bp + 168)) = _v538 - - *(*int32)(unsafe.Pointer(bp + 176)) = _v539 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__175))), bp+168) - goto l107 -l107: - _v542 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v546 = int32(int32(_v2) + int32(8)) - _v547 = *(*int32)(unsafe.Pointer(uintptr(_v546))) - s_runScript(t, 0, 0, _v542, _v547) - _v550 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 68)) - if _v550 != 0 { - goto l108 - } - goto l109 -l108: - _v555 = int32(int32(_v2) + int32(8)) - _v556 = *(*int32)(unsafe.Pointer(uintptr(_v555))) - _v557 = *(*int32)(unsafe.Pointer(uintptr(_v16))) - *(*int32)(unsafe.Pointer(bp + 184)) = _v556 - - *(*int32)(unsafe.Pointer(bp + 192)) = _v557 - s_logMessage(t, int32(uintptr(unsafe.Pointer(&s__176))), bp+184) - goto l109 -l109: - goto l110 -l110: - _v558 = int32(int32(_v16) + int32(0)) - _v559 = *(*int32)(unsafe.Pointer(uintptr(_v558))) - _v560 = int32(int32(_v559) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v558))) = _v560 - goto l104 -l111: - _v561 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - Xsqlite3_free(t, _v561) - s_waitForClient(t, 0, 2000, int32(uintptr(unsafe.Pointer(&s__177)))) - - _ = s_trySql(t, int32(uintptr(unsafe.Pointer(&s__178))), 0) - _ = Xsqlite3_sleep(t, 10) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 88)) = 0 - _v573 = int32(int32(_v22) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v573))) = 1000 - goto l112 -l112: - - _v575 = s_trySql(t, int32(uintptr(unsafe.Pointer(&s__179))), 0) - _v576 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v576))) = _v575 - _v577 = *(*int32)(unsafe.Pointer(uintptr(_v576))) - _v579 = crt.Bool32(int32(_v577) == int32(5)) - goto l113 -l113: - if _v579 != 0 { - goto l154 - } - goto l114 -l154: - _v583 = 1 - goto l117 -l114: - _v580 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v582 = crt.Bool32(int32(_v580) == int32(100)) - goto l115 -l115: - if _v582 != 0 { - goto l155 - } - goto l116 -l155: - _v583 = 1 - goto l117 -l116: - _v583 = 0 - goto l117 -l117: - goto l118 -l118: - if _v583 != 0 { - goto l119 - } - goto l156 -l156: - _v587 = 0 - goto l122 -l119: - _v584 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v586 = crt.Bool32(int32(_v584) > int32(0)) - goto l120 -l120: - if _v586 != 0 { - goto l121 - } - goto l157 -l157: - _v587 = 0 - goto l122 -l121: - _v587 = 1 - goto l122 -l122: - if _v587 != 0 { - goto l123 - } - goto l124 -l123: - _ = Xsqlite3_sleep(t, 10) - _v591 = int32(int32(_v22) + int32(0)) - _v592 = *(*int32)(unsafe.Pointer(uintptr(_v591))) - _v593 = int32(int32(_v592) - int32(10)) - *(*int32)(unsafe.Pointer(uintptr(_v591))) = _v593 - goto l112 -l124: - _ = Xsqlite3_sleep(t, 100) - - _v597 = s_prepareSql(t, int32(uintptr(unsafe.Pointer(&s__180))), 0) - _v598 = int32(int32(_v21) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v598))) = _v597 - _v600 = int32(int32(_v22) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v600))) = 1000 - goto l125 -l125: - _v601 = *(*int32)(unsafe.Pointer(uintptr(_v21))) - _v602 = Xsqlite3_step(t, _v601) - _v603 = int32(int32(_v8) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v603))) = _v602 - _v604 = *(*int32)(unsafe.Pointer(uintptr(_v603))) - _v606 = crt.Bool32(int32(_v604) == int32(5)) - goto l126 -l126: - if _v606 != 0 { - goto l127 - } - goto l158 -l158: - _v610 = 0 - goto l130 -l127: - _v607 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v609 = crt.Bool32(int32(_v607) > int32(0)) - goto l128 -l128: - if _v609 != 0 { - goto l129 - } - goto l159 -l159: - _v610 = 0 - goto l130 -l129: - _v610 = 1 - goto l130 -l130: - if _v610 != 0 { - goto l131 - } - goto l132 -l131: - _ = Xsqlite3_sleep(t, 10) - _v614 = int32(int32(_v22) + int32(0)) - _v615 = *(*int32)(unsafe.Pointer(uintptr(_v614))) - _v616 = int32(int32(_v615) - int32(10)) - *(*int32)(unsafe.Pointer(uintptr(_v614))) = _v616 - goto l125 -l132: - _v617 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v619 = crt.Bool32(int32(_v617) == int32(100)) - if _v619 != 0 { - goto l133 - } - goto l134 -l133: - _v620 = *(*int32)(unsafe.Pointer(uintptr(_v21))) - _v622 = Xsqlite3_column_int(t, _v620, 0) - _v625 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 80)) - _v626 = int32(int32(_v625) + int32(_v622)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 80)) = _v626 - _v627 = *(*int32)(unsafe.Pointer(uintptr(_v21))) - _v629 = Xsqlite3_column_int(t, _v627, 1) - _v632 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 84)) - _v633 = int32(int32(_v632) + int32(_v629)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 84)) = _v633 - goto l134 -l134: - _v634 = *(*int32)(unsafe.Pointer(uintptr(_v21))) - _ = Xsqlite3_finalize(t, _v634) - goto l135 -l135: - _v638 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 12)) - _ = Xsqlite3_close(t, _v638) - _v642 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 28)) - s_maybeClose(t, _v642) - _v645 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 20)) - s_maybeClose(t, _v645) - _v646 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v648 = crt.Bool32(int32(_v646) == int32(0)) - if _v648 != 0 { - goto l136 - } - goto l141 -l136: - _v652 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 80)) - _v655 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 84)) - *(*int32)(unsafe.Pointer(bp + 200)) = _v652 - - *(*int32)(unsafe.Pointer(bp + 208)) = _v655 - - _ = crt.Xprintf(t, int32(uintptr(unsafe.Pointer(&s__181))), bp+200) - _v661 = int32(int32(_v2) + int32(0)) - _v662 = *(*int32)(unsafe.Pointer(uintptr(_v661))) - *(*int32)(unsafe.Pointer(bp + 216)) = _v662 - - _ = crt.Xprintf(t, int32(uintptr(unsafe.Pointer(&s__182))), bp+216) - _v665 = int32(int32(_v6) + int32(0)) - *(*int32)(unsafe.Pointer(uintptr(_v665))) = 1 - goto l137 -l137: - _v666 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v668 = crt.Bool32(int32(_v666) < int32(_v1)) - if _v668 != 0 { - goto l138 - } - goto l140 -l138: - _v670 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v671 = int32(_v670 * 4) - _v673 = int32(int32(_v2) + int32(_v671)) - _v674 = *(*int32)(unsafe.Pointer(uintptr(_v673))) - *(*int32)(unsafe.Pointer(bp + 224)) = _v674 - - _ = crt.Xprintf(t, int32(uintptr(unsafe.Pointer(&s__137))), bp+224) - goto l139 -l139: - _v676 = int32(int32(_v6) + int32(0)) - _v677 = *(*int32)(unsafe.Pointer(uintptr(_v676))) - _v678 = int32(int32(_v677) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v676))) = _v678 - goto l137 -l140: - - _ = crt.Xprintf(t, int32(uintptr(unsafe.Pointer(&s__138))), 0) - goto l141 -l141: - _v683 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 80)) - _v685 = crt.Bool32(int32(_v683) > int32(0)) - return _v685 -} - -var s__139 = [5]byte{0x6d, 0x61, 0x69, 0x6e} - -var s__140 = [7]byte{0x2a, 0x2e, 0x74, 0x65, 0x73, 0x74} - -var s__141 = [85]byte{ - 0x32, 0x30, 0x31, 0x39, 0x2d, 0x31, 0x30, 0x2d, 0x31, 0x30, 0x20, 0x32, 0x30, 0x3a, 0x31, 0x39, - 0x3a, 0x34, 0x35, 0x20, 0x31, 0x38, 0x64, 0x62, 0x30, 0x33, 0x32, 0x64, 0x30, 0x35, 0x38, 0x66, - 0x31, 0x34, 0x33, 0x36, 0x63, 0x65, 0x33, 0x64, 0x65, 0x61, 0x38, 0x34, 0x30, 0x38, 0x31, 0x66, - 0x34, 0x65, 0x65, 0x35, 0x61, 0x30, 0x66, 0x32, 0x32, 0x35, 0x39, 0x61, 0x64, 0x39, 0x37, 0x33, - 0x30, 0x31, 0x64, 0x34, 0x33, 0x63, 0x34, 0x32, 0x36, 0x62, 0x63, 0x37, 0x66, 0x33, 0x64, 0x66, - 0x31, 0x62, 0x30, 0x62, -} - -var s__142 = [60]byte{ - 0x53, 0x51, 0x4c, 0x69, 0x74, 0x65, 0x20, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x20, 0x61, - 0x6e, 0x64, 0x20, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x20, 0x6d, 0x69, 0x73, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x0a, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x3a, 0x20, 0x25, 0x73, 0x0a, 0x48, - 0x65, 0x61, 0x64, 0x65, 0x72, 0x3a, 0x20, 0x20, 0x25, 0x73, 0x0a, -} - -var s__143 = [12]byte{0x25, 0x30, 0x35, 0x64, 0x2e, 0x6d, 0x70, 0x74, 0x65, 0x73, 0x74} - -var s__144 = [12]byte{0x6a, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x6d, 0x6f, 0x64, 0x65} - -var s__145 = [7]byte{0x72, 0x65, 0x70, 0x65, 0x61, 0x74} - -var s__146 = [4]byte{0x76, 0x66, 0x73} - -var s__147 = [7]byte{0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74} - -var s__148 = [7]byte{0x65, 0x72, 0x72, 0x6c, 0x6f, 0x67} - -var s__149 = [4]byte{0x6c, 0x6f, 0x67} - -var s__150 = [6]byte{0x74, 0x72, 0x61, 0x63, 0x65} - -var s__151 = [6]byte{0x71, 0x75, 0x69, 0x65, 0x74} - -var s__152 = [8]byte{0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74} - -var s__153 = [9]byte{0x73, 0x71, 0x6c, 0x74, 0x72, 0x61, 0x63, 0x65} - -var s__154 = [5]byte{0x73, 0x79, 0x6e, 0x63} - -var s__155 = [2]byte{0x61} - -var s__156 = [27]byte{ - 0x69, 0x6c, 0x6c, 0x65, 0x67, 0x61, 0x6c, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x6e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x3a, 0x20, 0x25, 0x64, 0x0a, -} - -var s__157 = [16]byte{0x25, 0x30, 0x35, 0x64, 0x2e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x25, 0x30, 0x32, 0x64} - -var s__158 = [10]byte{0x42, 0x45, 0x47, 0x49, 0x4e, 0x3a, 0x20, 0x25, 0x73} - -var s__159 = [105]byte{ - 0x57, 0x69, 0x74, 0x68, 0x20, 0x53, 0x51, 0x4c, 0x69, 0x74, 0x65, 0x20, 0x33, 0x2e, 0x33, 0x30, - 0x2e, 0x31, 0x20, 0x32, 0x30, 0x31, 0x39, 0x2d, 0x31, 0x30, 0x2d, 0x31, 0x30, 0x20, 0x32, 0x30, - 0x3a, 0x31, 0x39, 0x3a, 0x34, 0x35, 0x20, 0x31, 0x38, 0x64, 0x62, 0x30, 0x33, 0x32, 0x64, 0x30, - 0x35, 0x38, 0x66, 0x31, 0x34, 0x33, 0x36, 0x63, 0x65, 0x33, 0x64, 0x65, 0x61, 0x38, 0x34, 0x30, - 0x38, 0x31, 0x66, 0x34, 0x65, 0x65, 0x35, 0x61, 0x30, 0x66, 0x32, 0x32, 0x35, 0x39, 0x61, 0x64, - 0x39, 0x37, 0x33, 0x30, 0x31, 0x64, 0x34, 0x33, 0x63, 0x34, 0x32, 0x36, 0x62, 0x63, 0x37, 0x66, - 0x33, 0x64, 0x66, 0x31, 0x62, 0x30, 0x62, 0x0a, -} - -var s__160 = [13]byte{0x2d, 0x44, 0x53, 0x51, 0x4c, 0x49, 0x54, 0x45, 0x5f, 0x25, 0x73, 0x0a} - -var s__161 = [29]byte{ - 0x2e, 0x2e, 0x2e, 0x20, 0x25, 0x73, 0x74, 0x72, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, - 0x75, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x27, 0x25, 0x73, 0x27, 0x0a, -} - -var s__162 = [7]byte{0x73, 0x74, 0x69, 0x6c, 0x6c, 0x20} - -var s__163 = [41]byte{ - 0x75, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x75, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, - 0x20, 0x27, 0x25, 0x73, 0x27, 0x20, 0x61, 0x66, 0x74, 0x65, 0x72, 0x20, 0x25, 0x64, 0x20, 0x61, - 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x0a, -} - -var s__164 = [17]byte{0x63, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x20, 0x6f, 0x70, 0x65, 0x6e, 0x20, 0x5b, 0x25, 0x73, 0x5d} - -var s__165 = [24]byte{ - 0x50, 0x52, 0x41, 0x47, 0x4d, 0x41, 0x20, 0x6a, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, - 0x6f, 0x64, 0x65, 0x3d, 0x25, 0x51, 0x3b, -} - -var s__166 = [23]byte{ - 0x50, 0x52, 0x41, 0x47, 0x4d, 0x41, 0x20, 0x73, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x6f, - 0x75, 0x73, 0x3d, 0x4f, 0x46, 0x46, -} - -var s__167 = [8]byte{0x76, 0x66, 0x73, 0x6e, 0x61, 0x6d, 0x65} - -var s__168 = [5]byte{0x65, 0x76, 0x61, 0x6c} - -var s__169 = [13]byte{0x73, 0x74, 0x61, 0x72, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74} - -var s__170 = [14]byte{0x62, 0x65, 0x67, 0x69, 0x6e, 0x20, 0x25, 0x73, 0x20, 0x28, 0x25, 0x64, 0x29} - -var s__171 = [12]byte{0x65, 0x6e, 0x64, 0x20, 0x25, 0x73, 0x20, 0x28, 0x25, 0x64, 0x29} - -var s__172 = [11]byte{0x65, 0x6e, 0x64, 0x2d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74} - -var s__173 = [24]byte{ - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x66, - 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, -} - -var s__174 = [436]byte{ - 0x44, 0x52, 0x4f, 0x50, 0x20, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x20, 0x49, 0x46, 0x20, 0x45, 0x58, - 0x49, 0x53, 0x54, 0x53, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x3b, 0x0a, 0x44, 0x52, 0x4f, 0x50, 0x20, - 0x54, 0x41, 0x42, 0x4c, 0x45, 0x20, 0x49, 0x46, 0x20, 0x45, 0x58, 0x49, 0x53, 0x54, 0x53, 0x20, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x3b, 0x0a, 0x44, 0x52, 0x4f, 0x50, 0x20, 0x54, - 0x41, 0x42, 0x4c, 0x45, 0x20, 0x49, 0x46, 0x20, 0x45, 0x58, 0x49, 0x53, 0x54, 0x53, 0x20, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x3b, 0x0a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x20, 0x54, 0x41, - 0x42, 0x4c, 0x45, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x28, 0x0a, 0x20, 0x20, 0x69, 0x64, 0x20, 0x49, - 0x4e, 0x54, 0x45, 0x47, 0x45, 0x52, 0x20, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x20, 0x4b, - 0x45, 0x59, 0x2c, 0x0a, 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x54, 0x45, 0x58, 0x54, 0x2c, - 0x0a, 0x20, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x49, 0x4e, 0x54, 0x45, 0x47, 0x45, - 0x52, 0x2c, 0x0a, 0x20, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x44, - 0x41, 0x54, 0x45, 0x2c, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x44, - 0x41, 0x54, 0x45, 0x2c, 0x0a, 0x20, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x54, 0x45, - 0x58, 0x54, 0x0a, 0x29, 0x3b, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x20, 0x49, 0x4e, 0x44, 0x45, - 0x58, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x31, 0x20, 0x4f, 0x4e, 0x20, 0x74, 0x61, 0x73, - 0x6b, 0x28, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, - 0x69, 0x6d, 0x65, 0x29, 0x3b, 0x0a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x20, 0x49, 0x4e, 0x44, - 0x45, 0x58, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x32, 0x20, 0x4f, 0x4e, 0x20, 0x74, 0x61, - 0x73, 0x6b, 0x28, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x65, 0x6e, 0x64, 0x74, 0x69, - 0x6d, 0x65, 0x29, 0x3b, 0x0a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x20, 0x54, 0x41, 0x42, 0x4c, - 0x45, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x28, 0x6e, 0x45, 0x72, 0x72, 0x6f, - 0x72, 0x2c, 0x6e, 0x54, 0x65, 0x73, 0x74, 0x29, 0x3b, 0x0a, 0x49, 0x4e, 0x53, 0x45, 0x52, 0x54, - 0x20, 0x49, 0x4e, 0x54, 0x4f, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x20, 0x56, - 0x41, 0x4c, 0x55, 0x45, 0x53, 0x28, 0x30, 0x2c, 0x30, 0x29, 0x3b, 0x0a, 0x43, 0x52, 0x45, 0x41, - 0x54, 0x45, 0x20, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x28, - 0x69, 0x64, 0x20, 0x49, 0x4e, 0x54, 0x45, 0x47, 0x45, 0x52, 0x20, 0x50, 0x52, 0x49, 0x4d, 0x41, - 0x52, 0x59, 0x20, 0x4b, 0x45, 0x59, 0x2c, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x48, 0x61, 0x6c, 0x74, - 0x29, 0x3b, 0x0a, -} - -var s__175 = [28]byte{ - 0x62, 0x65, 0x67, 0x69, 0x6e, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x5b, 0x25, 0x73, - 0x5d, 0x20, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x20, 0x25, 0x64, 0x0a, -} - -var s__176 = [26]byte{ - 0x65, 0x6e, 0x64, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x5b, 0x25, 0x73, 0x5d, 0x20, - 0x63, 0x79, 0x63, 0x6c, 0x65, 0x20, 0x25, 0x64, 0x0a, -} - -var s__177 = [20]byte{ - 0x64, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x2e, - 0x2e, 0x2e, 0x0a, -} - -var s__178 = [29]byte{ - 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x53, 0x45, - 0x54, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x48, 0x61, 0x6c, 0x74, 0x3d, 0x31, -} - -var s__179 = [21]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x31, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, -} - -var s__180 = [35]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x2c, 0x20, 0x6e, - 0x54, 0x65, 0x73, 0x74, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, - 0x72, 0x73, -} - -var s__181 = [36]byte{ - 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x3a, 0x20, 0x25, 0x64, 0x20, 0x65, 0x72, 0x72, 0x6f, - 0x72, 0x73, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x64, 0x20, 0x74, 0x65, 0x73, - 0x74, 0x73, 0x0a, -} - -var s__182 = [8]byte{0x45, 0x4e, 0x44, 0x3a, 0x20, 0x25, 0x73} diff --git a/internal/mptest/main_linux_amd64.go b/internal/mptest/main_linux_amd64.go index 6e49ffa..5a1b4c6 100644 --- a/internal/mptest/main_linux_amd64.go +++ b/internal/mptest/main_linux_amd64.go @@ -1,10228 +1,4719 @@ -// Code generated by `gocc testdata/sqlite-src-3300100/mptest/mptest.c -o internal/mptest/main_linux_amd64.go -Itestdata/sqlite-amalgamation-3300100 -qbec-dot-import modernc.org/sqlite/internal/bin -qbec-static-prefix s_ -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_DQS=0 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MAX_EXPR_DEPTH=0 -DSQLITE_MAX_MMAP_SIZE=0 -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OMIT_DECLTYPE -DSQLITE_OMIT_PROGRESS_CALLBACK -DSQLITE_OMIT_SHARED_CACHE -DSQLITE_THREADSAFE=2 -DSQLITE_USE_ALLOCA`, DO NOT EDIT. +// Code generated by 'ccgo -o internal/mptest/main_linux_amd64.go testdata/sqlite-src-3320300/mptest/mptest.c -Itestdata/sqlite-amalgamation-3320300 -l modernc.org/sqlite/lib -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_DQS=0 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MAX_EXPR_DEPTH=0 -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_OMIT_DECLTYPE -DSQLITE_OMIT_PROGRESS_CALLBACK -DSQLITE_OMIT_UTF16 -DSQLITE_TEST -DSQLITE_THREADSAFE=2 -ccgo-long-double-is-double', DO NOT EDIT. package main import ( - . "modernc.org/sqlite/internal/bin" -) - -import ( "math" - "modernc.org/crt/v2" + "reflect" "unsafe" -) -var ( - _ *crt.TLS - _ = math.Pi - _ = unsafe.Sizeof(0) + "modernc.org/crt/v3" + "modernc.org/sqlite/lib" ) -func main() { crt.Start(Xmain) } - -var s__1 = [11]byte{0x5f, 0x5f, 0x62, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x31, 0x36} - -var s__2 = [11]byte{0x5f, 0x5f, 0x62, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x33, 0x32} - -var s__3 = [11]byte{0x5f, 0x5f, 0x62, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x36, 0x34} - -var s__4 = [18]byte{ - 0x5f, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x31, 0x36, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, +var _ = math.Pi +var _ reflect.Kind +var _ unsafe.Pointer + +func main() { crt.Start(main1) } + +type ptrdiff_t = int64 /* <builtin>:3:26 */ + +type size_t = uint64 /* <builtin>:9:23 */ + +type wchar_t = int32 /* <builtin>:15:24 */ + +// Define the standard macros for the user, +// if this invocation was from the user program. + +// Define va_list, if desired, from __gnuc_va_list. +// We deliberately do not define va_list when called from +// stdio.h, because ANSI C says that stdio.h is not supposed to define +// va_list. stdio.h needs to have access to that data type, +// but must not use that name. It should use the name __gnuc_va_list, +// which is safe because it is reserved for the implementation. + +// The macro _VA_LIST_ is the same thing used by this file in Ultrix. +// But on BSD NET2 we must not test or define or undef it. +// (Note that the comments in NET 2's ansi.h +// are incorrect for _VA_LIST_--see stdio.h!) +// The macro _VA_LIST_DEFINED is used in Windows NT 3.5 +// The macro _VA_LIST is used in SCO Unix 3.2. +// The macro _VA_LIST_T_H is used in the Bull dpx2 +// The macro __va_list__ is used by BeOS. +type va_list = uintptr /* stdarg.h:99:24 */ + +// CAPI3REF: 64-Bit Integer Types +// KEYWORDS: sqlite_int64 sqlite_uint64 +// +// Because there is no cross-platform way to specify 64-bit integer types +// SQLite includes typedefs for 64-bit signed and unsigned integers. +// +// The sqlite3_int64 and sqlite3_uint64 are the preferred type definitions. +// The sqlite_int64 and sqlite_uint64 types are supported for backwards +// compatibility only. +// +// ^The sqlite3_int64 and sqlite_int64 types can store integer values +// between -9223372036854775808 and +9223372036854775807 inclusive. ^The +// sqlite3_uint64 and sqlite_uint64 types can store integer values +// between 0 and +18446744073709551615 inclusive. +type sqlite_int64 = int64 /* sqlite3.h:278:25 */ +type sqlite_uint64 = uint64 /* sqlite3.h:279:34 */ +type sqlite3_int64 = sqlite_int64 /* sqlite3.h:281:22 */ +type sqlite3_uint64 = sqlite_uint64 /* sqlite3.h:282:23 */ + +// The type for a callback function. +// This is legacy and deprecated. It is included for historical +// compatibility and is not documented. +type sqlite3_callback = uintptr /* sqlite3.h:338:13 */ + +// CAPI3REF: Result Codes +// KEYWORDS: {result code definitions} +// +// Many SQLite functions return an integer result code from the set shown +// here in order to indicate success or failure. +// +// New error codes may be added in future versions of SQLite. +// +// See also: [extended result code definitions] +// beginning-of-error-codes +// end-of-error-codes + +// CAPI3REF: Extended Result Codes +// KEYWORDS: {extended result code definitions} +// +// In its default configuration, SQLite API routines return one of 30 integer +// [result codes]. However, experience has shown that many of +// these result codes are too coarse-grained. They do not provide as +// much information about problems as programmers might like. In an effort to +// address this, newer versions of SQLite (version 3.3.8 [dateof:3.3.8] +// and later) include +// support for additional result codes that provide more detailed information +// about errors. These [extended result codes] are enabled or disabled +// on a per database connection basis using the +// [sqlite3_extended_result_codes()] API. Or, the extended code for +// the most recent error can be obtained using +// [sqlite3_extended_errcode()]. + +// CAPI3REF: Flags For File Open Operations +// +// These bit values are intended for use in the +// 3rd parameter to the [sqlite3_open_v2()] interface and +// in the 4th parameter to the [sqlite3_vfs.xOpen] method. + +// Reserved: 0x00F00000 + +// CAPI3REF: Device Characteristics +// +// The xDeviceCharacteristics method of the [sqlite3_io_methods] +// object returns an integer which is a vector of these +// bit values expressing I/O characteristics of the mass storage +// device that holds the file that the [sqlite3_io_methods] +// refers to. +// +// The SQLITE_IOCAP_ATOMIC property means that all writes of +// any size are atomic. The SQLITE_IOCAP_ATOMICnnn values +// mean that writes of blocks that are nnn bytes in size and +// are aligned to an address which is an integer multiple of +// nnn are atomic. The SQLITE_IOCAP_SAFE_APPEND value means +// that when data is appended to a file, the data is appended +// first then the size of the file is extended, never the other +// way around. The SQLITE_IOCAP_SEQUENTIAL property means that +// information is written to disk in the same order as calls +// to xWrite(). The SQLITE_IOCAP_POWERSAFE_OVERWRITE property means that +// after reboot following a crash or power loss, the only bytes in a +// file that were written at the application level might have changed +// and that adjacent bytes, even bytes within the same sector are +// guaranteed to be unchanged. The SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN +// flag indicates that a file cannot be deleted when open. The +// SQLITE_IOCAP_IMMUTABLE flag indicates that the file is on +// read-only media and cannot be changed even by processes with +// elevated privileges. +// +// The SQLITE_IOCAP_BATCH_ATOMIC property means that the underlying +// filesystem supports doing multiple write operations atomically when those +// write operations are bracketed by [SQLITE_FCNTL_BEGIN_ATOMIC_WRITE] and +// [SQLITE_FCNTL_COMMIT_ATOMIC_WRITE]. + +// CAPI3REF: File Locking Levels +// +// SQLite uses one of these integer values as the second +// argument to calls it makes to the xLock() and xUnlock() methods +// of an [sqlite3_io_methods] object. + +// CAPI3REF: Synchronization Type Flags +// +// When SQLite invokes the xSync() method of an +// [sqlite3_io_methods] object it uses a combination of +// these integer values as the second argument. +// +// When the SQLITE_SYNC_DATAONLY flag is used, it means that the +// sync operation only needs to flush data to mass storage. Inode +// information need not be flushed. If the lower four bits of the flag +// equal SQLITE_SYNC_NORMAL, that means to use normal fsync() semantics. +// If the lower four bits equal SQLITE_SYNC_FULL, that means +// to use Mac OS X style fullsync instead of fsync(). +// +// Do not confuse the SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL flags +// with the [PRAGMA synchronous]=NORMAL and [PRAGMA synchronous]=FULL +// settings. The [synchronous pragma] determines when calls to the +// xSync VFS method occur and applies uniformly across all platforms. +// The SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL flags determine how +// energetic or rigorous or forceful the sync operations are and +// only make a difference on Mac OSX for the default SQLite code. +// (Third-party VFS implementations might also make the distinction +// between SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL, but among the +// operating systems natively supported by SQLite, only Mac OSX +// cares about the difference.) + +// CAPI3REF: OS Interface Open File Handle +// +// An [sqlite3_file] object represents an open file in the +// [sqlite3_vfs | OS interface layer]. Individual OS interface +// implementations will +// want to subclass this object by appending additional fields +// for their own use. The pMethods entry is a pointer to an +// [sqlite3_io_methods] object that defines methods for performing +// I/O operations on the open file. +type sqlite3_file1 = struct{ pMethods uintptr } + +// CAPI3REF: Result Codes +// KEYWORDS: {result code definitions} +// +// Many SQLite functions return an integer result code from the set shown +// here in order to indicate success or failure. +// +// New error codes may be added in future versions of SQLite. +// +// See also: [extended result code definitions] +// beginning-of-error-codes +// end-of-error-codes + +// CAPI3REF: Extended Result Codes +// KEYWORDS: {extended result code definitions} +// +// In its default configuration, SQLite API routines return one of 30 integer +// [result codes]. However, experience has shown that many of +// these result codes are too coarse-grained. They do not provide as +// much information about problems as programmers might like. In an effort to +// address this, newer versions of SQLite (version 3.3.8 [dateof:3.3.8] +// and later) include +// support for additional result codes that provide more detailed information +// about errors. These [extended result codes] are enabled or disabled +// on a per database connection basis using the +// [sqlite3_extended_result_codes()] API. Or, the extended code for +// the most recent error can be obtained using +// [sqlite3_extended_errcode()]. + +// CAPI3REF: Flags For File Open Operations +// +// These bit values are intended for use in the +// 3rd parameter to the [sqlite3_open_v2()] interface and +// in the 4th parameter to the [sqlite3_vfs.xOpen] method. + +// Reserved: 0x00F00000 + +// CAPI3REF: Device Characteristics +// +// The xDeviceCharacteristics method of the [sqlite3_io_methods] +// object returns an integer which is a vector of these +// bit values expressing I/O characteristics of the mass storage +// device that holds the file that the [sqlite3_io_methods] +// refers to. +// +// The SQLITE_IOCAP_ATOMIC property means that all writes of +// any size are atomic. The SQLITE_IOCAP_ATOMICnnn values +// mean that writes of blocks that are nnn bytes in size and +// are aligned to an address which is an integer multiple of +// nnn are atomic. The SQLITE_IOCAP_SAFE_APPEND value means +// that when data is appended to a file, the data is appended +// first then the size of the file is extended, never the other +// way around. The SQLITE_IOCAP_SEQUENTIAL property means that +// information is written to disk in the same order as calls +// to xWrite(). The SQLITE_IOCAP_POWERSAFE_OVERWRITE property means that +// after reboot following a crash or power loss, the only bytes in a +// file that were written at the application level might have changed +// and that adjacent bytes, even bytes within the same sector are +// guaranteed to be unchanged. The SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN +// flag indicates that a file cannot be deleted when open. The +// SQLITE_IOCAP_IMMUTABLE flag indicates that the file is on +// read-only media and cannot be changed even by processes with +// elevated privileges. +// +// The SQLITE_IOCAP_BATCH_ATOMIC property means that the underlying +// filesystem supports doing multiple write operations atomically when those +// write operations are bracketed by [SQLITE_FCNTL_BEGIN_ATOMIC_WRITE] and +// [SQLITE_FCNTL_COMMIT_ATOMIC_WRITE]. + +// CAPI3REF: File Locking Levels +// +// SQLite uses one of these integer values as the second +// argument to calls it makes to the xLock() and xUnlock() methods +// of an [sqlite3_io_methods] object. + +// CAPI3REF: Synchronization Type Flags +// +// When SQLite invokes the xSync() method of an +// [sqlite3_io_methods] object it uses a combination of +// these integer values as the second argument. +// +// When the SQLITE_SYNC_DATAONLY flag is used, it means that the +// sync operation only needs to flush data to mass storage. Inode +// information need not be flushed. If the lower four bits of the flag +// equal SQLITE_SYNC_NORMAL, that means to use normal fsync() semantics. +// If the lower four bits equal SQLITE_SYNC_FULL, that means +// to use Mac OS X style fullsync instead of fsync(). +// +// Do not confuse the SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL flags +// with the [PRAGMA synchronous]=NORMAL and [PRAGMA synchronous]=FULL +// settings. The [synchronous pragma] determines when calls to the +// xSync VFS method occur and applies uniformly across all platforms. +// The SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL flags determine how +// energetic or rigorous or forceful the sync operations are and +// only make a difference on Mac OSX for the default SQLite code. +// (Third-party VFS implementations might also make the distinction +// between SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL, but among the +// operating systems natively supported by SQLite, only Mac OSX +// cares about the difference.) + +// CAPI3REF: OS Interface Open File Handle +// +// An [sqlite3_file] object represents an open file in the +// [sqlite3_vfs | OS interface layer]. Individual OS interface +// implementations will +// want to subclass this object by appending additional fields +// for their own use. The pMethods entry is a pointer to an +// [sqlite3_io_methods] object that defines methods for performing +// I/O operations on the open file. +type sqlite3_file = sqlite3_file1 /* sqlite3.h:680:29 */ +type sqlite3_io_methods1 = struct { + iVersion int32 + xClose uintptr + xRead uintptr + xWrite uintptr + xTruncate uintptr + xSync uintptr + xFileSize uintptr + xLock uintptr + xUnlock uintptr + xCheckReservedLock uintptr + xFileControl uintptr + xSectorSize uintptr + xDeviceCharacteristics uintptr + xShmMap uintptr + xShmLock uintptr + xShmBarrier uintptr + xShmUnmap uintptr + xFetch uintptr + xUnfetch uintptr } -var s__5 = [18]byte{ - 0x5f, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, +// CAPI3REF: OS Interface File Virtual Methods Object +// +// Every file opened by the [sqlite3_vfs.xOpen] method populates an +// [sqlite3_file] object (or, more commonly, a subclass of the +// [sqlite3_file] object) with a pointer to an instance of this object. +// This object defines the methods used to perform various operations +// against the open file represented by the [sqlite3_file] object. +// +// If the [sqlite3_vfs.xOpen] method sets the sqlite3_file.pMethods element +// to a non-NULL pointer, then the sqlite3_io_methods.xClose method +// may be invoked even if the [sqlite3_vfs.xOpen] reported that it failed. The +// only way to prevent a call to xClose following a failed [sqlite3_vfs.xOpen] +// is for the [sqlite3_vfs.xOpen] to set the sqlite3_file.pMethods element +// to NULL. +// +// The flags argument to xSync may be one of [SQLITE_SYNC_NORMAL] or +// [SQLITE_SYNC_FULL]. The first choice is the normal fsync(). +// The second choice is a Mac OS X style fullsync. The [SQLITE_SYNC_DATAONLY] +// flag may be ORed in to indicate that only the data of the file +// and not its inode needs to be synced. +// +// The integer values to xLock() and xUnlock() are one of +// <ul> +// <li> [SQLITE_LOCK_NONE], +// <li> [SQLITE_LOCK_SHARED], +// <li> [SQLITE_LOCK_RESERVED], +// <li> [SQLITE_LOCK_PENDING], or +// <li> [SQLITE_LOCK_EXCLUSIVE]. +// </ul> +// xLock() increases the lock. xUnlock() decreases the lock. +// The xCheckReservedLock() method checks whether any database connection, +// either in this process or in some other process, is holding a RESERVED, +// PENDING, or EXCLUSIVE lock on the file. It returns true +// if such a lock exists and false otherwise. +// +// The xFileControl() method is a generic interface that allows custom +// VFS implementations to directly control an open file using the +// [sqlite3_file_control()] interface. The second "op" argument is an +// integer opcode. The third argument is a generic pointer intended to +// point to a structure that may contain arguments or space in which to +// write return values. Potential uses for xFileControl() might be +// functions to enable blocking locks with timeouts, to change the +// locking strategy (for example to use dot-file locks), to inquire +// about the status of a lock, or to break stale locks. The SQLite +// core reserves all opcodes less than 100 for its own use. +// A [file control opcodes | list of opcodes] less than 100 is available. +// Applications that define a custom xFileControl method should use opcodes +// greater than 100 to avoid conflicts. VFS implementations should +// return [SQLITE_NOTFOUND] for file control opcodes that they do not +// recognize. +// +// The xSectorSize() method returns the sector size of the +// device that underlies the file. The sector size is the +// minimum write that can be performed without disturbing +// other bytes in the file. The xDeviceCharacteristics() +// method returns a bit vector describing behaviors of the +// underlying device: +// +// <ul> +// <li> [SQLITE_IOCAP_ATOMIC] +// <li> [SQLITE_IOCAP_ATOMIC512] +// <li> [SQLITE_IOCAP_ATOMIC1K] +// <li> [SQLITE_IOCAP_ATOMIC2K] +// <li> [SQLITE_IOCAP_ATOMIC4K] +// <li> [SQLITE_IOCAP_ATOMIC8K] +// <li> [SQLITE_IOCAP_ATOMIC16K] +// <li> [SQLITE_IOCAP_ATOMIC32K] +// <li> [SQLITE_IOCAP_ATOMIC64K] +// <li> [SQLITE_IOCAP_SAFE_APPEND] +// <li> [SQLITE_IOCAP_SEQUENTIAL] +// <li> [SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN] +// <li> [SQLITE_IOCAP_POWERSAFE_OVERWRITE] +// <li> [SQLITE_IOCAP_IMMUTABLE] +// <li> [SQLITE_IOCAP_BATCH_ATOMIC] +// </ul> +// +// The SQLITE_IOCAP_ATOMIC property means that all writes of +// any size are atomic. The SQLITE_IOCAP_ATOMICnnn values +// mean that writes of blocks that are nnn bytes in size and +// are aligned to an address which is an integer multiple of +// nnn are atomic. The SQLITE_IOCAP_SAFE_APPEND value means +// that when data is appended to a file, the data is appended +// first then the size of the file is extended, never the other +// way around. The SQLITE_IOCAP_SEQUENTIAL property means that +// information is written to disk in the same order as calls +// to xWrite(). +// +// If xRead() returns SQLITE_IOERR_SHORT_READ it must also fill +// in the unread portions of the buffer with zeros. A VFS that +// fails to zero-fill short reads might seem to work. However, +// failure to zero-fill short reads will eventually lead to +// database corruption. +type sqlite3_io_methods = sqlite3_io_methods1 /* sqlite3.h:779:35 */ + +// CAPI3REF: OS Interface Object +// +// An instance of the sqlite3_vfs object defines the interface between +// the SQLite core and the underlying operating system. The "vfs" +// in the name of the object stands for "virtual file system". See +// the [VFS | VFS documentation] for further information. +// +// The VFS interface is sometimes extended by adding new methods onto +// the end. Each time such an extension occurs, the iVersion field +// is incremented. The iVersion value started out as 1 in +// SQLite [version 3.5.0] on [dateof:3.5.0], then increased to 2 +// with SQLite [version 3.7.0] on [dateof:3.7.0], and then increased +// to 3 with SQLite [version 3.7.6] on [dateof:3.7.6]. Additional fields +// may be appended to the sqlite3_vfs object and the iVersion value +// may increase again in future versions of SQLite. +// Note that due to an oversight, the structure +// of the sqlite3_vfs object changed in the transition from +// SQLite [version 3.5.9] to [version 3.6.0] on [dateof:3.6.0] +// and yet the iVersion field was not increased. +// +// The szOsFile field is the size of the subclassed [sqlite3_file] +// structure used by this VFS. mxPathname is the maximum length of +// a pathname in this VFS. +// +// Registered sqlite3_vfs objects are kept on a linked list formed by +// the pNext pointer. The [sqlite3_vfs_register()] +// and [sqlite3_vfs_unregister()] interfaces manage this list +// in a thread-safe way. The [sqlite3_vfs_find()] interface +// searches the list. Neither the application code nor the VFS +// implementation should use the pNext pointer. +// +// The pNext field is the only field in the sqlite3_vfs +// structure that SQLite will ever modify. SQLite will only access +// or modify this field while holding a particular static mutex. +// The application should never modify anything within the sqlite3_vfs +// object once the object has been registered. +// +// The zName field holds the name of the VFS module. The name must +// be unique across all VFS modules. +// +// [[sqlite3_vfs.xOpen]] +// ^SQLite guarantees that the zFilename parameter to xOpen +// is either a NULL pointer or string obtained +// from xFullPathname() with an optional suffix added. +// ^If a suffix is added to the zFilename parameter, it will +// consist of a single "-" character followed by no more than +// 11 alphanumeric and/or "-" characters. +// ^SQLite further guarantees that +// the string will be valid and unchanged until xClose() is +// called. Because of the previous sentence, +// the [sqlite3_file] can safely store a pointer to the +// filename if it needs to remember the filename for some reason. +// If the zFilename parameter to xOpen is a NULL pointer then xOpen +// must invent its own temporary name for the file. ^Whenever the +// xFilename parameter is NULL it will also be the case that the +// flags parameter will include [SQLITE_OPEN_DELETEONCLOSE]. +// +// The flags argument to xOpen() includes all bits set in +// the flags argument to [sqlite3_open_v2()]. Or if [sqlite3_open()] +// or [sqlite3_open16()] is used, then flags includes at least +// [SQLITE_OPEN_READWRITE] | [SQLITE_OPEN_CREATE]. +// If xOpen() opens a file read-only then it sets *pOutFlags to +// include [SQLITE_OPEN_READONLY]. Other bits in *pOutFlags may be set. +// +// ^(SQLite will also add one of the following flags to the xOpen() +// call, depending on the object being opened: +// +// <ul> +// <li> [SQLITE_OPEN_MAIN_DB] +// <li> [SQLITE_OPEN_MAIN_JOURNAL] +// <li> [SQLITE_OPEN_TEMP_DB] +// <li> [SQLITE_OPEN_TEMP_JOURNAL] +// <li> [SQLITE_OPEN_TRANSIENT_DB] +// <li> [SQLITE_OPEN_SUBJOURNAL] +// <li> [SQLITE_OPEN_MASTER_JOURNAL] +// <li> [SQLITE_OPEN_WAL] +// </ul>)^ +// +// The file I/O implementation can use the object type flags to +// change the way it deals with files. For example, an application +// that does not care about crash recovery or rollback might make +// the open of a journal file a no-op. Writes to this journal would +// also be no-ops, and any attempt to read the journal would return +// SQLITE_IOERR. Or the implementation might recognize that a database +// file will be doing page-aligned sector reads and writes in a random +// order and set up its I/O subsystem accordingly. +// +// SQLite might also add one of the following flags to the xOpen method: +// +// <ul> +// <li> [SQLITE_OPEN_DELETEONCLOSE] +// <li> [SQLITE_OPEN_EXCLUSIVE] +// </ul> +// +// The [SQLITE_OPEN_DELETEONCLOSE] flag means the file should be +// deleted when it is closed. ^The [SQLITE_OPEN_DELETEONCLOSE] +// will be set for TEMP databases and their journals, transient +// databases, and subjournals. +// +// ^The [SQLITE_OPEN_EXCLUSIVE] flag is always used in conjunction +// with the [SQLITE_OPEN_CREATE] flag, which are both directly +// analogous to the O_EXCL and O_CREAT flags of the POSIX open() +// API. The SQLITE_OPEN_EXCLUSIVE flag, when paired with the +// SQLITE_OPEN_CREATE, is used to indicate that file should always +// be created, and that it is an error if it already exists. +// It is <i>not</i> used to indicate the file should be opened +// for exclusive access. +// +// ^At least szOsFile bytes of memory are allocated by SQLite +// to hold the [sqlite3_file] structure passed as the third +// argument to xOpen. The xOpen method does not have to +// allocate the structure; it should just fill it in. Note that +// the xOpen method must set the sqlite3_file.pMethods to either +// a valid [sqlite3_io_methods] object or to NULL. xOpen must do +// this even if the open fails. SQLite expects that the sqlite3_file.pMethods +// element will be valid after xOpen returns regardless of the success +// or failure of the xOpen call. +// +// [[sqlite3_vfs.xAccess]] +// ^The flags argument to xAccess() may be [SQLITE_ACCESS_EXISTS] +// to test for the existence of a file, or [SQLITE_ACCESS_READWRITE] to +// test whether a file is readable and writable, or [SQLITE_ACCESS_READ] +// to test whether a file is at least readable. The SQLITE_ACCESS_READ +// flag is never actually used and is not implemented in the built-in +// VFSes of SQLite. The file is named by the second argument and can be a +// directory. The xAccess method returns [SQLITE_OK] on success or some +// non-zero error code if there is an I/O error or if the name of +// the file given in the second argument is illegal. If SQLITE_OK +// is returned, then non-zero or zero is written into *pResOut to indicate +// whether or not the file is accessible. +// +// ^SQLite will always allocate at least mxPathname+1 bytes for the +// output buffer xFullPathname. The exact size of the output buffer +// is also passed as a parameter to both methods. If the output buffer +// is not large enough, [SQLITE_CANTOPEN] should be returned. Since this is +// handled as a fatal error by SQLite, vfs implementations should endeavor +// to prevent this by setting mxPathname to a sufficiently large value. +// +// The xRandomness(), xSleep(), xCurrentTime(), and xCurrentTimeInt64() +// interfaces are not strictly a part of the filesystem, but they are +// included in the VFS structure for completeness. +// The xRandomness() function attempts to return nBytes bytes +// of good-quality randomness into zOut. The return value is +// the actual number of bytes of randomness obtained. +// The xSleep() method causes the calling thread to sleep for at +// least the number of microseconds given. ^The xCurrentTime() +// method returns a Julian Day Number for the current date and time as +// a floating point value. +// ^The xCurrentTimeInt64() method returns, as an integer, the Julian +// Day Number multiplied by 86400000 (the number of milliseconds in +// a 24-hour day). +// ^SQLite will use the xCurrentTimeInt64() method to get the current +// date and time if that method is available (if iVersion is 2 or +// greater and the function pointer is not NULL) and will fall back +// to xCurrentTime() if xCurrentTimeInt64() is unavailable. +// +// ^The xSetSystemCall(), xGetSystemCall(), and xNestSystemCall() interfaces +// are not used by the SQLite core. These optional interfaces are provided +// by some VFSes to facilitate testing of the VFS code. By overriding +// system calls with functions under its control, a test program can +// simulate faults and error conditions that would otherwise be difficult +// or impossible to induce. The set of system calls that can be overridden +// varies from one VFS to another, and from one version of the same VFS to the +// next. Applications that use these interfaces must be prepared for any +// or all of these interfaces to be NULL or for their behavior to change +// from one release to the next. Applications must not attempt to access +// any of these methods if the iVersion of the VFS is less than 3. +type sqlite3_vfs1 = struct { + iVersion int32 + szOsFile int32 + mxPathname int32 + pNext uintptr + zName uintptr + pAppData uintptr + xOpen uintptr + xDelete uintptr + xAccess uintptr + xFullPathname uintptr + xDlOpen uintptr + xDlError uintptr + xDlSym uintptr + xDlClose uintptr + xRandomness uintptr + xSleep uintptr + xCurrentTime uintptr + xGetLastError uintptr + xCurrentTimeInt64 uintptr + xSetSystemCall uintptr + xGetSystemCall uintptr + xNextSystemCall uintptr } -var s__6 = [18]byte{ - 0x5f, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, +// CAPI3REF: OS Interface Object +// +// An instance of the sqlite3_vfs object defines the interface between +// the SQLite core and the underlying operating system. The "vfs" +// in the name of the object stands for "virtual file system". See +// the [VFS | VFS documentation] for further information. +// +// The VFS interface is sometimes extended by adding new methods onto +// the end. Each time such an extension occurs, the iVersion field +// is incremented. The iVersion value started out as 1 in +// SQLite [version 3.5.0] on [dateof:3.5.0], then increased to 2 +// with SQLite [version 3.7.0] on [dateof:3.7.0], and then increased +// to 3 with SQLite [version 3.7.6] on [dateof:3.7.6]. Additional fields +// may be appended to the sqlite3_vfs object and the iVersion value +// may increase again in future versions of SQLite. +// Note that due to an oversight, the structure +// of the sqlite3_vfs object changed in the transition from +// SQLite [version 3.5.9] to [version 3.6.0] on [dateof:3.6.0] +// and yet the iVersion field was not increased. +// +// The szOsFile field is the size of the subclassed [sqlite3_file] +// structure used by this VFS. mxPathname is the maximum length of +// a pathname in this VFS. +// +// Registered sqlite3_vfs objects are kept on a linked list formed by +// the pNext pointer. The [sqlite3_vfs_register()] +// and [sqlite3_vfs_unregister()] interfaces manage this list +// in a thread-safe way. The [sqlite3_vfs_find()] interface +// searches the list. Neither the application code nor the VFS +// implementation should use the pNext pointer. +// +// The pNext field is the only field in the sqlite3_vfs +// structure that SQLite will ever modify. SQLite will only access +// or modify this field while holding a particular static mutex. +// The application should never modify anything within the sqlite3_vfs +// object once the object has been registered. +// +// The zName field holds the name of the VFS module. The name must +// be unique across all VFS modules. +// +// [[sqlite3_vfs.xOpen]] +// ^SQLite guarantees that the zFilename parameter to xOpen +// is either a NULL pointer or string obtained +// from xFullPathname() with an optional suffix added. +// ^If a suffix is added to the zFilename parameter, it will +// consist of a single "-" character followed by no more than +// 11 alphanumeric and/or "-" characters. +// ^SQLite further guarantees that +// the string will be valid and unchanged until xClose() is +// called. Because of the previous sentence, +// the [sqlite3_file] can safely store a pointer to the +// filename if it needs to remember the filename for some reason. +// If the zFilename parameter to xOpen is a NULL pointer then xOpen +// must invent its own temporary name for the file. ^Whenever the +// xFilename parameter is NULL it will also be the case that the +// flags parameter will include [SQLITE_OPEN_DELETEONCLOSE]. +// +// The flags argument to xOpen() includes all bits set in +// the flags argument to [sqlite3_open_v2()]. Or if [sqlite3_open()] +// or [sqlite3_open16()] is used, then flags includes at least +// [SQLITE_OPEN_READWRITE] | [SQLITE_OPEN_CREATE]. +// If xOpen() opens a file read-only then it sets *pOutFlags to +// include [SQLITE_OPEN_READONLY]. Other bits in *pOutFlags may be set. +// +// ^(SQLite will also add one of the following flags to the xOpen() +// call, depending on the object being opened: +// +// <ul> +// <li> [SQLITE_OPEN_MAIN_DB] +// <li> [SQLITE_OPEN_MAIN_JOURNAL] +// <li> [SQLITE_OPEN_TEMP_DB] +// <li> [SQLITE_OPEN_TEMP_JOURNAL] +// <li> [SQLITE_OPEN_TRANSIENT_DB] +// <li> [SQLITE_OPEN_SUBJOURNAL] +// <li> [SQLITE_OPEN_MASTER_JOURNAL] +// <li> [SQLITE_OPEN_WAL] +// </ul>)^ +// +// The file I/O implementation can use the object type flags to +// change the way it deals with files. For example, an application +// that does not care about crash recovery or rollback might make +// the open of a journal file a no-op. Writes to this journal would +// also be no-ops, and any attempt to read the journal would return +// SQLITE_IOERR. Or the implementation might recognize that a database +// file will be doing page-aligned sector reads and writes in a random +// order and set up its I/O subsystem accordingly. +// +// SQLite might also add one of the following flags to the xOpen method: +// +// <ul> +// <li> [SQLITE_OPEN_DELETEONCLOSE] +// <li> [SQLITE_OPEN_EXCLUSIVE] +// </ul> +// +// The [SQLITE_OPEN_DELETEONCLOSE] flag means the file should be +// deleted when it is closed. ^The [SQLITE_OPEN_DELETEONCLOSE] +// will be set for TEMP databases and their journals, transient +// databases, and subjournals. +// +// ^The [SQLITE_OPEN_EXCLUSIVE] flag is always used in conjunction +// with the [SQLITE_OPEN_CREATE] flag, which are both directly +// analogous to the O_EXCL and O_CREAT flags of the POSIX open() +// API. The SQLITE_OPEN_EXCLUSIVE flag, when paired with the +// SQLITE_OPEN_CREATE, is used to indicate that file should always +// be created, and that it is an error if it already exists. +// It is <i>not</i> used to indicate the file should be opened +// for exclusive access. +// +// ^At least szOsFile bytes of memory are allocated by SQLite +// to hold the [sqlite3_file] structure passed as the third +// argument to xOpen. The xOpen method does not have to +// allocate the structure; it should just fill it in. Note that +// the xOpen method must set the sqlite3_file.pMethods to either +// a valid [sqlite3_io_methods] object or to NULL. xOpen must do +// this even if the open fails. SQLite expects that the sqlite3_file.pMethods +// element will be valid after xOpen returns regardless of the success +// or failure of the xOpen call. +// +// [[sqlite3_vfs.xAccess]] +// ^The flags argument to xAccess() may be [SQLITE_ACCESS_EXISTS] +// to test for the existence of a file, or [SQLITE_ACCESS_READWRITE] to +// test whether a file is readable and writable, or [SQLITE_ACCESS_READ] +// to test whether a file is at least readable. The SQLITE_ACCESS_READ +// flag is never actually used and is not implemented in the built-in +// VFSes of SQLite. The file is named by the second argument and can be a +// directory. The xAccess method returns [SQLITE_OK] on success or some +// non-zero error code if there is an I/O error or if the name of +// the file given in the second argument is illegal. If SQLITE_OK +// is returned, then non-zero or zero is written into *pResOut to indicate +// whether or not the file is accessible. +// +// ^SQLite will always allocate at least mxPathname+1 bytes for the +// output buffer xFullPathname. The exact size of the output buffer +// is also passed as a parameter to both methods. If the output buffer +// is not large enough, [SQLITE_CANTOPEN] should be returned. Since this is +// handled as a fatal error by SQLite, vfs implementations should endeavor +// to prevent this by setting mxPathname to a sufficiently large value. +// +// The xRandomness(), xSleep(), xCurrentTime(), and xCurrentTimeInt64() +// interfaces are not strictly a part of the filesystem, but they are +// included in the VFS structure for completeness. +// The xRandomness() function attempts to return nBytes bytes +// of good-quality randomness into zOut. The return value is +// the actual number of bytes of randomness obtained. +// The xSleep() method causes the calling thread to sleep for at +// least the number of microseconds given. ^The xCurrentTime() +// method returns a Julian Day Number for the current date and time as +// a floating point value. +// ^The xCurrentTimeInt64() method returns, as an integer, the Julian +// Day Number multiplied by 86400000 (the number of milliseconds in +// a 24-hour day). +// ^SQLite will use the xCurrentTimeInt64() method to get the current +// date and time if that method is available (if iVersion is 2 or +// greater and the function pointer is not NULL) and will fall back +// to xCurrentTime() if xCurrentTimeInt64() is unavailable. +// +// ^The xSetSystemCall(), xGetSystemCall(), and xNestSystemCall() interfaces +// are not used by the SQLite core. These optional interfaces are provided +// by some VFSes to facilitate testing of the VFS code. By overriding +// system calls with functions under its control, a test program can +// simulate faults and error conditions that would otherwise be difficult +// or impossible to induce. The set of system calls that can be overridden +// varies from one VFS to another, and from one version of the same VFS to the +// next. Applications that use these interfaces must be prepared for any +// or all of these interfaces to be NULL or for their behavior to change +// from one release to the next. Applications must not attempt to access +// any of these methods if the iVersion of the VFS is less than 3. +type sqlite3_vfs = sqlite3_vfs1 /* sqlite3.h:1364:28 */ +type sqlite3_syscall_ptr = uintptr /* sqlite3.h:1365:14 */ + +// CAPI3REF: Memory Allocation Routines +// +// An instance of this object defines the interface between SQLite +// and low-level memory allocation routines. +// +// This object is used in only one place in the SQLite interface. +// A pointer to an instance of this object is the argument to +// [sqlite3_config()] when the configuration option is +// [SQLITE_CONFIG_MALLOC] or [SQLITE_CONFIG_GETMALLOC]. +// By creating an instance of this object +// and passing it to [sqlite3_config]([SQLITE_CONFIG_MALLOC]) +// during configuration, an application can specify an alternative +// memory allocation subsystem for SQLite to use for all of its +// dynamic memory needs. +// +// Note that SQLite comes with several [built-in memory allocators] +// that are perfectly adequate for the overwhelming majority of applications +// and that this object is only useful to a tiny minority of applications +// with specialized memory allocation requirements. This object is +// also used during testing of SQLite in order to specify an alternative +// memory allocator that simulates memory out-of-memory conditions in +// order to verify that SQLite recovers gracefully from such +// conditions. +// +// The xMalloc, xRealloc, and xFree methods must work like the +// malloc(), realloc() and free() functions from the standard C library. +// ^SQLite guarantees that the second argument to +// xRealloc is always a value returned by a prior call to xRoundup. +// +// xSize should return the allocated size of a memory allocation +// previously obtained from xMalloc or xRealloc. The allocated size +// is always at least as big as the requested size but may be larger. +// +// The xRoundup method returns what would be the allocated size of +// a memory allocation given a particular requested size. Most memory +// allocators round up memory allocations at least to the next multiple +// of 8. Some allocators round up to a larger multiple or to a power of 2. +// Every memory allocation request coming in through [sqlite3_malloc()] +// or [sqlite3_realloc()] first calls xRoundup. If xRoundup returns 0, +// that causes the corresponding memory allocation to fail. +// +// The xInit method initializes the memory allocator. For example, +// it might allocate any required mutexes or initialize internal data +// structures. The xShutdown method is invoked (indirectly) by +// [sqlite3_shutdown()] and should deallocate any resources acquired +// by xInit. The pAppData pointer is used as the only parameter to +// xInit and xShutdown. +// +// SQLite holds the [SQLITE_MUTEX_STATIC_MASTER] mutex when it invokes +// the xInit method, so the xInit method need not be threadsafe. The +// xShutdown method is only called from [sqlite3_shutdown()] so it does +// not need to be threadsafe either. For all other methods, SQLite +// holds the [SQLITE_MUTEX_STATIC_MEM] mutex as long as the +// [SQLITE_CONFIG_MEMSTATUS] configuration option is turned on (which +// it is by default) and so the methods are automatically serialized. +// However, if [SQLITE_CONFIG_MEMSTATUS] is disabled, then the other +// methods must be threadsafe or else make their own arrangements for +// serialization. +// +// SQLite will never invoke xInit() more than once without an intervening +// call to xShutdown(). +type sqlite3_mem_methods1 = struct { + xMalloc uintptr + xFree uintptr + xRealloc uintptr + xSize uintptr + xRoundup uintptr + xInit uintptr + xShutdown uintptr + pAppData uintptr } -var s_g [128]byte - -func s_printWithPrefix(t *crt.TLS, _v1 int64, _v2 int64, _v3 int64) { - bp := t.Alloc(48) - defer t.Free(48) - var _v15 int32 // %t10 - var _v17 int64 // %t12 - var _v18 int32 // %t13 - var _v19 int64 // %t14 - var _v20 int64 // %t15 - var _v21 int64 // %t16 - var _v22 int64 // %t17 - var _v23 int32 // %t18 - var _v24 int32 // %t19 - var _v7 int64 // %t2 - var _v25 int64 // %t20 - var _v26 int64 // %t21 - var _v27 int64 // %t22 - var _v28 int64 // %t23 - var _v29 int32 // %t24 - var _v30 int32 // %t25 - var _v32 int32 // %t27 - var _v33 int32 // %t28 - var _v34 int32 // %t29 - var _v8 int32 // %t3 - var _v35 int64 // %t30 - var _v36 int64 // %t31 - var _v37 int64 // %t32 - var _v38 int64 // %t33 - var _v39 int32 // %t34 - var _v40 int32 // %t35 - var _v42 int32 // %t37 - var _v43 int32 // %t38 - var _v44 int64 // %t39 - var _v45 int32 // %t40 - var _v46 int32 // %t41 - var _v50 int32 // %t45 - var _v51 int64 // %t46 - var _v53 int32 // %t48 - var _v54 int64 // %t49 - var _v55 int64 // %t50 - var _v56 int64 // %t51 - var _v57 int64 // %t52 - var _v61 int64 // %t56 - var _v62 int64 // %t57 - var _v63 int32 // %t58 - var _v64 int32 // %t59 - var _v66 int32 // %t61 - var _v70 int64 // %t65 - var _v71 int64 // %t66 - var _v72 int32 // %t67 - var _v73 int32 // %t68 - var _v12 int64 // %t7 - var _v75 int32 // %t70 - var _v76 int32 // %t71 - var _v77 int64 // %t72 - var _v78 int64 // %t73 - var _v79 int64 // %t74 - var _v13 int64 // %t8 - var _v14 int32 // %t9 - var _v4 = int64(bp + 24) // %v3 - var _v6 = int64(bp + 32) // %v4 - *(*int64)(unsafe.Pointer(uintptr(_v4))) = _v3 - goto l2 -l2: - _v7 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v8 = crt.Bool32(int64(_v7) != int64(int64(0))) - goto l3 -l3: - if _v8 != 0 { - goto l4 - } - goto l33 -l33: - _v15 = 0 - goto l7 -l4: - _v12 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v13 = int64(_v12 + int64(0)) - _v14 = int32(*(*int8)(unsafe.Pointer(uintptr(_v13)))) - goto l5 -l5: - if _v14 != 0 { - goto l6 - } - goto l34 -l34: - _v15 = 0 - goto l7 -l6: - _v15 = 1 - goto l7 -l7: - if _v15 != 0 { - goto l8 - } - goto l31 -l8: - _v17 = int64(_v6 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v17))) = 0 - goto l9 -l9: - _v18 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v19 = int64(int32(_v18)) - _v20 = int64(_v19 * int64(1)) - _v21 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v22 = int64(_v21 + _v20) - _v23 = int32(*(*int8)(unsafe.Pointer(uintptr(_v22)))) - goto l10 -l10: - if _v23 != 0 { - goto l11 - } - goto l35 -l35: - _v33 = 0 - goto l14 -l11: - _v24 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v25 = int64(int32(_v24)) - _v26 = int64(_v25 * int64(1)) - _v27 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v28 = int64(_v27 + _v26) - _v29 = int32(*(*int8)(unsafe.Pointer(uintptr(_v28)))) - _v30 = int32(int8(_v29)) - _v32 = crt.Bool32(int32(_v30) != int32(10)) - goto l12 -l12: - if _v32 != 0 { - goto l13 - } - goto l36 -l36: - _v33 = 0 - goto l14 -l13: - _v33 = 1 - goto l14 -l14: - goto l15 -l15: - if _v33 != 0 { - goto l16 - } - goto l37 -l37: - _v43 = 0 - goto l19 -l16: - _v34 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v35 = int64(int32(_v34)) - _v36 = int64(_v35 * int64(1)) - _v37 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v38 = int64(_v37 + _v36) - _v39 = int32(*(*int8)(unsafe.Pointer(uintptr(_v38)))) - _v40 = int32(int8(_v39)) - _v42 = crt.Bool32(int32(_v40) != int32(13)) - goto l17 -l17: - if _v42 != 0 { - goto l18 - } - goto l38 -l38: - _v43 = 0 - goto l19 -l18: - _v43 = 1 - goto l19 -l19: - if _v43 != 0 { - goto l20 - } - goto l22 -l20: - goto l21 -l21: - _v44 = int64(_v6 + int64(0)) - _v45 = *(*int32)(unsafe.Pointer(uintptr(_v44))) - _v46 = int32(int32(_v45) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v44))) = _v46 - goto l9 -l22: - _v50 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v51 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - *(*int64)(unsafe.Pointer(bp + 0)) = _v2 - - *(*int32)(unsafe.Pointer(bp + 8)) = _v50 - - *(*int64)(unsafe.Pointer(bp + 16)) = _v51 - - _ = crt.Xfprintf(t, _v1, int64(uintptr(unsafe.Pointer(&s__8))), bp+0) - _v53 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v54 = int64(int32(_v53)) - _v55 = int64(_v4 + int64(0)) - _v56 = *(*int64)(unsafe.Pointer(uintptr(_v55))) - _v57 = int64(_v56 + _v54) - *(*int64)(unsafe.Pointer(uintptr(_v55))) = _v57 - goto l23 -l23: - _v61 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v62 = int64(_v61 + int64(0)) - _v63 = int32(*(*int8)(unsafe.Pointer(uintptr(_v62)))) - _v64 = int32(int8(_v63)) - _v66 = crt.Bool32(int32(_v64) == int32(10)) - goto l24 -l24: - if _v66 != 0 { - goto l39 - } - goto l25 -l39: - _v76 = 1 - goto l28 -l25: - _v70 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v71 = int64(_v70 + int64(0)) - _v72 = int32(*(*int8)(unsafe.Pointer(uintptr(_v71)))) - _v73 = int32(int8(_v72)) - _v75 = crt.Bool32(int32(_v73) == int32(13)) - goto l26 -l26: - if _v75 != 0 { - goto l40 - } - goto l27 -l40: - _v76 = 1 - goto l28 -l27: - _v76 = 0 - goto l28 -l28: - if _v76 != 0 { - goto l29 - } - goto l30 -l29: - _v77 = int64(_v4 + int64(0)) - _v78 = *(*int64)(unsafe.Pointer(uintptr(_v77))) - _v79 = int64(_v78 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v77))) = _v79 - goto l23 -l30: - goto l2 -l31: - goto l32 -l32: +// CAPI3REF: Memory Allocation Routines +// +// An instance of this object defines the interface between SQLite +// and low-level memory allocation routines. +// +// This object is used in only one place in the SQLite interface. +// A pointer to an instance of this object is the argument to +// [sqlite3_config()] when the configuration option is +// [SQLITE_CONFIG_MALLOC] or [SQLITE_CONFIG_GETMALLOC]. +// By creating an instance of this object +// and passing it to [sqlite3_config]([SQLITE_CONFIG_MALLOC]) +// during configuration, an application can specify an alternative +// memory allocation subsystem for SQLite to use for all of its +// dynamic memory needs. +// +// Note that SQLite comes with several [built-in memory allocators] +// that are perfectly adequate for the overwhelming majority of applications +// and that this object is only useful to a tiny minority of applications +// with specialized memory allocation requirements. This object is +// also used during testing of SQLite in order to specify an alternative +// memory allocator that simulates memory out-of-memory conditions in +// order to verify that SQLite recovers gracefully from such +// conditions. +// +// The xMalloc, xRealloc, and xFree methods must work like the +// malloc(), realloc() and free() functions from the standard C library. +// ^SQLite guarantees that the second argument to +// xRealloc is always a value returned by a prior call to xRoundup. +// +// xSize should return the allocated size of a memory allocation +// previously obtained from xMalloc or xRealloc. The allocated size +// is always at least as big as the requested size but may be larger. +// +// The xRoundup method returns what would be the allocated size of +// a memory allocation given a particular requested size. Most memory +// allocators round up memory allocations at least to the next multiple +// of 8. Some allocators round up to a larger multiple or to a power of 2. +// Every memory allocation request coming in through [sqlite3_malloc()] +// or [sqlite3_realloc()] first calls xRoundup. If xRoundup returns 0, +// that causes the corresponding memory allocation to fail. +// +// The xInit method initializes the memory allocator. For example, +// it might allocate any required mutexes or initialize internal data +// structures. The xShutdown method is invoked (indirectly) by +// [sqlite3_shutdown()] and should deallocate any resources acquired +// by xInit. The pAppData pointer is used as the only parameter to +// xInit and xShutdown. +// +// SQLite holds the [SQLITE_MUTEX_STATIC_MASTER] mutex when it invokes +// the xInit method, so the xInit method need not be threadsafe. The +// xShutdown method is only called from [sqlite3_shutdown()] so it does +// not need to be threadsafe either. For all other methods, SQLite +// holds the [SQLITE_MUTEX_STATIC_MEM] mutex as long as the +// [SQLITE_CONFIG_MEMSTATUS] configuration option is turned on (which +// it is by default) and so the methods are automatically serialized. +// However, if [SQLITE_CONFIG_MEMSTATUS] is disabled, then the other +// methods must be threadsafe or else make their own arrangements for +// serialization. +// +// SQLite will never invoke xInit() more than once without an intervening +// call to xShutdown(). +type sqlite3_mem_methods = sqlite3_mem_methods1 /* sqlite3.h:1662:36 */ + +// CAPI3REF: Constants Defining Special Destructor Behavior +// +// These are special values for the destructor that is passed in as the +// final argument to routines like [sqlite3_result_blob()]. ^If the destructor +// argument is SQLITE_STATIC, it means that the content pointer is constant +// and will never change. It does not need to be destroyed. ^The +// SQLITE_TRANSIENT value means that the content will likely change in +// the near future and that SQLite should make its own private copy of +// the content before returning. +// +// The typedef is necessary to work around problems in certain +// C++ compilers. +type sqlite3_destructor_type = uintptr /* sqlite3.h:5619:14 */ + +// The interface to the virtual-table mechanism is currently considered +// to be experimental. The interface might change in incompatible ways. +// If this is a problem for you, do not use the interface at this time. +// +// When the virtual-table mechanism stabilizes, we will declare the +// interface fixed, support it indefinitely, and remove this comment. + +// Structures used by the virtual table interface +type sqlite3_vtab1 = struct { + pModule uintptr + nRef int32 + zErrMsg uintptr } -var s__7 = [16]byte{0x70, 0x72, 0x69, 0x6e, 0x74, 0x57, 0x69, 0x74, 0x68, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78} - -var s__8 = [8]byte{0x25, 0x73, 0x25, 0x2e, 0x2a, 0x73, 0x0a} - -func s_safe_strcmp(t *crt.TLS, _v1 int64, _v2 int64) int32 { - var _v16 int32 // %t14 - var _v20 int32 // %t18 - var _v5 int32 // %t3 - var _v10 int32 // %t8 - _v5 = crt.Bool32(_v1 == _v2) - if _v5 != 0 { - goto l2 - } - goto l4 -l2: - return 0 -l4: - _v10 = crt.Bool32(_v1 == int64(0)) - if _v10 != 0 { - goto l5 - } - goto l7 -l5: - return -1 -l7: - _v16 = crt.Bool32(_v2 == int64(0)) - if _v16 != 0 { - goto l8 - } - goto l10 -l8: - return 1 -l10: - _v20 = crt.Xstrcmp(t, _v1, _v2) - return _v20 +// The interface to the virtual-table mechanism is currently considered +// to be experimental. The interface might change in incompatible ways. +// If this is a problem for you, do not use the interface at this time. +// +// When the virtual-table mechanism stabilizes, we will declare the +// interface fixed, support it indefinitely, and remove this comment. + +// Structures used by the virtual table interface +type sqlite3_vtab = sqlite3_vtab1 /* sqlite3.h:6687:29 */ +type sqlite3_index_info1 = struct { + nConstraint int32 + aConstraint uintptr + nOrderBy int32 + aOrderBy uintptr + aConstraintUsage uintptr + idxNum int32 + idxStr uintptr + needToFreeIdxStr int32 + orderByConsumed int32 + estimatedCost float64 + estimatedRows sqlite3_int64 + idxFlags int32 + colUsed sqlite3_uint64 } -var s__9 = [12]byte{0x73, 0x61, 0x66, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x63, 0x6d, 0x70} - -func Xstrglob(t *crt.TLS, _v1 int64, _v2 int64) int32 { - bp := t.Alloc(48) - defer t.Free(48) - var _v109 int32 // %t100 - var _v111 int32 // %t102 - var _v113 int32 // %t104 - var _v116 int64 // %t107 - var _v118 int64 // %t109 - var _v20 int32 // %t11 - var _v119 int64 // %t110 - var _v120 int64 // %t111 - var _v121 int64 // %t112 - var _v122 int32 // %t113 - var _v123 int32 // %t114 - var _v124 int64 // %t115 - var _v125 int32 // %t116 - var _v127 int32 // %t118 - var _v21 int32 // %t12 - var _v129 int64 // %t120 - var _v130 int64 // %t121 - var _v131 int64 // %t122 - var _v132 int32 // %t123 - var _v133 int32 // %t124 - var _v134 int64 // %t125 - var _v135 int32 // %t126 - var _v137 int32 // %t128 - var _v139 int64 // %t130 - var _v140 int64 // %t131 - var _v141 int64 // %t132 - var _v142 int64 // %t133 - var _v143 int32 // %t134 - var _v144 int32 // %t135 - var _v145 int64 // %t136 - var _v146 int32 // %t137 - var _v148 int32 // %t139 - var _v23 int32 // %t14 - var _v149 int32 // %t140 - var _v151 int32 // %t142 - var _v153 int64 // %t144 - var _v154 int64 // %t145 - var _v155 int64 // %t146 - var _v156 int64 // %t147 - var _v157 int32 // %t148 - var _v158 int32 // %t149 - var _v24 int64 // %t15 - var _v159 int64 // %t150 - var _v160 int32 // %t151 - var _v161 int32 // %t152 - var _v163 int32 // %t154 - var _v164 int32 // %t155 - var _v165 int32 // %t156 - var _v167 int32 // %t158 - var _v25 int64 // %t16 - var _v171 int64 // %t162 - var _v172 int64 // %t163 - var _v173 int32 // %t164 - var _v174 int32 // %t165 - var _v176 int32 // %t167 - var _v177 int32 // %t168 - var _v26 int64 // %t17 - var _v181 int64 // %t172 - var _v182 int64 // %t173 - var _v183 int32 // %t174 - var _v184 int32 // %t175 - var _v186 int32 // %t177 - var _v187 int32 // %t178 - var _v188 int32 // %t179 - var _v27 int32 // %t18 - var _v190 int32 // %t181 - var _v191 int32 // %t182 - var _v192 int64 // %t183 - var _v193 int64 // %t184 - var _v194 int64 // %t185 - var _v195 int32 // %t186 - var _v196 int32 // %t187 - var _v197 int64 // %t188 - var _v198 int32 // %t189 - var _v28 int32 // %t19 - var _v199 int32 // %t190 - var _v200 int32 // %t191 - var _v201 int32 // %t192 - var _v202 int32 // %t193 - var _v203 int32 // %t194 - var _v204 int32 // %t195 - var _v206 int64 // %t197 - var _v208 int64 // %t199 - var _v29 int64 // %t20 - var _v209 int32 // %t200 - var _v210 int32 // %t201 - var _v211 int32 // %t202 - var _v213 int64 // %t204 - var _v214 int32 // %t205 - var _v215 int64 // %t206 - var _v216 int64 // %t207 - var _v217 int64 // %t208 - var _v218 int64 // %t209 - var _v30 int32 // %t21 - var _v219 int32 // %t210 - var _v220 int32 // %t211 - var _v221 int64 // %t212 - var _v222 int32 // %t213 - var _v224 int32 // %t215 - var _v225 int32 // %t216 - var _v226 int32 // %t217 - var _v227 int32 // %t218 - var _v229 int32 // %t220 - var _v230 int32 // %t221 - var _v232 int32 // %t223 - var _v234 int32 // %t225 - var _v238 int64 // %t229 - var _v32 int32 // %t23 - var _v239 int64 // %t230 - var _v240 int32 // %t231 - var _v241 int32 // %t232 - var _v243 int32 // %t234 - var _v247 int64 // %t238 - var _v248 int64 // %t239 - var _v33 int32 // %t24 - var _v249 int32 // %t240 - var _v250 int32 // %t241 - var _v252 int32 // %t243 - var _v253 int32 // %t244 - var _v257 int64 // %t248 - var _v258 int64 // %t249 - var _v259 int32 // %t250 - var _v260 int32 // %t251 - var _v261 int64 // %t252 - var _v262 int64 // %t253 - var _v263 int64 // %t254 - var _v264 int64 // %t255 - var _v265 int64 // %t256 - var _v266 int32 // %t257 - var _v267 int32 // %t258 - var _v35 int32 // %t26 - var _v271 int32 // %t262 - var _v272 int32 // %t263 - var _v273 int64 // %t264 - var _v274 int64 // %t265 - var _v275 int64 // %t266 - var _v36 int32 // %t27 - var _v279 int64 // %t270 - var _v280 int64 // %t271 - var _v281 int32 // %t272 - var _v282 int32 // %t273 - var _v283 int64 // %t274 - var _v284 int64 // %t275 - var _v285 int64 // %t276 - var _v286 int64 // %t277 - var _v287 int64 // %t278 - var _v288 int32 // %t279 - var _v37 int32 // %t28 - var _v289 int32 // %t280 - var _v293 int32 // %t284 - var _v294 int32 // %t285 - var _v296 int64 // %t287 - var _v297 int64 // %t288 - var _v298 int64 // %t289 - var _v302 int64 // %t293 - var _v303 int64 // %t294 - var _v304 int32 // %t295 - var _v305 int32 // %t296 - var _v306 int64 // %t297 - var _v307 int64 // %t298 - var _v308 int64 // %t299 - var _v12 int64 // %t3 - var _v39 int32 // %t30 - var _v309 int64 // %t300 - var _v310 int64 // %t301 - var _v311 int32 // %t302 - var _v312 int32 // %t303 - var _v316 int32 // %t307 - var _v317 int64 // %t308 - var _v318 int64 // %t309 - var _v40 int64 // %t31 - var _v319 int64 // %t310 - var _v320 int32 // %t311 - var _v321 int64 // %t312 - var _v322 int64 // %t313 - var _v323 int64 // %t314 - var _v324 int32 // %t315 - var _v325 int32 // %t316 - var _v326 int32 // %t317 - var _v328 int64 // %t319 - var _v41 int64 // %t32 - var _v329 int32 // %t320 - var _v330 int32 // %t321 - var _v332 int32 // %t323 - var _v42 int64 // %t33 - var _v43 int32 // %t34 - var _v44 int32 // %t35 - var _v46 int32 // %t37 - var _v47 int32 // %t38 - var _v13 int64 // %t4 - var _v49 int32 // %t40 - var _v51 int32 // %t42 - var _v53 int32 // %t44 - var _v55 int32 // %t46 - var _v56 int64 // %t47 - var _v57 int32 // %t48 - var _v58 int64 // %t49 - var _v14 int64 // %t5 - var _v61 int64 // %t52 - var _v62 int64 // %t53 - var _v63 int32 // %t54 - var _v64 int32 // %t55 - var _v65 int64 // %t56 - var _v66 int64 // %t57 - var _v67 int64 // %t58 - var _v68 int64 // %t59 - var _v15 int32 // %t6 - var _v69 int32 // %t60 - var _v70 int32 // %t61 - var _v72 int32 // %t63 - var _v73 int64 // %t64 - var _v74 int64 // %t65 - var _v75 int64 // %t66 - var _v76 int32 // %t67 - var _v77 int32 // %t68 - var _v78 int64 // %t69 - var _v16 int32 // %t7 - var _v79 int32 // %t70 - var _v81 int32 // %t72 - var _v82 int32 // %t73 - var _v83 int32 // %t74 - var _v84 int32 // %t75 - var _v85 int64 // %t76 - var _v86 int64 // %t77 - var _v87 int64 // %t78 - var _v88 int32 // %t79 - var _v17 int64 // %t8 - var _v89 int32 // %t80 - var _v90 int64 // %t81 - var _v91 int32 // %t82 - var _v93 int32 // %t84 - var _v95 int64 // %t86 - var _v96 int64 // %t87 - var _v97 int32 // %t88 - var _v18 int32 // %t9 - var _v100 int32 // %t91 - var _v102 int32 // %t93 - var _v103 int64 // %t94 - var _v104 int64 // %t95 - var _v105 int64 // %t96 - var _v106 int32 // %t97 - var _v107 int32 // %t98 - var _v3 = int64(bp + 0) // %v1 - var _v5 = int64(bp + 8) // %v2 - var _v7 = int64(bp + 16) // %v3 - var _v8 = int64(bp + 20) // %v4 - var _v9 = int64(bp + 24) // %v5 - var _v10 = int64(bp + 28) // %v6 - var _v11 = int64(bp + 32) // %v7 - *(*int64)(unsafe.Pointer(uintptr(_v3))) = _v1 - *(*int64)(unsafe.Pointer(uintptr(_v5))) = _v2 - goto l2 -l2: - _v12 = int64(_v3 + int64(0)) - _v13 = *(*int64)(unsafe.Pointer(uintptr(_v12))) - _v14 = int64(_v13 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v12))) = _v14 - _v15 = int32(*(*int8)(unsafe.Pointer(uintptr(_v13)))) - _v16 = int32(int8(_v15)) - _v17 = int64(_v7 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v17))) = _v16 - _v18 = *(*int32)(unsafe.Pointer(uintptr(_v17))) - _v20 = crt.Bool32(int32(_v18) != int32(0)) - if _v20 != 0 { - goto l3 - } - goto l139 -l3: - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v23 = crt.Bool32(int32(_v21) == int32(42)) - if _v23 != 0 { - goto l4 - } - goto l49 -l4: - goto l5 -l5: - _v24 = int64(_v3 + int64(0)) - _v25 = *(*int64)(unsafe.Pointer(uintptr(_v24))) - _v26 = int64(_v25 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v24))) = _v26 - _v27 = int32(*(*int8)(unsafe.Pointer(uintptr(_v25)))) - _v28 = int32(int8(_v27)) - _v29 = int64(_v7 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v29))) = _v28 - _v30 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v32 = crt.Bool32(int32(_v30) == int32(42)) - goto l6 -l6: - if _v32 != 0 { - goto l142 - } - goto l7 -l142: - _v36 = 1 - goto l10 -l7: - _v33 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v35 = crt.Bool32(int32(_v33) == int32(63)) - goto l8 -l8: - if _v35 != 0 { - goto l143 - } - goto l9 -l143: - _v36 = 1 - goto l10 -l9: - _v36 = 0 - goto l10 -l10: - if _v36 != 0 { - goto l11 - } - goto l20 -l11: - _v37 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v39 = crt.Bool32(int32(_v37) == int32(63)) - goto l12 -l12: - if _v39 != 0 { - goto l13 - } - goto l144 -l144: - _v47 = 0 - goto l16 -l13: - _v40 = int64(_v5 + int64(0)) - _v41 = *(*int64)(unsafe.Pointer(uintptr(_v40))) - _v42 = int64(_v41 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v40))) = _v42 - _v43 = int32(*(*int8)(unsafe.Pointer(uintptr(_v41)))) - _v44 = int32(int8(_v43)) - _v46 = crt.Bool32(int32(_v44) == int32(0)) - goto l14 -l14: - if _v46 != 0 { - goto l15 - } - goto l145 -l145: - _v47 = 0 - goto l16 -l15: - _v47 = 1 - goto l16 -l16: - if _v47 != 0 { - goto l17 - } - goto l19 -l17: - return 0 -l19: - goto l5 -l20: - _v49 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v51 = crt.Bool32(int32(_v49) == int32(0)) - if _v51 != 0 { - goto l21 - } - goto l23 -l21: - return 1 -l23: - _v53 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v55 = crt.Bool32(int32(_v53) == int32(91)) - if _v55 != 0 { - goto l24 - } - goto l34 -l24: - goto l25 -l25: - _v56 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v57 = int32(*(*int8)(unsafe.Pointer(uintptr(_v56)))) - goto l26 -l26: - if _v57 != 0 { - goto l27 - } - goto l146 -l146: - _v64 = 0 - goto l30 -l27: - _v58 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v61 = int64(_v58 - int64(1)) - _v62 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v63 = Xstrglob(t, _v61, _v62) - goto l28 -l28: - if _v63 != 0 { - goto l29 - } - goto l147 -l147: - _v64 = 0 - goto l30 -l29: - _v64 = 1 - goto l30 -l30: - if _v64 != 0 { - goto l31 - } - goto l32 -l31: - _v65 = int64(_v5 + int64(0)) - _v66 = *(*int64)(unsafe.Pointer(uintptr(_v65))) - _v67 = int64(_v66 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v65))) = _v67 - goto l25 -l32: - _v68 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v69 = int32(*(*int8)(unsafe.Pointer(uintptr(_v68)))) - _v70 = int32(int8(_v69)) - _v72 = crt.Bool32(int32(_v70) != int32(0)) - return _v72 -l34: - goto l35 -l35: - goto l36 -l36: - _v73 = int64(_v5 + int64(0)) - _v74 = *(*int64)(unsafe.Pointer(uintptr(_v73))) - _v75 = int64(_v74 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v73))) = _v75 - _v76 = int32(*(*int8)(unsafe.Pointer(uintptr(_v74)))) - _v77 = int32(int8(_v76)) - _v78 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v78))) = _v77 - _v79 = *(*int32)(unsafe.Pointer(uintptr(_v78))) - _v81 = crt.Bool32(int32(_v79) != int32(0)) - if _v81 != 0 { - goto l37 - } - goto l47 -l37: - goto l38 -l38: - _v82 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v83 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v84 = crt.Bool32(int32(_v82) != int32(_v83)) - if _v84 != 0 { - goto l39 - } - goto l43 -l39: - _v85 = int64(_v5 + int64(0)) - _v86 = *(*int64)(unsafe.Pointer(uintptr(_v85))) - _v87 = int64(_v86 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v85))) = _v87 - _v88 = int32(*(*int8)(unsafe.Pointer(uintptr(_v86)))) - _v89 = int32(int8(_v88)) - _v90 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v90))) = _v89 - _v91 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v93 = crt.Bool32(int32(_v91) == int32(0)) - if _v93 != 0 { - goto l40 - } - goto l42 -l40: - return 0 -l42: - goto l38 -l43: - _v95 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v96 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v97 = Xstrglob(t, _v95, _v96) - if _v97 != 0 { - goto l44 - } - goto l46 -l44: - return 1 -l46: - goto l36 -l47: - return 0 -l49: - _v100 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v102 = crt.Bool32(int32(_v100) == int32(63)) - if _v102 != 0 { - goto l50 - } - goto l54 -l50: - _v103 = int64(_v5 + int64(0)) - _v104 = *(*int64)(unsafe.Pointer(uintptr(_v103))) - _v105 = int64(_v104 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v103))) = _v105 - _v106 = int32(*(*int8)(unsafe.Pointer(uintptr(_v104)))) - _v107 = int32(int8(_v106)) - _v109 = crt.Bool32(int32(_v107) == int32(0)) - if _v109 != 0 { - goto l51 - } - goto l53 -l51: - return 0 -l53: - goto l137 -l54: - _v111 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v113 = crt.Bool32(int32(_v111) == int32(91)) - if _v113 != 0 { - goto l55 - } - goto l108 -l55: - *(*int32)(unsafe.Pointer(uintptr(_v11))) = 0 - _v116 = int64(_v10 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v116))) = 0 - _v118 = int64(_v9 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v118))) = 0 - _v119 = int64(_v5 + int64(0)) - _v120 = *(*int64)(unsafe.Pointer(uintptr(_v119))) - _v121 = int64(_v120 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v119))) = _v121 - _v122 = int32(*(*int8)(unsafe.Pointer(uintptr(_v120)))) - _v123 = int32(int8(_v122)) - _v124 = int64(_v7 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v124))) = _v123 - _v125 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v127 = crt.Bool32(int32(_v125) == int32(0)) - if _v127 != 0 { - goto l56 - } - goto l58 -l56: - return 0 -l58: - _v129 = int64(_v3 + int64(0)) - _v130 = *(*int64)(unsafe.Pointer(uintptr(_v129))) - _v131 = int64(_v130 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v129))) = _v131 - _v132 = int32(*(*int8)(unsafe.Pointer(uintptr(_v130)))) - _v133 = int32(int8(_v132)) - _v134 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v134))) = _v133 - _v135 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v137 = crt.Bool32(int32(_v135) == int32(94)) - if _v137 != 0 { - goto l59 - } - goto l60 -l59: - _v139 = int64(_v9 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v139))) = 1 - _v140 = int64(_v3 + int64(0)) - _v141 = *(*int64)(unsafe.Pointer(uintptr(_v140))) - _v142 = int64(_v141 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v140))) = _v142 - _v143 = int32(*(*int8)(unsafe.Pointer(uintptr(_v141)))) - _v144 = int32(int8(_v143)) - _v145 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v145))) = _v144 - goto l60 -l60: - _v146 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v148 = crt.Bool32(int32(_v146) == int32(93)) - if _v148 != 0 { - goto l61 - } - goto l148 -l148: - goto l64 -l61: - _v149 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v151 = crt.Bool32(int32(_v149) == int32(93)) - if _v151 != 0 { - goto l62 - } - goto l63 -l62: - _v153 = int64(_v10 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v153))) = 1 - goto l63 -l63: - _v154 = int64(_v3 + int64(0)) - _v155 = *(*int64)(unsafe.Pointer(uintptr(_v154))) - _v156 = int64(_v155 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v154))) = _v156 - _v157 = int32(*(*int8)(unsafe.Pointer(uintptr(_v155)))) - _v158 = int32(int8(_v157)) - _v159 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v159))) = _v158 - goto l64 -l64: - goto l65 -l65: - _v160 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - goto l66 -l66: - if _v160 != 0 { - goto l67 - } - goto l149 -l149: - _v164 = 0 - goto l70 -l67: - _v161 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v163 = crt.Bool32(int32(_v161) != int32(93)) - goto l68 -l68: - if _v163 != 0 { - goto l69 - } - goto l150 -l150: - _v164 = 0 - goto l70 -l69: - _v164 = 1 - goto l70 -l70: - if _v164 != 0 { - goto l71 - } - goto l99 -l71: - _v165 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v167 = crt.Bool32(int32(_v165) == int32(45)) - goto l72 -l72: - if _v167 != 0 { - goto l73 - } - goto l151 -l151: - _v177 = 0 - goto l76 -l73: - _v171 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v172 = int64(_v171 + int64(0)) - _v173 = int32(*(*int8)(unsafe.Pointer(uintptr(_v172)))) - _v174 = int32(int8(_v173)) - _v176 = crt.Bool32(int32(_v174) != int32(93)) - goto l74 -l74: - if _v176 != 0 { - goto l75 - } - goto l152 -l152: - _v177 = 0 - goto l76 -l75: - _v177 = 1 - goto l76 -l76: - goto l77 -l77: - if _v177 != 0 { - goto l78 - } - goto l153 -l153: - _v187 = 0 - goto l81 -l78: - _v181 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v182 = int64(_v181 + int64(0)) - _v183 = int32(*(*int8)(unsafe.Pointer(uintptr(_v182)))) - _v184 = int32(int8(_v183)) - _v186 = crt.Bool32(int32(_v184) != int32(0)) - goto l79 -l79: - if _v186 != 0 { - goto l80 - } - goto l154 -l154: - _v187 = 0 - goto l81 -l80: - _v187 = 1 - goto l81 -l81: - goto l82 -l82: - if _v187 != 0 { - goto l83 - } - goto l155 -l155: - _v191 = 0 - goto l86 -l83: - _v188 = *(*int32)(unsafe.Pointer(uintptr(_v11))) - _v190 = crt.Bool32(int32(_v188) > int32(0)) - goto l84 -l84: - if _v190 != 0 { - goto l85 - } - goto l156 -l156: - _v191 = 0 - goto l86 -l85: - _v191 = 1 - goto l86 -l86: - if _v191 != 0 { - goto l87 - } - goto l95 -l87: - _v192 = int64(_v3 + int64(0)) - _v193 = *(*int64)(unsafe.Pointer(uintptr(_v192))) - _v194 = int64(_v193 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v192))) = _v194 - _v195 = int32(*(*int8)(unsafe.Pointer(uintptr(_v193)))) - _v196 = int32(int8(_v195)) - _v197 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v197))) = _v196 - _v198 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v199 = *(*int32)(unsafe.Pointer(uintptr(_v11))) - _v200 = crt.Bool32(int32(_v198) >= int32(_v199)) - goto l88 -l88: - if _v200 != 0 { - goto l89 - } - goto l157 -l157: - _v204 = 0 - goto l92 -l89: - _v201 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v202 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v203 = crt.Bool32(int32(_v201) <= int32(_v202)) - goto l90 -l90: - if _v203 != 0 { - goto l91 - } - goto l158 -l158: - _v204 = 0 - goto l92 -l91: - _v204 = 1 - goto l92 -l92: - if _v204 != 0 { - goto l93 - } - goto l94 -l93: - _v206 = int64(_v10 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v206))) = 1 - goto l94 -l94: - _v208 = int64(_v11 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v208))) = 0 - goto l98 -l95: - _v209 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v210 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v211 = crt.Bool32(int32(_v209) == int32(_v210)) - if _v211 != 0 { - goto l96 - } - goto l97 -l96: - _v213 = int64(_v10 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v213))) = 1 - goto l97 -l97: - _v214 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v215 = int64(_v11 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v215))) = _v214 - goto l98 -l98: - _v216 = int64(_v3 + int64(0)) - _v217 = *(*int64)(unsafe.Pointer(uintptr(_v216))) - _v218 = int64(_v217 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v216))) = _v218 - _v219 = int32(*(*int8)(unsafe.Pointer(uintptr(_v217)))) - _v220 = int32(int8(_v219)) - _v221 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v221))) = _v220 - goto l65 -l99: - _v222 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v224 = crt.Bool32(int32(_v222) == int32(0)) - goto l100 -l100: - if _v224 != 0 { - goto l159 - } - goto l101 -l159: - _v230 = 1 - goto l104 -l101: - _v225 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _v226 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v227 = int32(_v225 ^ _v226) - _v229 = crt.Bool32(int32(_v227) == int32(0)) - goto l102 -l102: - if _v229 != 0 { - goto l160 - } - goto l103 -l160: - _v230 = 1 - goto l104 -l103: - _v230 = 0 - goto l104 -l104: - if _v230 != 0 { - goto l105 - } - goto l107 -l105: - return 0 -l107: - goto l136 -l108: - _v232 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v234 = crt.Bool32(int32(_v232) == int32(35)) - if _v234 != 0 { - goto l109 - } - goto l131 -l109: - _v238 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v239 = int64(_v238 + int64(0)) - _v240 = int32(*(*int8)(unsafe.Pointer(uintptr(_v239)))) - _v241 = int32(int8(_v240)) - _v243 = crt.Bool32(int32(_v241) == int32(45)) - goto l110 -l110: - if _v243 != 0 { - goto l161 - } - goto l111 -l161: - _v253 = 1 - goto l114 -l111: - _v247 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v248 = int64(_v247 + int64(0)) - _v249 = int32(*(*int8)(unsafe.Pointer(uintptr(_v248)))) - _v250 = int32(int8(_v249)) - _v252 = crt.Bool32(int32(_v250) == int32(43)) - goto l112 -l112: - if _v252 != 0 { - goto l162 - } - goto l113 -l162: - _v253 = 1 - goto l114 -l113: - _v253 = 0 - goto l114 -l114: - goto l115 -l115: - if _v253 != 0 { - goto l116 - } - goto l163 -l163: - _v272 = 0 - goto l119 -l116: - _v257 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v258 = int64(_v257 + int64(1)) - _v259 = int32(*(*int8)(unsafe.Pointer(uintptr(_v258)))) - _v260 = int32(int32(uint8(_v259))) - _v261 = int64(int32(_v260)) - _v262 = int64(_v261 * int64(2)) - _v263 = crt.X__ctype_b_loc(t) - _v264 = *(*int64)(unsafe.Pointer(uintptr(_v263))) - _v265 = int64(_v264 + _v262) - _v266 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v265)))) - _v267 = int32(uint16(_v266)) - _v271 = int32(int32(_v267) & int32(2048)) - goto l117 -l117: - if _v271 != 0 { - goto l118 - } - goto l164 -l164: - _v272 = 0 - goto l119 -l118: - _v272 = 1 - goto l119 -l119: - if _v272 != 0 { - goto l120 - } - goto l121 -l120: - _v273 = int64(_v5 + int64(0)) - _v274 = *(*int64)(unsafe.Pointer(uintptr(_v273))) - _v275 = int64(_v274 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v273))) = _v275 - goto l121 -l121: - _v279 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v280 = int64(_v279 + int64(0)) - _v281 = int32(*(*int8)(unsafe.Pointer(uintptr(_v280)))) - _v282 = int32(int32(uint8(_v281))) - _v283 = int64(int32(_v282)) - _v284 = int64(_v283 * int64(2)) - _v285 = crt.X__ctype_b_loc(t) - _v286 = *(*int64)(unsafe.Pointer(uintptr(_v285))) - _v287 = int64(_v286 + _v284) - _v288 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v287)))) - _v289 = int32(uint16(_v288)) - _v293 = int32(int32(_v289) & int32(2048)) - goto l122 -l122: - if _v293 != 0 { - goto l123 - } - goto l165 -l165: - _v294 = 1 - goto l124 -l123: - _v294 = 0 - goto l124 -l124: - if _v294 != 0 { - goto l125 - } - goto l127 -l125: - return 0 -l127: - _v296 = int64(_v5 + int64(0)) - _v297 = *(*int64)(unsafe.Pointer(uintptr(_v296))) - _v298 = int64(_v297 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v296))) = _v298 - goto l128 -l128: - _v302 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v303 = int64(_v302 + int64(0)) - _v304 = int32(*(*int8)(unsafe.Pointer(uintptr(_v303)))) - _v305 = int32(int32(uint8(_v304))) - _v306 = int64(int32(_v305)) - _v307 = int64(_v306 * int64(2)) - _v308 = crt.X__ctype_b_loc(t) - _v309 = *(*int64)(unsafe.Pointer(uintptr(_v308))) - _v310 = int64(_v309 + _v307) - _v311 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v310)))) - _v312 = int32(uint16(_v311)) - _v316 = int32(int32(_v312) & int32(2048)) - if _v316 != 0 { - goto l129 - } - goto l130 -l129: - _v317 = int64(_v5 + int64(0)) - _v318 = *(*int64)(unsafe.Pointer(uintptr(_v317))) - _v319 = int64(_v318 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v317))) = _v319 - goto l128 -l130: - goto l135 -l131: - _v320 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v321 = int64(_v5 + int64(0)) - _v322 = *(*int64)(unsafe.Pointer(uintptr(_v321))) - _v323 = int64(_v322 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v321))) = _v323 - _v324 = int32(*(*int8)(unsafe.Pointer(uintptr(_v322)))) - _v325 = int32(int8(_v324)) - _v326 = crt.Bool32(int32(_v320) != int32(_v325)) - if _v326 != 0 { - goto l132 - } - goto l134 -l132: - return 0 -l134: - goto l135 -l135: - goto l136 -l136: - goto l137 -l137: - goto l138 -l138: - goto l2 -l139: - _v328 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v329 = int32(*(*int8)(unsafe.Pointer(uintptr(_v328)))) - _v330 = int32(int8(_v329)) - _v332 = crt.Bool32(int32(_v330) == int32(0)) - return _v332 +type sqlite3_index_info = sqlite3_index_info1 /* sqlite3.h:6688:35 */ +type sqlite3_vtab_cursor1 = struct{ pVtab uintptr } + +type sqlite3_vtab_cursor = sqlite3_vtab_cursor1 /* sqlite3.h:6689:36 */ +type sqlite3_module1 = struct { + iVersion int32 + xCreate uintptr + xConnect uintptr + xBestIndex uintptr + xDisconnect uintptr + xDestroy uintptr + xOpen uintptr + xClose uintptr + xFilter uintptr + xNext uintptr + xEof uintptr + xColumn uintptr + xRowid uintptr + xUpdate uintptr + xBegin uintptr + xSync uintptr + xCommit uintptr + xRollback uintptr + xFindFunction uintptr + xRename uintptr + xSavepoint uintptr + xRelease uintptr + xRollbackTo uintptr + xShadowName uintptr } -var s__10 = [8]byte{0x73, 0x74, 0x72, 0x67, 0x6c, 0x6f, 0x62} - -func s_maybeClose(t *crt.TLS, _v1 int64) { - var _v3 int64 // %t2 - var _v4 int32 // %t3 - var _v6 int64 // %t5 - var _v7 int32 // %t6 - var _v8 int32 // %t7 - _v3 = *(*int64)(unsafe.Pointer(&crt.Xstdout)) - _v4 = crt.Bool32(int64(_v1) != int64(_v3)) - goto l2 -l2: - if _v4 != 0 { - goto l3 - } - goto l10 -l10: - _v8 = 0 - goto l6 -l3: - _v6 = *(*int64)(unsafe.Pointer(&crt.Xstderr)) - _v7 = crt.Bool32(int64(_v1) != int64(_v6)) - goto l4 -l4: - if _v7 != 0 { - goto l5 - } - goto l11 -l11: - _v8 = 0 - goto l6 -l5: - _v8 = 1 - goto l6 -l6: - if _v8 != 0 { - goto l7 - } - goto l8 -l7: - _ = crt.Xfclose(t, _v1) - goto l8 -l8: - goto l9 -l9: +type sqlite3_module = sqlite3_module1 /* sqlite3.h:6690:31 */ + +// CAPI3REF: Virtual Table Indexing Information +// KEYWORDS: sqlite3_index_info +// +// The sqlite3_index_info structure and its substructures is used as part +// of the [virtual table] interface to +// pass information into and receive the reply from the [xBestIndex] +// method of a [virtual table module]. The fields under **Inputs** are the +// inputs to xBestIndex and are read-only. xBestIndex inserts its +// results into the **Outputs** fields. +// +// ^(The aConstraint[] array records WHERE clause constraints of the form: +// +// <blockquote>column OP expr</blockquote> +// +// where OP is =, <, <=, >, or >=.)^ ^(The particular operator is +// stored in aConstraint[].op using one of the +// [SQLITE_INDEX_CONSTRAINT_EQ | SQLITE_INDEX_CONSTRAINT_ values].)^ +// ^(The index of the column is stored in +// aConstraint[].iColumn.)^ ^(aConstraint[].usable is TRUE if the +// expr on the right-hand side can be evaluated (and thus the constraint +// is usable) and false if it cannot.)^ +// +// ^The optimizer automatically inverts terms of the form "expr OP column" +// and makes other simplifications to the WHERE clause in an attempt to +// get as many WHERE clause terms into the form shown above as possible. +// ^The aConstraint[] array only reports WHERE clause terms that are +// relevant to the particular virtual table being queried. +// +// ^Information about the ORDER BY clause is stored in aOrderBy[]. +// ^Each term of aOrderBy records a column of the ORDER BY clause. +// +// The colUsed field indicates which columns of the virtual table may be +// required by the current scan. Virtual table columns are numbered from +// zero in the order in which they appear within the CREATE TABLE statement +// passed to sqlite3_declare_vtab(). For the first 63 columns (columns 0-62), +// the corresponding bit is set within the colUsed mask if the column may be +// required by SQLite. If the table has at least 64 columns and any column +// to the right of the first 63 is required, then bit 63 of colUsed is also +// set. In other words, column iCol may be required if the expression +// (colUsed & ((sqlite3_uint64)1 << (iCol>=63 ? 63 : iCol))) evaluates to +// non-zero. +// +// The [xBestIndex] method must fill aConstraintUsage[] with information +// about what parameters to pass to xFilter. ^If argvIndex>0 then +// the right-hand side of the corresponding aConstraint[] is evaluated +// and becomes the argvIndex-th entry in argv. ^(If aConstraintUsage[].omit +// is true, then the constraint is assumed to be fully handled by the +// virtual table and might not be checked again by the byte code.)^ ^(The +// aConstraintUsage[].omit flag is an optimization hint. When the omit flag +// is left in its default setting of false, the constraint will always be +// checked separately in byte code. If the omit flag is change to true, then +// the constraint may or may not be checked in byte code. In other words, +// when the omit flag is true there is no guarantee that the constraint will +// not be checked again using byte code.)^ +// +// ^The idxNum and idxPtr values are recorded and passed into the +// [xFilter] method. +// ^[sqlite3_free()] is used to free idxPtr if and only if +// needToFreeIdxPtr is true. +// +// ^The orderByConsumed means that output from [xFilter]/[xNext] will occur in +// the correct order to satisfy the ORDER BY clause so that no separate +// sorting step is required. +// +// ^The estimatedCost value is an estimate of the cost of a particular +// strategy. A cost of N indicates that the cost of the strategy is similar +// to a linear scan of an SQLite table with N rows. A cost of log(N) +// indicates that the expense of the operation is similar to that of a +// binary search on a unique indexed field of an SQLite table with N rows. +// +// ^The estimatedRows value is an estimate of the number of rows that +// will be returned by the strategy. +// +// The xBestIndex method may optionally populate the idxFlags field with a +// mask of SQLITE_INDEX_SCAN_* flags. Currently there is only one such flag - +// SQLITE_INDEX_SCAN_UNIQUE. If the xBestIndex method sets this flag, SQLite +// assumes that the strategy may visit at most one row. +// +// Additionally, if xBestIndex sets the SQLITE_INDEX_SCAN_UNIQUE flag, then +// SQLite also assumes that if a call to the xUpdate() method is made as +// part of the same statement to delete or update a virtual table row and the +// implementation returns SQLITE_CONSTRAINT, then there is no need to rollback +// any database changes. In other words, if the xUpdate() returns +// SQLITE_CONSTRAINT, the database contents must be exactly as they were +// before xUpdate was called. By contrast, if SQLITE_INDEX_SCAN_UNIQUE is not +// set and xUpdate returns SQLITE_CONSTRAINT, any database changes made by +// the xUpdate method are automatically rolled back by SQLite. +// +// IMPORTANT: The estimatedRows field was added to the sqlite3_index_info +// structure for SQLite [version 3.8.2] ([dateof:3.8.2]). +// If a virtual table extension is +// used with an SQLite version earlier than 3.8.2, the results of attempting +// to read or write the estimatedRows field are undefined (but are likely +// to include crashing the application). The estimatedRows field should +// therefore only be used if [sqlite3_libversion_number()] returns a +// value greater than or equal to 3008002. Similarly, the idxFlags field +// was added for [version 3.9.0] ([dateof:3.9.0]). +// It may therefore only be used if +// sqlite3_libversion_number() returns a value greater than or equal to +// 3009000. +type sqlite3_index_constraint = struct { + iColumn int32 + op uint8 + usable uint8 + iTermOffset int32 } -var s__11 = [11]byte{0x6d, 0x61, 0x79, 0x62, 0x65, 0x43, 0x6c, 0x6f, 0x73, 0x65} - -func s_errorMessage(t *crt.TLS, _v1 int64, args uintptr) { - bp := t.Alloc(80) - defer t.Free(80) - var _v19 int64 // %t15 - var _v20 int32 // %t16 - var _v23 int64 // %t19 - var _v25 int64 // %t21 - var _v28 int64 // %t24 - var _v32 int64 // %t28 - var _v33 int32 // %t29 - var _v7 int64 // %t3 - var _v36 int64 // %t32 - var _v39 int64 // %t35 - var _v40 int32 // %t36 - var _v41 int32 // %t37 - var _v8 int64 // %t4 - var _v44 int64 // %t40 - var _v46 int64 // %t42 - var _v49 int64 // %t45 - var _v51 int64 // %t47 - var _v54 int32 // %t50 - var _v55 int32 // %t51 - var _v2 = int64(bp + 8) // %v2 - var _v3 = int64(bp + 32) // %v3 - var _v4 = int64(bp + 40) // %v4 - *(*uintptr)(unsafe.Pointer(bp + 8)) = args - _v7 = Xsqlite3_vmprintf(t, _v1, _v2) - _v8 = int64(_v3 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v8))) = _v7 - *(*int64)(unsafe.Pointer(bp + 0)) = int64(uintptr(unsafe.Pointer(&s_g)) + 64) - - _ = Xsqlite3_snprintf(t, 30, _v4, int64(uintptr(unsafe.Pointer(&s__13))), bp+0) - _v19 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) - _v20 = crt.Bool32(int64(_v19) != int64(int64(0))) - if _v20 != 0 { - goto l2 - } - goto l3 -l2: - _v23 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) - _v25 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - s_printWithPrefix(t, _v23, _v4, _v25) - _v28 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) - _ = crt.Xfflush(t, _v28) - goto l3 -l3: - _v32 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 40)) - _v33 = crt.Bool32(int64(_v32) != int64(int64(0))) - goto l4 -l4: - if _v33 != 0 { - goto l5 - } - goto l12 -l12: - _v41 = 0 - goto l8 -l5: - _v36 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 32)) - _v39 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 48)) - _v40 = s_safe_strcmp(t, _v36, _v39) - goto l6 -l6: - if _v40 != 0 { - goto l7 - } - goto l13 -l13: - _v41 = 0 - goto l8 -l7: - _v41 = 1 - goto l8 -l8: - if _v41 != 0 { - goto l9 - } - goto l10 -l9: - _v44 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 40)) - _v46 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - s_printWithPrefix(t, _v44, _v4, _v46) - _v49 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 40)) - _ = crt.Xfflush(t, _v49) - goto l10 -l10: - _v51 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v51) - _v54 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 112)) - _v55 = int32(int32(_v54) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 112)) = _v55 - goto l11 -l11: +// CAPI3REF: Virtual Table Indexing Information +// KEYWORDS: sqlite3_index_info +// +// The sqlite3_index_info structure and its substructures is used as part +// of the [virtual table] interface to +// pass information into and receive the reply from the [xBestIndex] +// method of a [virtual table module]. The fields under **Inputs** are the +// inputs to xBestIndex and are read-only. xBestIndex inserts its +// results into the **Outputs** fields. +// +// ^(The aConstraint[] array records WHERE clause constraints of the form: +// +// <blockquote>column OP expr</blockquote> +// +// where OP is =, <, <=, >, or >=.)^ ^(The particular operator is +// stored in aConstraint[].op using one of the +// [SQLITE_INDEX_CONSTRAINT_EQ | SQLITE_INDEX_CONSTRAINT_ values].)^ +// ^(The index of the column is stored in +// aConstraint[].iColumn.)^ ^(aConstraint[].usable is TRUE if the +// expr on the right-hand side can be evaluated (and thus the constraint +// is usable) and false if it cannot.)^ +// +// ^The optimizer automatically inverts terms of the form "expr OP column" +// and makes other simplifications to the WHERE clause in an attempt to +// get as many WHERE clause terms into the form shown above as possible. +// ^The aConstraint[] array only reports WHERE clause terms that are +// relevant to the particular virtual table being queried. +// +// ^Information about the ORDER BY clause is stored in aOrderBy[]. +// ^Each term of aOrderBy records a column of the ORDER BY clause. +// +// The colUsed field indicates which columns of the virtual table may be +// required by the current scan. Virtual table columns are numbered from +// zero in the order in which they appear within the CREATE TABLE statement +// passed to sqlite3_declare_vtab(). For the first 63 columns (columns 0-62), +// the corresponding bit is set within the colUsed mask if the column may be +// required by SQLite. If the table has at least 64 columns and any column +// to the right of the first 63 is required, then bit 63 of colUsed is also +// set. In other words, column iCol may be required if the expression +// (colUsed & ((sqlite3_uint64)1 << (iCol>=63 ? 63 : iCol))) evaluates to +// non-zero. +// +// The [xBestIndex] method must fill aConstraintUsage[] with information +// about what parameters to pass to xFilter. ^If argvIndex>0 then +// the right-hand side of the corresponding aConstraint[] is evaluated +// and becomes the argvIndex-th entry in argv. ^(If aConstraintUsage[].omit +// is true, then the constraint is assumed to be fully handled by the +// virtual table and might not be checked again by the byte code.)^ ^(The +// aConstraintUsage[].omit flag is an optimization hint. When the omit flag +// is left in its default setting of false, the constraint will always be +// checked separately in byte code. If the omit flag is change to true, then +// the constraint may or may not be checked in byte code. In other words, +// when the omit flag is true there is no guarantee that the constraint will +// not be checked again using byte code.)^ +// +// ^The idxNum and idxPtr values are recorded and passed into the +// [xFilter] method. +// ^[sqlite3_free()] is used to free idxPtr if and only if +// needToFreeIdxPtr is true. +// +// ^The orderByConsumed means that output from [xFilter]/[xNext] will occur in +// the correct order to satisfy the ORDER BY clause so that no separate +// sorting step is required. +// +// ^The estimatedCost value is an estimate of the cost of a particular +// strategy. A cost of N indicates that the cost of the strategy is similar +// to a linear scan of an SQLite table with N rows. A cost of log(N) +// indicates that the expense of the operation is similar to that of a +// binary search on a unique indexed field of an SQLite table with N rows. +// +// ^The estimatedRows value is an estimate of the number of rows that +// will be returned by the strategy. +// +// The xBestIndex method may optionally populate the idxFlags field with a +// mask of SQLITE_INDEX_SCAN_* flags. Currently there is only one such flag - +// SQLITE_INDEX_SCAN_UNIQUE. If the xBestIndex method sets this flag, SQLite +// assumes that the strategy may visit at most one row. +// +// Additionally, if xBestIndex sets the SQLITE_INDEX_SCAN_UNIQUE flag, then +// SQLite also assumes that if a call to the xUpdate() method is made as +// part of the same statement to delete or update a virtual table row and the +// implementation returns SQLITE_CONSTRAINT, then there is no need to rollback +// any database changes. In other words, if the xUpdate() returns +// SQLITE_CONSTRAINT, the database contents must be exactly as they were +// before xUpdate was called. By contrast, if SQLITE_INDEX_SCAN_UNIQUE is not +// set and xUpdate returns SQLITE_CONSTRAINT, any database changes made by +// the xUpdate method are automatically rolled back by SQLite. +// +// IMPORTANT: The estimatedRows field was added to the sqlite3_index_info +// structure for SQLite [version 3.8.2] ([dateof:3.8.2]). +// If a virtual table extension is +// used with an SQLite version earlier than 3.8.2, the results of attempting +// to read or write the estimatedRows field are undefined (but are likely +// to include crashing the application). The estimatedRows field should +// therefore only be used if [sqlite3_libversion_number()] returns a +// value greater than or equal to 3008002. Similarly, the idxFlags field +// was added for [version 3.9.0] ([dateof:3.9.0]). +// It may therefore only be used if +// sqlite3_libversion_number() returns a value greater than or equal to +// 3009000. +type sqlite3_index_orderby = struct { + iColumn int32 + desc uint8 + _ [3]byte } -var s__12 = [13]byte{0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65} - -var s__13 = [11]byte{0x25, 0x73, 0x3a, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x3a, 0x20} - -func s_fatalError(t *crt.TLS, _v1 int64, args uintptr) { - bp := t.Alloc(80) - defer t.Free(80) - var _v20 int64 // %t15 - var _v21 int32 // %t16 - var _v24 int64 // %t19 - var _v26 int64 // %t21 - var _v29 int64 // %t24 - var _v33 int64 // %t28 - var _v8 int64 // %t3 - var _v36 int64 // %t31 - var _v37 int32 // %t32 - var _v40 int64 // %t35 - var _v43 int64 // %t38 - var _v44 int32 // %t39 - var _v9 int64 // %t4 - var _v45 int32 // %t40 - var _v48 int64 // %t43 - var _v50 int64 // %t45 - var _v53 int64 // %t48 - var _v57 int64 // %t52 - var _v58 int64 // %t53 - var _v61 int64 // %t56 - var _v62 int32 // %t57 - var _v68 int32 // %t63 - var _v70 int32 // %t65 - var _v71 int64 // %t66 - var _v72 int32 // %t67 - var _v73 int32 // %t68 - var _v75 int32 // %t70 - var _v76 int32 // %t71 - var _v81 int64 // %t76 - var _v2 = int64(bp + 8) // %v2 - var _v3 = int64(bp + 32) // %v3 - var _v4 = int64(bp + 40) // %v4 - var _v5 = int64(bp + 72) // %v5 - *(*uintptr)(unsafe.Pointer(bp + 8)) = args - _v8 = Xsqlite3_vmprintf(t, _v1, _v2) - _v9 = int64(_v3 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v9))) = _v8 - *(*int64)(unsafe.Pointer(bp + 0)) = int64(uintptr(unsafe.Pointer(&s_g)) + 64) - - _ = Xsqlite3_snprintf(t, 30, _v4, int64(uintptr(unsafe.Pointer(&s__15))), bp+0) - _v20 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) - _v21 = crt.Bool32(int64(_v20) != int64(int64(0))) - if _v21 != 0 { - goto l2 - } - goto l3 -l2: - _v24 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) - _v26 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - s_printWithPrefix(t, _v24, _v4, _v26) - _v29 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) - _ = crt.Xfflush(t, _v29) - _v33 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) - s_maybeClose(t, _v33) - goto l3 -l3: - _v36 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 40)) - _v37 = crt.Bool32(int64(_v36) != int64(int64(0))) - goto l4 -l4: - if _v37 != 0 { - goto l5 - } - goto l22 -l22: - _v45 = 0 - goto l8 -l5: - _v40 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 32)) - _v43 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 48)) - _v44 = s_safe_strcmp(t, _v40, _v43) - goto l6 -l6: - if _v44 != 0 { - goto l7 - } - goto l23 -l23: - _v45 = 0 - goto l8 -l7: - _v45 = 1 - goto l8 -l8: - if _v45 != 0 { - goto l9 - } - goto l10 -l9: - _v48 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 40)) - _v50 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - s_printWithPrefix(t, _v48, _v4, _v50) - _v53 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 40)) - _ = crt.Xfflush(t, _v53) - _v57 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 40)) - s_maybeClose(t, _v57) - goto l10 -l10: - _v58 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v58) - _v61 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v62 = crt.Bool32(int64(_v61) != int64(int64(0))) - if _v62 != 0 { - goto l11 - } - goto l20 -l11: - *(*int32)(unsafe.Pointer(uintptr(_v5))) = 0 - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) = 0 - goto l12 -l12: - - _v68 = s_trySql(t, int64(uintptr(unsafe.Pointer(&s__16))), 0) - _v70 = crt.Bool32(int32(_v68) == int32(5)) - goto l13 -l13: - if _v70 != 0 { - goto l14 - } - goto l24 -l24: - _v76 = 0 - goto l17 -l14: - _v71 = int64(_v5 + int64(0)) - _v72 = *(*int32)(unsafe.Pointer(uintptr(_v71))) - _v73 = int32(int32(_v72) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v71))) = _v73 - _v75 = crt.Bool32(int32(_v72) < int32(100)) - goto l15 -l15: - if _v75 != 0 { - goto l16 - } - goto l25 -l25: - _v76 = 0 - goto l17 -l16: - _v76 = 1 - goto l17 -l17: - if _v76 != 0 { - goto l18 - } - goto l19 -l18: - _ = Xsqlite3_sleep(t, 10) - goto l12 -l19: - goto l20 -l20: - _v81 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _ = Xsqlite3_close(t, _v81) - crt.Xexit(t, 1) - goto l21 -l21: +// CAPI3REF: Virtual Table Indexing Information +// KEYWORDS: sqlite3_index_info +// +// The sqlite3_index_info structure and its substructures is used as part +// of the [virtual table] interface to +// pass information into and receive the reply from the [xBestIndex] +// method of a [virtual table module]. The fields under **Inputs** are the +// inputs to xBestIndex and are read-only. xBestIndex inserts its +// results into the **Outputs** fields. +// +// ^(The aConstraint[] array records WHERE clause constraints of the form: +// +// <blockquote>column OP expr</blockquote> +// +// where OP is =, <, <=, >, or >=.)^ ^(The particular operator is +// stored in aConstraint[].op using one of the +// [SQLITE_INDEX_CONSTRAINT_EQ | SQLITE_INDEX_CONSTRAINT_ values].)^ +// ^(The index of the column is stored in +// aConstraint[].iColumn.)^ ^(aConstraint[].usable is TRUE if the +// expr on the right-hand side can be evaluated (and thus the constraint +// is usable) and false if it cannot.)^ +// +// ^The optimizer automatically inverts terms of the form "expr OP column" +// and makes other simplifications to the WHERE clause in an attempt to +// get as many WHERE clause terms into the form shown above as possible. +// ^The aConstraint[] array only reports WHERE clause terms that are +// relevant to the particular virtual table being queried. +// +// ^Information about the ORDER BY clause is stored in aOrderBy[]. +// ^Each term of aOrderBy records a column of the ORDER BY clause. +// +// The colUsed field indicates which columns of the virtual table may be +// required by the current scan. Virtual table columns are numbered from +// zero in the order in which they appear within the CREATE TABLE statement +// passed to sqlite3_declare_vtab(). For the first 63 columns (columns 0-62), +// the corresponding bit is set within the colUsed mask if the column may be +// required by SQLite. If the table has at least 64 columns and any column +// to the right of the first 63 is required, then bit 63 of colUsed is also +// set. In other words, column iCol may be required if the expression +// (colUsed & ((sqlite3_uint64)1 << (iCol>=63 ? 63 : iCol))) evaluates to +// non-zero. +// +// The [xBestIndex] method must fill aConstraintUsage[] with information +// about what parameters to pass to xFilter. ^If argvIndex>0 then +// the right-hand side of the corresponding aConstraint[] is evaluated +// and becomes the argvIndex-th entry in argv. ^(If aConstraintUsage[].omit +// is true, then the constraint is assumed to be fully handled by the +// virtual table and might not be checked again by the byte code.)^ ^(The +// aConstraintUsage[].omit flag is an optimization hint. When the omit flag +// is left in its default setting of false, the constraint will always be +// checked separately in byte code. If the omit flag is change to true, then +// the constraint may or may not be checked in byte code. In other words, +// when the omit flag is true there is no guarantee that the constraint will +// not be checked again using byte code.)^ +// +// ^The idxNum and idxPtr values are recorded and passed into the +// [xFilter] method. +// ^[sqlite3_free()] is used to free idxPtr if and only if +// needToFreeIdxPtr is true. +// +// ^The orderByConsumed means that output from [xFilter]/[xNext] will occur in +// the correct order to satisfy the ORDER BY clause so that no separate +// sorting step is required. +// +// ^The estimatedCost value is an estimate of the cost of a particular +// strategy. A cost of N indicates that the cost of the strategy is similar +// to a linear scan of an SQLite table with N rows. A cost of log(N) +// indicates that the expense of the operation is similar to that of a +// binary search on a unique indexed field of an SQLite table with N rows. +// +// ^The estimatedRows value is an estimate of the number of rows that +// will be returned by the strategy. +// +// The xBestIndex method may optionally populate the idxFlags field with a +// mask of SQLITE_INDEX_SCAN_* flags. Currently there is only one such flag - +// SQLITE_INDEX_SCAN_UNIQUE. If the xBestIndex method sets this flag, SQLite +// assumes that the strategy may visit at most one row. +// +// Additionally, if xBestIndex sets the SQLITE_INDEX_SCAN_UNIQUE flag, then +// SQLite also assumes that if a call to the xUpdate() method is made as +// part of the same statement to delete or update a virtual table row and the +// implementation returns SQLITE_CONSTRAINT, then there is no need to rollback +// any database changes. In other words, if the xUpdate() returns +// SQLITE_CONSTRAINT, the database contents must be exactly as they were +// before xUpdate was called. By contrast, if SQLITE_INDEX_SCAN_UNIQUE is not +// set and xUpdate returns SQLITE_CONSTRAINT, any database changes made by +// the xUpdate method are automatically rolled back by SQLite. +// +// IMPORTANT: The estimatedRows field was added to the sqlite3_index_info +// structure for SQLite [version 3.8.2] ([dateof:3.8.2]). +// If a virtual table extension is +// used with an SQLite version earlier than 3.8.2, the results of attempting +// to read or write the estimatedRows field are undefined (but are likely +// to include crashing the application). The estimatedRows field should +// therefore only be used if [sqlite3_libversion_number()] returns a +// value greater than or equal to 3008002. Similarly, the idxFlags field +// was added for [version 3.9.0] ([dateof:3.9.0]). +// It may therefore only be used if +// sqlite3_libversion_number() returns a value greater than or equal to +// 3009000. +type sqlite3_index_constraint_usage = struct { + argvIndex int32 + omit uint8 + _ [3]byte } -var s__14 = [11]byte{0x66, 0x61, 0x74, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72} - -var s__15 = [11]byte{0x25, 0x73, 0x3a, 0x46, 0x41, 0x54, 0x41, 0x4c, 0x3a, 0x20} - -var s__16 = [30]byte{ - 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x53, 0x45, - 0x54, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x48, 0x61, 0x6c, 0x74, 0x3d, 0x31, 0x3b, +// CAPI3REF: Mutex Methods Object +// +// An instance of this structure defines the low-level routines +// used to allocate and use mutexes. +// +// Usually, the default mutex implementations provided by SQLite are +// sufficient, however the application has the option of substituting a custom +// implementation for specialized deployments or systems for which SQLite +// does not provide a suitable implementation. In this case, the application +// creates and populates an instance of this structure to pass +// to sqlite3_config() along with the [SQLITE_CONFIG_MUTEX] option. +// Additionally, an instance of this structure can be used as an +// output variable when querying the system for the current mutex +// implementation, using the [SQLITE_CONFIG_GETMUTEX] option. +// +// ^The xMutexInit method defined by this structure is invoked as +// part of system initialization by the sqlite3_initialize() function. +// ^The xMutexInit routine is called by SQLite exactly once for each +// effective call to [sqlite3_initialize()]. +// +// ^The xMutexEnd method defined by this structure is invoked as +// part of system shutdown by the sqlite3_shutdown() function. The +// implementation of this method is expected to release all outstanding +// resources obtained by the mutex methods implementation, especially +// those obtained by the xMutexInit method. ^The xMutexEnd() +// interface is invoked exactly once for each call to [sqlite3_shutdown()]. +// +// ^(The remaining seven methods defined by this structure (xMutexAlloc, +// xMutexFree, xMutexEnter, xMutexTry, xMutexLeave, xMutexHeld and +// xMutexNotheld) implement the following interfaces (respectively): +// +// <ul> +// <li> [sqlite3_mutex_alloc()] </li> +// <li> [sqlite3_mutex_free()] </li> +// <li> [sqlite3_mutex_enter()] </li> +// <li> [sqlite3_mutex_try()] </li> +// <li> [sqlite3_mutex_leave()] </li> +// <li> [sqlite3_mutex_held()] </li> +// <li> [sqlite3_mutex_notheld()] </li> +// </ul>)^ +// +// The only difference is that the public sqlite3_XXX functions enumerated +// above silently ignore any invocations that pass a NULL pointer instead +// of a valid mutex handle. The implementations of the methods defined +// by this structure are not required to handle this case. The results +// of passing a NULL pointer instead of a valid mutex handle are undefined +// (i.e. it is acceptable to provide an implementation that segfaults if +// it is passed a NULL pointer). +// +// The xMutexInit() method must be threadsafe. It must be harmless to +// invoke xMutexInit() multiple times within the same process and without +// intervening calls to xMutexEnd(). Second and subsequent calls to +// xMutexInit() must be no-ops. +// +// xMutexInit() must not use SQLite memory allocation ([sqlite3_malloc()] +// and its associates). Similarly, xMutexAlloc() must not use SQLite memory +// allocation for a static mutex. ^However xMutexAlloc() may use SQLite +// memory allocation for a fast or recursive mutex. +// +// ^SQLite will invoke the xMutexEnd() method when [sqlite3_shutdown()] is +// called, but only if the prior call to xMutexInit returned SQLITE_OK. +// If xMutexInit fails in any way, it is expected to clean up after itself +// prior to returning. +type sqlite3_mutex_methods1 = struct { + xMutexInit uintptr + xMutexEnd uintptr + xMutexAlloc uintptr + xMutexFree uintptr + xMutexEnter uintptr + xMutexTry uintptr + xMutexLeave uintptr + xMutexHeld uintptr + xMutexNotheld uintptr } -func s_logMessage(t *crt.TLS, _v1 int64, args uintptr) { - bp := t.Alloc(80) - defer t.Free(80) - var _v19 int64 // %t15 - var _v20 int32 // %t16 - var _v23 int64 // %t19 - var _v25 int64 // %t21 - var _v28 int64 // %t24 - var _v30 int64 // %t26 - var _v7 int64 // %t3 - var _v8 int64 // %t4 - var _v2 = int64(bp + 8) // %v2 - var _v3 = int64(bp + 32) // %v3 - var _v4 = int64(bp + 40) // %v4 - *(*uintptr)(unsafe.Pointer(bp + 8)) = args - _v7 = Xsqlite3_vmprintf(t, _v1, _v2) - _v8 = int64(_v3 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v8))) = _v7 - *(*int64)(unsafe.Pointer(bp + 0)) = int64(uintptr(unsafe.Pointer(&s_g)) + 64) - - _ = Xsqlite3_snprintf(t, 30, _v4, int64(uintptr(unsafe.Pointer(&s__18))), bp+0) - _v19 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) - _v20 = crt.Bool32(int64(_v19) != int64(int64(0))) - if _v20 != 0 { - goto l2 - } - goto l3 -l2: - _v23 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) - _v25 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - s_printWithPrefix(t, _v23, _v4, _v25) - _v28 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) - _ = crt.Xfflush(t, _v28) - goto l3 -l3: - _v30 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v30) - goto l4 -l4: +// CAPI3REF: Mutex Methods Object +// +// An instance of this structure defines the low-level routines +// used to allocate and use mutexes. +// +// Usually, the default mutex implementations provided by SQLite are +// sufficient, however the application has the option of substituting a custom +// implementation for specialized deployments or systems for which SQLite +// does not provide a suitable implementation. In this case, the application +// creates and populates an instance of this structure to pass +// to sqlite3_config() along with the [SQLITE_CONFIG_MUTEX] option. +// Additionally, an instance of this structure can be used as an +// output variable when querying the system for the current mutex +// implementation, using the [SQLITE_CONFIG_GETMUTEX] option. +// +// ^The xMutexInit method defined by this structure is invoked as +// part of system initialization by the sqlite3_initialize() function. +// ^The xMutexInit routine is called by SQLite exactly once for each +// effective call to [sqlite3_initialize()]. +// +// ^The xMutexEnd method defined by this structure is invoked as +// part of system shutdown by the sqlite3_shutdown() function. The +// implementation of this method is expected to release all outstanding +// resources obtained by the mutex methods implementation, especially +// those obtained by the xMutexInit method. ^The xMutexEnd() +// interface is invoked exactly once for each call to [sqlite3_shutdown()]. +// +// ^(The remaining seven methods defined by this structure (xMutexAlloc, +// xMutexFree, xMutexEnter, xMutexTry, xMutexLeave, xMutexHeld and +// xMutexNotheld) implement the following interfaces (respectively): +// +// <ul> +// <li> [sqlite3_mutex_alloc()] </li> +// <li> [sqlite3_mutex_free()] </li> +// <li> [sqlite3_mutex_enter()] </li> +// <li> [sqlite3_mutex_try()] </li> +// <li> [sqlite3_mutex_leave()] </li> +// <li> [sqlite3_mutex_held()] </li> +// <li> [sqlite3_mutex_notheld()] </li> +// </ul>)^ +// +// The only difference is that the public sqlite3_XXX functions enumerated +// above silently ignore any invocations that pass a NULL pointer instead +// of a valid mutex handle. The implementations of the methods defined +// by this structure are not required to handle this case. The results +// of passing a NULL pointer instead of a valid mutex handle are undefined +// (i.e. it is acceptable to provide an implementation that segfaults if +// it is passed a NULL pointer). +// +// The xMutexInit() method must be threadsafe. It must be harmless to +// invoke xMutexInit() multiple times within the same process and without +// intervening calls to xMutexEnd(). Second and subsequent calls to +// xMutexInit() must be no-ops. +// +// xMutexInit() must not use SQLite memory allocation ([sqlite3_malloc()] +// and its associates). Similarly, xMutexAlloc() must not use SQLite memory +// allocation for a static mutex. ^However xMutexAlloc() may use SQLite +// memory allocation for a fast or recursive mutex. +// +// ^SQLite will invoke the xMutexEnd() method when [sqlite3_shutdown()] is +// called, but only if the prior call to xMutexInit returned SQLITE_OK. +// If xMutexInit fails in any way, it is expected to clean up after itself +// prior to returning. +type sqlite3_mutex_methods = sqlite3_mutex_methods1 /* sqlite3.h:7522:38 */ + +// CAPI3REF: Custom Page Cache Object +// +// The sqlite3_pcache_page object represents a single page in the +// page cache. The page cache will allocate instances of this +// object. Various methods of the page cache use pointers to instances +// of this object as parameters or as their return value. +// +// See [sqlite3_pcache_methods2] for additional information. +type sqlite3_pcache_page1 = struct { + pBuf uintptr + pExtra uintptr } -var s__17 = [11]byte{0x6c, 0x6f, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65} - -var s__18 = [5]byte{0x25, 0x73, 0x3a, 0x20} - -func s_clipLength(t *crt.TLS, _v1 int64) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v12 int64 // %t10 - var _v13 int64 // %t11 - var _v15 int64 // %t13 - var _v16 int32 // %t14 - var _v17 int32 // %t15 - var _v18 int64 // %t16 - var _v19 int64 // %t17 - var _v20 int64 // %t18 - var _v21 int64 // %t19 - var _v4 int64 // %t2 - var _v22 int64 // %t20 - var _v23 int32 // %t21 - var _v24 int32 // %t22 - var _v28 int32 // %t26 - var _v29 int32 // %t27 - var _v30 int64 // %t28 - var _v31 int32 // %t29 - var _v5 int32 // %t3 - var _v32 int32 // %t30 - var _v33 int32 // %t31 - var _v6 int32 // %t4 - var _v8 int32 // %t6 - var _v9 int32 // %t7 - var _v11 int32 // %t9 - var _v2 = int64(bp + 0) // %v2 - _v4 = crt.Xstrlen(t, _v1) - _v5 = int32(int32(int32(_v4)) & int32(-1)) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v5 - goto l2 -l2: - _v6 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v8 = crt.Bool32(int32(_v6) > int32(0)) - goto l3 -l3: - if _v8 != 0 { - goto l4 - } - goto l12 -l12: - _v29 = 0 - goto l7 -l4: - _v9 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v11 = int32(int32(_v9) - int32(1)) - _v12 = int64(int32(_v11)) - _v13 = int64(_v12 * int64(1)) - _v15 = int64(_v1 + _v13) - _v16 = int32(*(*int8)(unsafe.Pointer(uintptr(_v15)))) - _v17 = int32(int32(uint8(_v16))) - _v18 = int64(int32(_v17)) - _v19 = int64(_v18 * int64(2)) - _v20 = crt.X__ctype_b_loc(t) - _v21 = *(*int64)(unsafe.Pointer(uintptr(_v20))) - _v22 = int64(_v21 + _v19) - _v23 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v22)))) - _v24 = int32(uint16(_v23)) - _v28 = int32(int32(_v24) & int32(8192)) - goto l5 -l5: - if _v28 != 0 { - goto l6 - } - goto l13 -l13: - _v29 = 0 - goto l7 -l6: - _v29 = 1 - goto l7 -l7: - if _v29 != 0 { - goto l8 - } - goto l9 -l8: - _v30 = int64(_v2 + int64(0)) - _v31 = *(*int32)(unsafe.Pointer(uintptr(_v30))) - _v32 = int32(int32(_v31) - int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v30))) = _v32 - goto l2 -l9: - _v33 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - return _v33 +// CAPI3REF: Custom Page Cache Object +// +// The sqlite3_pcache_page object represents a single page in the +// page cache. The page cache will allocate instances of this +// object. Various methods of the page cache use pointers to instances +// of this object as parameters or as their return value. +// +// See [sqlite3_pcache_methods2] for additional information. +type sqlite3_pcache_page = sqlite3_pcache_page1 /* sqlite3.h:8271:36 */ + +// CAPI3REF: Application Defined Page Cache. +// KEYWORDS: {page cache} +// +// ^(The [sqlite3_config]([SQLITE_CONFIG_PCACHE2], ...) interface can +// register an alternative page cache implementation by passing in an +// instance of the sqlite3_pcache_methods2 structure.)^ +// In many applications, most of the heap memory allocated by +// SQLite is used for the page cache. +// By implementing a +// custom page cache using this API, an application can better control +// the amount of memory consumed by SQLite, the way in which +// that memory is allocated and released, and the policies used to +// determine exactly which parts of a database file are cached and for +// how long. +// +// The alternative page cache mechanism is an +// extreme measure that is only needed by the most demanding applications. +// The built-in page cache is recommended for most uses. +// +// ^(The contents of the sqlite3_pcache_methods2 structure are copied to an +// internal buffer by SQLite within the call to [sqlite3_config]. Hence +// the application may discard the parameter after the call to +// [sqlite3_config()] returns.)^ +// +// [[the xInit() page cache method]] +// ^(The xInit() method is called once for each effective +// call to [sqlite3_initialize()])^ +// (usually only once during the lifetime of the process). ^(The xInit() +// method is passed a copy of the sqlite3_pcache_methods2.pArg value.)^ +// The intent of the xInit() method is to set up global data structures +// required by the custom page cache implementation. +// ^(If the xInit() method is NULL, then the +// built-in default page cache is used instead of the application defined +// page cache.)^ +// +// [[the xShutdown() page cache method]] +// ^The xShutdown() method is called by [sqlite3_shutdown()]. +// It can be used to clean up +// any outstanding resources before process shutdown, if required. +// ^The xShutdown() method may be NULL. +// +// ^SQLite automatically serializes calls to the xInit method, +// so the xInit method need not be threadsafe. ^The +// xShutdown method is only called from [sqlite3_shutdown()] so it does +// not need to be threadsafe either. All other methods must be threadsafe +// in multithreaded applications. +// +// ^SQLite will never invoke xInit() more than once without an intervening +// call to xShutdown(). +// +// [[the xCreate() page cache methods]] +// ^SQLite invokes the xCreate() method to construct a new cache instance. +// SQLite will typically create one cache instance for each open database file, +// though this is not guaranteed. ^The +// first parameter, szPage, is the size in bytes of the pages that must +// be allocated by the cache. ^szPage will always a power of two. ^The +// second parameter szExtra is a number of bytes of extra storage +// associated with each page cache entry. ^The szExtra parameter will +// a number less than 250. SQLite will use the +// extra szExtra bytes on each page to store metadata about the underlying +// database page on disk. The value passed into szExtra depends +// on the SQLite version, the target platform, and how SQLite was compiled. +// ^The third argument to xCreate(), bPurgeable, is true if the cache being +// created will be used to cache database pages of a file stored on disk, or +// false if it is used for an in-memory database. The cache implementation +// does not have to do anything special based with the value of bPurgeable; +// it is purely advisory. ^On a cache where bPurgeable is false, SQLite will +// never invoke xUnpin() except to deliberately delete a page. +// ^In other words, calls to xUnpin() on a cache with bPurgeable set to +// false will always have the "discard" flag set to true. +// ^Hence, a cache created with bPurgeable false will +// never contain any unpinned pages. +// +// [[the xCachesize() page cache method]] +// ^(The xCachesize() method may be called at any time by SQLite to set the +// suggested maximum cache-size (number of pages stored by) the cache +// instance passed as the first argument. This is the value configured using +// the SQLite "[PRAGMA cache_size]" command.)^ As with the bPurgeable +// parameter, the implementation is not required to do anything with this +// value; it is advisory only. +// +// [[the xPagecount() page cache methods]] +// The xPagecount() method must return the number of pages currently +// stored in the cache, both pinned and unpinned. +// +// [[the xFetch() page cache methods]] +// The xFetch() method locates a page in the cache and returns a pointer to +// an sqlite3_pcache_page object associated with that page, or a NULL pointer. +// The pBuf element of the returned sqlite3_pcache_page object will be a +// pointer to a buffer of szPage bytes used to store the content of a +// single database page. The pExtra element of sqlite3_pcache_page will be +// a pointer to the szExtra bytes of extra storage that SQLite has requested +// for each entry in the page cache. +// +// The page to be fetched is determined by the key. ^The minimum key value +// is 1. After it has been retrieved using xFetch, the page is considered +// to be "pinned". +// +// If the requested page is already in the page cache, then the page cache +// implementation must return a pointer to the page buffer with its content +// intact. If the requested page is not already in the cache, then the +// cache implementation should use the value of the createFlag +// parameter to help it determined what action to take: +// +// <table border=1 width=85% align=center> +// <tr><th> createFlag <th> Behavior when page is not already in cache +// <tr><td> 0 <td> Do not allocate a new page. Return NULL. +// <tr><td> 1 <td> Allocate a new page if it easy and convenient to do so. +// Otherwise return NULL. +// <tr><td> 2 <td> Make every effort to allocate a new page. Only return +// NULL if allocating a new page is effectively impossible. +// </table> +// +// ^(SQLite will normally invoke xFetch() with a createFlag of 0 or 1. SQLite +// will only use a createFlag of 2 after a prior call with a createFlag of 1 +// failed.)^ In between the xFetch() calls, SQLite may +// attempt to unpin one or more cache pages by spilling the content of +// pinned pages to disk and synching the operating system disk cache. +// +// [[the xUnpin() page cache method]] +// ^xUnpin() is called by SQLite with a pointer to a currently pinned page +// as its second argument. If the third parameter, discard, is non-zero, +// then the page must be evicted from the cache. +// ^If the discard parameter is +// zero, then the page may be discarded or retained at the discretion of +// page cache implementation. ^The page cache implementation +// may choose to evict unpinned pages at any time. +// +// The cache must not perform any reference counting. A single +// call to xUnpin() unpins the page regardless of the number of prior calls +// to xFetch(). +// +// [[the xRekey() page cache methods]] +// The xRekey() method is used to change the key value associated with the +// page passed as the second argument. If the cache +// previously contains an entry associated with newKey, it must be +// discarded. ^Any prior cache entry associated with newKey is guaranteed not +// to be pinned. +// +// When SQLite calls the xTruncate() method, the cache must discard all +// existing cache entries with page numbers (keys) greater than or equal +// to the value of the iLimit parameter passed to xTruncate(). If any +// of these pages are pinned, they are implicitly unpinned, meaning that +// they can be safely discarded. +// +// [[the xDestroy() page cache method]] +// ^The xDestroy() method is used to delete a cache allocated by xCreate(). +// All resources associated with the specified cache should be freed. ^After +// calling the xDestroy() method, SQLite considers the [sqlite3_pcache*] +// handle invalid, and will not use it with any other sqlite3_pcache_methods2 +// functions. +// +// [[the xShrink() page cache method]] +// ^SQLite invokes the xShrink() method when it wants the page cache to +// free up as much of heap memory as possible. The page cache implementation +// is not obligated to free any memory, but well-behaved implementations should +// do their best. +type sqlite3_pcache_methods21 = struct { + iVersion int32 + pArg uintptr + xInit uintptr + xShutdown uintptr + xCreate uintptr + xCachesize uintptr + xPagecount uintptr + xFetch uintptr + xUnpin uintptr + xRekey uintptr + xTruncate uintptr + xDestroy uintptr + xShrink uintptr } -var s__19 = [11]byte{0x63, 0x6c, 0x69, 0x70, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68} - -func s_vfsNameFunc(t *crt.TLS, _v1 int64, _v2 int32, _v3 int64) { - bp := t.Alloc(16) - defer t.Free(16) - var _v15 int64 // %t10 - var _v16 int32 // %t11 - var _v18 int64 // %t13 - var _v7 int64 // %t2 - var _v10 int64 // %t5 - var _v13 int64 // %t8 - var _v4 = int64(bp + 0) // %v4 - var _v5 = int64(bp + 8) // %v5 - _v7 = Xsqlite3_context_db_handle(t, _v1) - *(*int64)(unsafe.Pointer(uintptr(_v4))) = _v7 - *(*int64)(unsafe.Pointer(uintptr(_v5))) = int64(0) - _v10 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v13 = int64(_v5 + int64(0)) - _ = Xsqlite3_file_control(t, _v10, int64(uintptr(unsafe.Pointer(&s__21))), 12, _v13) - _v15 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v16 = crt.Bool32(int64(_v15) != int64(int64(0))) - if _v16 != 0 { - goto l2 - } - goto l3 -l2: - _v18 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - Xsqlite3_result_text(t, _v1, _v18, -1, *(*int64)(unsafe.Pointer(&struct{ f func(*crt.TLS, int64) }{Xsqlite3_free}))) - goto l3 -l3: - goto l4 -l4: +// CAPI3REF: Application Defined Page Cache. +// KEYWORDS: {page cache} +// +// ^(The [sqlite3_config]([SQLITE_CONFIG_PCACHE2], ...) interface can +// register an alternative page cache implementation by passing in an +// instance of the sqlite3_pcache_methods2 structure.)^ +// In many applications, most of the heap memory allocated by +// SQLite is used for the page cache. +// By implementing a +// custom page cache using this API, an application can better control +// the amount of memory consumed by SQLite, the way in which +// that memory is allocated and released, and the policies used to +// determine exactly which parts of a database file are cached and for +// how long. +// +// The alternative page cache mechanism is an +// extreme measure that is only needed by the most demanding applications. +// The built-in page cache is recommended for most uses. +// +// ^(The contents of the sqlite3_pcache_methods2 structure are copied to an +// internal buffer by SQLite within the call to [sqlite3_config]. Hence +// the application may discard the parameter after the call to +// [sqlite3_config()] returns.)^ +// +// [[the xInit() page cache method]] +// ^(The xInit() method is called once for each effective +// call to [sqlite3_initialize()])^ +// (usually only once during the lifetime of the process). ^(The xInit() +// method is passed a copy of the sqlite3_pcache_methods2.pArg value.)^ +// The intent of the xInit() method is to set up global data structures +// required by the custom page cache implementation. +// ^(If the xInit() method is NULL, then the +// built-in default page cache is used instead of the application defined +// page cache.)^ +// +// [[the xShutdown() page cache method]] +// ^The xShutdown() method is called by [sqlite3_shutdown()]. +// It can be used to clean up +// any outstanding resources before process shutdown, if required. +// ^The xShutdown() method may be NULL. +// +// ^SQLite automatically serializes calls to the xInit method, +// so the xInit method need not be threadsafe. ^The +// xShutdown method is only called from [sqlite3_shutdown()] so it does +// not need to be threadsafe either. All other methods must be threadsafe +// in multithreaded applications. +// +// ^SQLite will never invoke xInit() more than once without an intervening +// call to xShutdown(). +// +// [[the xCreate() page cache methods]] +// ^SQLite invokes the xCreate() method to construct a new cache instance. +// SQLite will typically create one cache instance for each open database file, +// though this is not guaranteed. ^The +// first parameter, szPage, is the size in bytes of the pages that must +// be allocated by the cache. ^szPage will always a power of two. ^The +// second parameter szExtra is a number of bytes of extra storage +// associated with each page cache entry. ^The szExtra parameter will +// a number less than 250. SQLite will use the +// extra szExtra bytes on each page to store metadata about the underlying +// database page on disk. The value passed into szExtra depends +// on the SQLite version, the target platform, and how SQLite was compiled. +// ^The third argument to xCreate(), bPurgeable, is true if the cache being +// created will be used to cache database pages of a file stored on disk, or +// false if it is used for an in-memory database. The cache implementation +// does not have to do anything special based with the value of bPurgeable; +// it is purely advisory. ^On a cache where bPurgeable is false, SQLite will +// never invoke xUnpin() except to deliberately delete a page. +// ^In other words, calls to xUnpin() on a cache with bPurgeable set to +// false will always have the "discard" flag set to true. +// ^Hence, a cache created with bPurgeable false will +// never contain any unpinned pages. +// +// [[the xCachesize() page cache method]] +// ^(The xCachesize() method may be called at any time by SQLite to set the +// suggested maximum cache-size (number of pages stored by) the cache +// instance passed as the first argument. This is the value configured using +// the SQLite "[PRAGMA cache_size]" command.)^ As with the bPurgeable +// parameter, the implementation is not required to do anything with this +// value; it is advisory only. +// +// [[the xPagecount() page cache methods]] +// The xPagecount() method must return the number of pages currently +// stored in the cache, both pinned and unpinned. +// +// [[the xFetch() page cache methods]] +// The xFetch() method locates a page in the cache and returns a pointer to +// an sqlite3_pcache_page object associated with that page, or a NULL pointer. +// The pBuf element of the returned sqlite3_pcache_page object will be a +// pointer to a buffer of szPage bytes used to store the content of a +// single database page. The pExtra element of sqlite3_pcache_page will be +// a pointer to the szExtra bytes of extra storage that SQLite has requested +// for each entry in the page cache. +// +// The page to be fetched is determined by the key. ^The minimum key value +// is 1. After it has been retrieved using xFetch, the page is considered +// to be "pinned". +// +// If the requested page is already in the page cache, then the page cache +// implementation must return a pointer to the page buffer with its content +// intact. If the requested page is not already in the cache, then the +// cache implementation should use the value of the createFlag +// parameter to help it determined what action to take: +// +// <table border=1 width=85% align=center> +// <tr><th> createFlag <th> Behavior when page is not already in cache +// <tr><td> 0 <td> Do not allocate a new page. Return NULL. +// <tr><td> 1 <td> Allocate a new page if it easy and convenient to do so. +// Otherwise return NULL. +// <tr><td> 2 <td> Make every effort to allocate a new page. Only return +// NULL if allocating a new page is effectively impossible. +// </table> +// +// ^(SQLite will normally invoke xFetch() with a createFlag of 0 or 1. SQLite +// will only use a createFlag of 2 after a prior call with a createFlag of 1 +// failed.)^ In between the xFetch() calls, SQLite may +// attempt to unpin one or more cache pages by spilling the content of +// pinned pages to disk and synching the operating system disk cache. +// +// [[the xUnpin() page cache method]] +// ^xUnpin() is called by SQLite with a pointer to a currently pinned page +// as its second argument. If the third parameter, discard, is non-zero, +// then the page must be evicted from the cache. +// ^If the discard parameter is +// zero, then the page may be discarded or retained at the discretion of +// page cache implementation. ^The page cache implementation +// may choose to evict unpinned pages at any time. +// +// The cache must not perform any reference counting. A single +// call to xUnpin() unpins the page regardless of the number of prior calls +// to xFetch(). +// +// [[the xRekey() page cache methods]] +// The xRekey() method is used to change the key value associated with the +// page passed as the second argument. If the cache +// previously contains an entry associated with newKey, it must be +// discarded. ^Any prior cache entry associated with newKey is guaranteed not +// to be pinned. +// +// When SQLite calls the xTruncate() method, the cache must discard all +// existing cache entries with page numbers (keys) greater than or equal +// to the value of the iLimit parameter passed to xTruncate(). If any +// of these pages are pinned, they are implicitly unpinned, meaning that +// they can be safely discarded. +// +// [[the xDestroy() page cache method]] +// ^The xDestroy() method is used to delete a cache allocated by xCreate(). +// All resources associated with the specified cache should be freed. ^After +// calling the xDestroy() method, SQLite considers the [sqlite3_pcache*] +// handle invalid, and will not use it with any other sqlite3_pcache_methods2 +// functions. +// +// [[the xShrink() page cache method]] +// ^SQLite invokes the xShrink() method when it wants the page cache to +// free up as much of heap memory as possible. The page cache implementation +// is not obligated to free any memory, but well-behaved implementations should +// do their best. +type sqlite3_pcache_methods2 = sqlite3_pcache_methods21 /* sqlite3.h:8436:40 */ + +// This is the obsolete pcache_methods object that has now been replaced +// by sqlite3_pcache_methods2. This object is not used by SQLite. It is +// retained in the header file for backwards compatibility only. +type sqlite3_pcache_methods1 = struct { + pArg uintptr + xInit uintptr + xShutdown uintptr + xCreate uintptr + xCachesize uintptr + xPagecount uintptr + xFetch uintptr + xUnpin uintptr + xRekey uintptr + xTruncate uintptr + xDestroy uintptr } -var s__20 = [12]byte{0x76, 0x66, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x46, 0x75, 0x6e, 0x63} - -var s__21 = [5]byte{0x6d, 0x61, 0x69, 0x6e} - -func s_busyHandler(t *crt.TLS, _v1 int64, _v2 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v12 int32 // %t10 - var _v14 int32 // %t12 - var _v18 int32 // %t16 - var _v5 int32 // %t3 - var _v8 int32 // %t6 - var _v9 int32 // %t7 - _v5 = int32(_v2 * 10) - _v8 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) - _v9 = crt.Bool32(int32(_v5) > int32(_v8)) - if _v9 != 0 { - goto l2 - } - goto l6 -l2: - _v12 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) - _v14 = crt.Bool32(int32(_v12) > int32(0)) - if _v14 != 0 { - goto l3 - } - goto l4 -l3: - _v18 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) - *(*int32)(unsafe.Pointer(bp + 0)) = _v18 - s_errorMessage(t, int64(uintptr(unsafe.Pointer(&s__23))), bp+0) - goto l4 -l4: - return 0 -l6: - _ = Xsqlite3_sleep(t, 10) - return 1 +// This is the obsolete pcache_methods object that has now been replaced +// by sqlite3_pcache_methods2. This object is not used by SQLite. It is +// retained in the header file for backwards compatibility only. +type sqlite3_pcache_methods = sqlite3_pcache_methods1 /* sqlite3.h:8459:39 */ + +// CAPI3REF: Database Snapshot +// KEYWORDS: {snapshot} {sqlite3_snapshot} +// +// An instance of the snapshot object records the state of a [WAL mode] +// database for some specific point in history. +// +// In [WAL mode], multiple [database connections] that are open on the +// same database file can each be reading a different historical version +// of the database file. When a [database connection] begins a read +// transaction, that connection sees an unchanging copy of the database +// as it existed for the point in time when the transaction first started. +// Subsequent changes to the database from other connections are not seen +// by the reader until a new read transaction is started. +// +// The sqlite3_snapshot object records state information about an historical +// version of the database file so that it is possible to later open a new read +// transaction that sees that historical version of the database rather than +// the most recent version. +type sqlite3_snapshot1 = struct{ hidden [48]uint8 } + +// CAPI3REF: Database Snapshot +// KEYWORDS: {snapshot} {sqlite3_snapshot} +// +// An instance of the snapshot object records the state of a [WAL mode] +// database for some specific point in history. +// +// In [WAL mode], multiple [database connections] that are open on the +// same database file can each be reading a different historical version +// of the database file. When a [database connection] begins a read +// transaction, that connection sees an unchanging copy of the database +// as it existed for the point in time when the transaction first started. +// Subsequent changes to the database from other connections are not seen +// by the reader until a new read transaction is started. +// +// The sqlite3_snapshot object records state information about an historical +// version of the database file so that it is possible to later open a new read +// transaction that sees that historical version of the database rather than +// the most recent version. +type sqlite3_snapshot = sqlite3_snapshot1 /* sqlite3.h:9508:3 */ + +// CAPI3REF: Flags for sqlite3_deserialize() +// +// The following are allowed values for 6th argument (the F argument) to +// the [sqlite3_deserialize(D,S,P,N,M,F)] interface. +// +// The SQLITE_DESERIALIZE_FREEONCLOSE means that the database serialization +// in the P argument is held in memory obtained from [sqlite3_malloc64()] +// and that SQLite should take ownership of this memory and automatically +// free it when it has finished using it. Without this flag, the caller +// is responsible for freeing any dynamically allocated memory. +// +// The SQLITE_DESERIALIZE_RESIZEABLE flag means that SQLite is allowed to +// grow the size of the database using calls to [sqlite3_realloc64()]. This +// flag should only be used if SQLITE_DESERIALIZE_FREEONCLOSE is also used. +// Without this flag, the deserialized database cannot increase in size beyond +// the number of bytes specified by the M parameter. +// +// The SQLITE_DESERIALIZE_READONLY flag means that the deserialized database +// should be treated as read-only. + +// Undo the hack that converts floating point types to integer for +// builds on processors without floating point support. + +//******* Begin file sqlite3rtree.h ******** +// 2010 August 30 +// +// The author disclaims copyright to this source code. In place of +// a legal notice, here is a blessing: +// +// May you do good and not evil. +// May you find forgiveness for yourself and forgive others. +// May you share freely, never taking more than you give. +// +// + +type sqlite3_rtree_geometry1 = struct { + pContext uintptr + nParam int32 + aParam uintptr + pUser uintptr + xDelUser uintptr } -var s__22 = [12]byte{0x62, 0x75, 0x73, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72} - -var s__23 = [19]byte{ - 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x20, 0x61, 0x66, 0x74, 0x65, 0x72, 0x20, 0x25, 0x64, - 0x6d, 0x73, +// CAPI3REF: Flags for sqlite3_deserialize() +// +// The following are allowed values for 6th argument (the F argument) to +// the [sqlite3_deserialize(D,S,P,N,M,F)] interface. +// +// The SQLITE_DESERIALIZE_FREEONCLOSE means that the database serialization +// in the P argument is held in memory obtained from [sqlite3_malloc64()] +// and that SQLite should take ownership of this memory and automatically +// free it when it has finished using it. Without this flag, the caller +// is responsible for freeing any dynamically allocated memory. +// +// The SQLITE_DESERIALIZE_RESIZEABLE flag means that SQLite is allowed to +// grow the size of the database using calls to [sqlite3_realloc64()]. This +// flag should only be used if SQLITE_DESERIALIZE_FREEONCLOSE is also used. +// Without this flag, the deserialized database cannot increase in size beyond +// the number of bytes specified by the M parameter. +// +// The SQLITE_DESERIALIZE_READONLY flag means that the deserialized database +// should be treated as read-only. + +// Undo the hack that converts floating point types to integer for +// builds on processors without floating point support. + +//******* Begin file sqlite3rtree.h ******** +// 2010 August 30 +// +// The author disclaims copyright to this source code. In place of +// a legal notice, here is a blessing: +// +// May you do good and not evil. +// May you find forgiveness for yourself and forgive others. +// May you share freely, never taking more than you give. +// +// + +type sqlite3_rtree_geometry = sqlite3_rtree_geometry1 /* sqlite3.h:9833:39 */ +type sqlite3_rtree_query_info1 = struct { + pContext uintptr + nParam int32 + aParam uintptr + pUser uintptr + xDelUser uintptr + aCoord uintptr + anQueue uintptr + nCoord int32 + iLevel int32 + mxLevel int32 + iRowid sqlite3_int64 + rParentScore sqlite3_rtree_dbl + eParentWithin int32 + eWithin int32 + rScore sqlite3_rtree_dbl + apSqlParam uintptr } -func s_sqlTraceCallback(t *crt.TLS, _v1 int64, _v2 int64) { - bp := t.Alloc(16) - defer t.Free(16) - var _v5 int32 // %t3 - _v5 = s_clipLength(t, _v2) - *(*int32)(unsafe.Pointer(bp + 0)) = _v5 - - *(*int64)(unsafe.Pointer(bp + 8)) = _v2 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__25))), bp+0) - goto l2 -l2: +type sqlite3_rtree_query_info = sqlite3_rtree_query_info1 /* sqlite3.h:9834:41 */ + +// The double-precision datatype used by RTree depends on the +// SQLITE_RTREE_INT_ONLY compile-time option. +type sqlite3_rtree_dbl = float64 /* sqlite3.h:9842:18 */ + +// Allowed values for sqlite3_rtree_query.eWithin and .eParentWithin. + +//******* End of sqlite3rtree.h ******** +//******* Begin file sqlite3session.h ******** + +//******* End of sqlite3session.h ******** +//******* Begin file fts5.h ******** +// 2014 May 31 +// +// The author disclaims copyright to this source code. In place of +// a legal notice, here is a blessing: +// +// May you do good and not evil. +// May you find forgiveness for yourself and forgive others. +// May you share freely, never taking more than you give. +// +// +// +// Interfaces to extend FTS5. Using the interfaces defined in this file, +// FTS5 may be extended with: +// +// * custom tokenizers, and +// * custom auxiliary functions. + +// ************************************************************************ +// +// CUSTOM AUXILIARY FUNCTIONS +// +// Virtual table implementations may overload SQL functions by implementing +// the sqlite3_module.xFindFunction() method. + +type Fts5ExtensionApi1 = struct { + iVersion int32 + xUserData uintptr + xColumnCount uintptr + xRowCount uintptr + xColumnTotalSize uintptr + xTokenize uintptr + xPhraseCount uintptr + xPhraseSize uintptr + xInstCount uintptr + xInst uintptr + xRowid uintptr + xColumnText uintptr + xColumnSize uintptr + xQueryPhrase uintptr + xSetAuxdata uintptr + xGetAuxdata uintptr + xPhraseFirst uintptr + xPhraseNext uintptr + xPhraseFirstColumn uintptr + xPhraseNextColumn uintptr } -var s__24 = [17]byte{0x73, 0x71, 0x6c, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b} - -var s__25 = [7]byte{0x5b, 0x25, 0x2e, 0x2a, 0x73, 0x5d} - -func s_sqlErrorCallback(t *crt.TLS, _v1 int64, _v2 int32, _v3 int64) { - bp := t.Alloc(32) - defer t.Free(32) - var _v13 int32 // %t10 - var _v15 int32 // %t12 - var _v18 int32 // %t15 - var _v20 int32 // %t17 - var _v21 int32 // %t18 - var _v24 int32 // %t21 - var _v26 int32 // %t23 - var _v29 int32 // %t26 - var _v31 int32 // %t28 - var _v32 int32 // %t29 - var _v6 int32 // %t3 - var _v35 int32 // %t32 - var _v37 int32 // %t34 - var _v38 int32 // %t35 - var _v41 int32 // %t38 - var _v43 int32 // %t40 - var _v9 int32 // %t6 - var _v10 int32 // %t7 - _v6 = crt.Bool32(int32(_v2) == int32(1)) - goto l2 -l2: - if _v6 != 0 { - goto l3 - } - goto l35 -l35: - _v10 = 0 - goto l6 -l3: - _v9 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 108)) - goto l4 -l4: - if _v9 != 0 { - goto l5 - } - goto l36 -l36: - _v10 = 0 - goto l6 -l5: - _v10 = 1 - goto l6 -l6: - if _v10 != 0 { - goto l7 - } - goto l9 -l7: - - return -l9: - _v13 = int32(int32(_v2) & int32(255)) - _v15 = crt.Bool32(int32(_v13) == int32(17)) - goto l10 -l10: - if _v15 != 0 { - goto l11 - } - goto l37 -l37: - _v21 = 0 - goto l14 -l11: - _v18 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - _v20 = crt.Bool32(int32(_v18) < int32(3)) - goto l12 -l12: - if _v20 != 0 { - goto l13 - } - goto l38 -l38: - _v21 = 0 - goto l14 -l13: - _v21 = 1 - goto l14 -l14: - if _v21 != 0 { - goto l15 - } - goto l17 -l15: - - return -l17: - _v24 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) - _v26 = crt.Bool32(int32(_v24) == int32(0)) - goto l18 -l18: - if _v26 != 0 { - goto l19 - } - goto l39 -l39: - _v32 = 0 - goto l22 -l19: - _v29 = int32(int32(_v2) & int32(255)) - _v31 = crt.Bool32(int32(_v29) == int32(5)) - goto l20 -l20: - if _v31 != 0 { - goto l21 - } - goto l40 -l40: - _v32 = 0 - goto l22 -l21: - _v32 = 1 - goto l22 -l22: - goto l23 -l23: - if _v32 != 0 { - goto l24 - } - goto l41 -l41: - _v38 = 0 - goto l27 -l24: - _v35 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - _v37 = crt.Bool32(int32(_v35) < int32(3)) - goto l25 -l25: - if _v37 != 0 { - goto l26 - } - goto l42 -l42: - _v38 = 0 - goto l27 -l26: - _v38 = 1 - goto l27 -l27: - if _v38 != 0 { - goto l28 - } - goto l30 -l28: - - return -l30: - _v41 = int32(int32(_v2) & int32(255)) - _v43 = crt.Bool32(int32(_v41) == int32(27)) - if _v43 != 0 { - goto l31 - } - goto l32 -l31: - *(*int64)(unsafe.Pointer(bp + 0)) = _v3 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__27))), bp+0) - goto l33 -l32: - *(*int32)(unsafe.Pointer(bp + 8)) = _v2 - - *(*int64)(unsafe.Pointer(bp + 16)) = _v3 - s_errorMessage(t, int64(uintptr(unsafe.Pointer(&s__28))), bp+8) - goto l33 -l33: - goto l34 -l34: +// Allowed values for sqlite3_rtree_query.eWithin and .eParentWithin. + +//******* End of sqlite3rtree.h ******** +//******* Begin file sqlite3session.h ******** + +//******* End of sqlite3session.h ******** +//******* Begin file fts5.h ******** +// 2014 May 31 +// +// The author disclaims copyright to this source code. In place of +// a legal notice, here is a blessing: +// +// May you do good and not evil. +// May you find forgiveness for yourself and forgive others. +// May you share freely, never taking more than you give. +// +// +// +// Interfaces to extend FTS5. Using the interfaces defined in this file, +// FTS5 may be extended with: +// +// * custom tokenizers, and +// * custom auxiliary functions. + +// ************************************************************************ +// +// CUSTOM AUXILIARY FUNCTIONS +// +// Virtual table implementations may overload SQL functions by implementing +// the sqlite3_module.xFindFunction() method. + +type Fts5ExtensionApi = Fts5ExtensionApi1 /* sqlite3.h:11628:33 */ +type Fts5PhraseIter1 = struct { + a uintptr + b uintptr } -var s__26 = [17]byte{0x73, 0x71, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b} - -var s__27 = [10]byte{0x28, 0x69, 0x6e, 0x66, 0x6f, 0x29, 0x20, 0x25, 0x73} - -var s__28 = [16]byte{0x28, 0x65, 0x72, 0x72, 0x63, 0x6f, 0x64, 0x65, 0x3d, 0x25, 0x64, 0x29, 0x20, 0x25, 0x73} - -func s_prepareSql(t *crt.TLS, _v1 int64, args uintptr) int64 { - bp := t.Alloc(64) - defer t.Free(64) - var _v15 int64 // %t10 - var _v16 int64 // %t11 - var _v19 int64 // %t14 - var _v22 int32 // %t17 - var _v23 int64 // %t18 - var _v24 int32 // %t19 - var _v26 int32 // %t21 - var _v27 int64 // %t22 - var _v32 int64 // %t27 - var _v33 int64 // %t28 - var _v34 int64 // %t29 - var _v35 int64 // %t30 - var _v36 int64 // %t31 - var _v10 int64 // %t5 - var _v11 int64 // %t6 - var _v2 = int64(bp + 16) // %v2 - var _v3 = int64(bp + 40) // %v3 - var _v4 = int64(bp + 48) // %v4 - var _v5 = int64(bp + 56) // %v5 - *(*int64)(unsafe.Pointer(uintptr(_v5))) = int64(0) - *(*uintptr)(unsafe.Pointer(bp + 16)) = args - _v10 = Xsqlite3_vmprintf(t, _v1, _v2) - _v11 = int64(_v3 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v11))) = _v10 - _v15 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v16 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v19 = int64(_v5 + int64(0)) - _v22 = Xsqlite3_prepare_v2(t, _v15, _v16, -1, _v19, int64(0)) - _v23 = int64(_v4 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v23))) = _v22 - _v24 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v26 = crt.Bool32(int32(_v24) != int32(0)) - if _v26 != 0 { - goto l2 - } - goto l3 -l2: - _v27 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _ = Xsqlite3_finalize(t, _v27) - _v32 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v33 = Xsqlite3_errmsg(t, _v32) - _v34 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - *(*int64)(unsafe.Pointer(bp + 0)) = _v33 - - *(*int64)(unsafe.Pointer(bp + 8)) = _v34 - s_fatalError(t, int64(uintptr(unsafe.Pointer(&s__30))), bp+0) - goto l3 -l3: - _v35 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v35) - _v36 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - return _v36 -} +type Fts5PhraseIter = Fts5PhraseIter1 /* sqlite3.h:11630:31 */ -var s__29 = [11]byte{0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x53, 0x71, 0x6c} - -var s__30 = [7]byte{0x25, 0x73, 0x0a, 0x25, 0x73, 0x0a} - -func s_runSql(t *crt.TLS, _v1 int64, args uintptr) { - bp := t.Alloc(64) - defer t.Free(64) - var _v20 int32 // %t16 - var _v21 int64 // %t17 - var _v22 int32 // %t18 - var _v24 int32 // %t20 - var _v28 int64 // %t24 - var _v29 int64 // %t25 - var _v30 int64 // %t26 - var _v31 int64 // %t27 - var _v7 int64 // %t3 - var _v8 int64 // %t4 - var _v12 int64 // %t8 - var _v13 int64 // %t9 - var _v2 = int64(bp + 16) // %v2 - var _v3 = int64(bp + 40) // %v3 - var _v4 = int64(bp + 48) // %v4 - *(*uintptr)(unsafe.Pointer(bp + 16)) = args - _v7 = Xsqlite3_vmprintf(t, _v1, _v2) - _v8 = int64(_v3 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v8))) = _v7 - _v12 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v13 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v20 = Xsqlite3_exec(t, _v12, _v13, int64(0), int64(0), int64(0)) - _v21 = int64(_v4 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v21))) = _v20 - _v22 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v24 = crt.Bool32(int32(_v22) != int32(0)) - if _v24 != 0 { - goto l2 - } - goto l3 -l2: - _v28 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v29 = Xsqlite3_errmsg(t, _v28) - _v30 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - *(*int64)(unsafe.Pointer(bp + 0)) = _v29 - - *(*int64)(unsafe.Pointer(bp + 8)) = _v30 - s_fatalError(t, int64(uintptr(unsafe.Pointer(&s__30))), bp+0) - goto l3 -l3: - _v31 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v31) - goto l4 -l4: +type fts5_extension_function = uintptr /* sqlite3.h:11632:14 */ +type fts5_tokenizer1 = struct { + xCreate uintptr + xDelete uintptr + xTokenize uintptr } -var s__31 = [7]byte{0x72, 0x75, 0x6e, 0x53, 0x71, 0x6c} - -func s_trySql(t *crt.TLS, _v1 int64, args uintptr) int32 { - bp := t.Alloc(48) - defer t.Free(48) - var _v20 int32 // %t16 - var _v21 int64 // %t17 - var _v22 int64 // %t18 - var _v23 int32 // %t19 - var _v7 int64 // %t3 - var _v8 int64 // %t4 - var _v12 int64 // %t8 - var _v13 int64 // %t9 - var _v2 = int64(bp + 0) // %v2 - var _v3 = int64(bp + 24) // %v3 - var _v4 = int64(bp + 32) // %v4 - *(*uintptr)(unsafe.Pointer(bp + 0)) = args - _v7 = Xsqlite3_vmprintf(t, _v1, _v2) - _v8 = int64(_v3 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v8))) = _v7 - _v12 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v13 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v20 = Xsqlite3_exec(t, _v12, _v13, int64(0), int64(0), int64(0)) - _v21 = int64(_v4 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v21))) = _v20 - _v22 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - Xsqlite3_free(t, _v22) - _v23 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - return _v23 -} +type fts5_tokenizer = fts5_tokenizer1 /* sqlite3.h:12091:31 */ -var s__32 = [7]byte{0x74, 0x72, 0x79, 0x53, 0x71, 0x6c} - -func s_stringFree(t *crt.TLS, _v1 int64) { - var _v3 int64 // %t2 - var _v4 int64 // %t3 - var _v5 int32 // %t4 - var _v7 int64 // %t6 - var _v8 int64 // %t7 - _v3 = int64(_v1 + int64(0)) - _v4 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v5 = crt.Bool32(int64(_v4) != int64(int64(0))) - if _v5 != 0 { - goto l2 - } - goto l3 -l2: - _v7 = int64(_v1 + int64(0)) - _v8 = *(*int64)(unsafe.Pointer(uintptr(_v7))) - Xsqlite3_free(t, _v8) - goto l3 -l3: - _ = crt.Xmemset(t, _v1, 0, int64(16)) - goto l4 -l4: -} +// Flags that may be passed as the third argument to xTokenize() -var s__33 = [11]byte{0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x65, 0x65} - -func s_stringAppend(t *crt.TLS, _v1 int64, _v2 int64, _v3 int32) { - bp := t.Alloc(16) - defer t.Free(16) - var _v16 int64 // %t10 - var _v17 int32 // %t11 - var _v18 int32 // %t12 - var _v19 int32 // %t13 - var _v21 int64 // %t15 - var _v22 int32 // %t16 - var _v23 int32 // %t17 - var _v25 int64 // %t19 - var _v8 int32 // %t2 - var _v26 int32 // %t20 - var _v28 int32 // %t22 - var _v29 int32 // %t23 - var _v30 int32 // %t24 - var _v32 int32 // %t26 - var _v34 int64 // %t28 - var _v35 int64 // %t29 - var _v36 int32 // %t30 - var _v37 int64 // %t31 - var _v38 int64 // %t32 - var _v41 int32 // %t35 - var _v43 int64 // %t37 - var _v45 int64 // %t39 - var _v10 int32 // %t4 - var _v46 int32 // %t40 - var _v48 int64 // %t42 - var _v50 int64 // %t44 - var _v51 int64 // %t45 - var _v53 int64 // %t47 - var _v54 int32 // %t48 - var _v55 int64 // %t49 - var _v56 int64 // %t50 - var _v58 int32 // %t52 - var _v59 int64 // %t53 - var _v61 int32 // %t55 - var _v63 int64 // %t57 - var _v64 int32 // %t58 - var _v65 int32 // %t59 - var _v12 int64 // %t6 - var _v69 int64 // %t63 - var _v70 int32 // %t64 - var _v71 int64 // %t65 - var _v72 int64 // %t66 - var _v74 int64 // %t68 - var _v75 int64 // %t69 - var _v13 int32 // %t7 - var _v76 int64 // %t70 - var _v14 int64 // %t8 - var _v4 = int64(bp + 0) // %v3 - var _v6 = int64(bp + 4) // %v4 - var _v7 = int64(bp + 8) // %v5 - *(*int32)(unsafe.Pointer(uintptr(_v4))) = _v3 - _v8 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v10 = crt.Bool32(int32(_v8) < int32(0)) - if _v10 != 0 { - goto l2 - } - goto l3 -l2: - _v12 = crt.Xstrlen(t, _v2) - _v13 = int32(int32(int32(_v12)) & int32(-1)) - _v14 = int64(_v4 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v14))) = _v13 - goto l3 -l3: - _v16 = int64(_v1 + int64(8)) - _v17 = *(*int32)(unsafe.Pointer(uintptr(_v16))) - _v18 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v19 = int32(int32(_v17) + int32(_v18)) - _v21 = int64(_v1 + int64(12)) - _v22 = *(*int32)(unsafe.Pointer(uintptr(_v21))) - _v23 = crt.Bool32(int32(_v19) >= int32(_v22)) - if _v23 != 0 { - goto l4 - } - goto l9 -l9: - goto l7 -l4: - _v25 = int64(_v1 + int64(12)) - _v26 = *(*int32)(unsafe.Pointer(uintptr(_v25))) - _v28 = int32(_v26 * 2) - _v29 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v30 = int32(int32(_v28) + int32(_v29)) - _v32 = int32(int32(_v30) + int32(100)) - *(*int32)(unsafe.Pointer(uintptr(_v6))) = _v32 - _v34 = int64(_v1 + int64(0)) - _v35 = *(*int64)(unsafe.Pointer(uintptr(_v34))) - _v36 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v37 = Xsqlite3_realloc(t, _v35, _v36) - *(*int64)(unsafe.Pointer(uintptr(_v7))) = _v37 - _v38 = *(*int64)(unsafe.Pointer(uintptr(_v7))) - _v41 = crt.Bool32(_v38 == int64(0)) - if _v41 != 0 { - goto l5 - } - goto l6 -l5: - s_fatalError(t, int64(uintptr(unsafe.Pointer(&s__35))), 0) - goto l6 -l6: - _v43 = *(*int64)(unsafe.Pointer(uintptr(_v7))) - _v45 = int64(_v1 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v45))) = _v43 - _v46 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v48 = int64(_v1 + int64(12)) - *(*int32)(unsafe.Pointer(uintptr(_v48))) = _v46 - goto l7 -l7: - _v50 = int64(_v1 + int64(0)) - _v51 = *(*int64)(unsafe.Pointer(uintptr(_v50))) - _v53 = int64(_v1 + int64(8)) - _v54 = *(*int32)(unsafe.Pointer(uintptr(_v53))) - _v55 = int64(int32(_v54)) - _v56 = int64(_v51 + _v55) - _v58 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v59 = int64(int32(_v58)) - _ = crt.Xmemcpy(t, _v56, _v2, _v59) - _v61 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v63 = int64(_v1 + int64(8)) - _v64 = *(*int32)(unsafe.Pointer(uintptr(_v63))) - _v65 = int32(int32(_v64) + int32(_v61)) - *(*int32)(unsafe.Pointer(uintptr(_v63))) = _v65 - _v69 = int64(_v1 + int64(8)) - _v70 = *(*int32)(unsafe.Pointer(uintptr(_v69))) - _v71 = int64(int32(_v70)) - _v72 = int64(_v71 * int64(1)) - _v74 = int64(_v1 + int64(0)) - _v75 = *(*int64)(unsafe.Pointer(uintptr(_v74))) - _v76 = int64(_v75 + _v72) - *(*int8)(unsafe.Pointer(uintptr(_v76))) = 0 - goto l8 -l8: -} +// Flags that may be passed by the tokenizer implementation back to FTS5 +// as the third argument to the supplied xToken callback. -var s__34 = [13]byte{0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x41, 0x70, 0x70, 0x65, 0x6e, 0x64} - -var s__35 = [14]byte{0x6f, 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79} - -func s_stringReset(t *crt.TLS, _v1 int64) { - var _v13 int64 // %t12 - var _v20 int64 // %t19 - var _v3 int64 // %t2 - var _v21 int64 // %t20 - var _v22 int64 // %t21 - var _v4 int64 // %t3 - var _v7 int32 // %t6 - _v3 = int64(_v1 + int64(0)) - _v4 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v7 = crt.Bool32(_v4 == int64(0)) - if _v7 != 0 { - goto l2 - } - goto l3 -l2: - s_stringAppend(t, _v1, int64(uintptr(unsafe.Pointer(&s__37))), 1) - goto l3 -l3: - _v13 = int64(_v1 + int64(8)) - *(*int32)(unsafe.Pointer(uintptr(_v13))) = 0 - _v20 = int64(_v1 + int64(0)) - _v21 = *(*int64)(unsafe.Pointer(uintptr(_v20))) - _v22 = int64(_v21 + int64(0)) - *(*int8)(unsafe.Pointer(uintptr(_v22))) = 0 - goto l4 -l4: -} - -var s__36 = [12]byte{0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x65, 0x74} - -var s__37 = [2]byte{0x20} - -func s_stringAppendTerm(t *crt.TLS, _v1 int64, _v2 int64) { - bp := t.Alloc(16) - defer t.Free(16) - var _v104 int32 // %t100 - var _v106 int32 // %t102 - var _v110 int32 // %t106 - var _v112 int32 // %t108 - var _v113 int64 // %t109 - var _v15 int32 // %t11 - var _v114 int64 // %t110 - var _v115 int64 // %t111 - var _v116 int64 // %t112 - var _v118 int64 // %t114 - var _v119 int32 // %t115 - var _v20 int64 // %t16 - var _v21 int32 // %t17 - var _v22 int64 // %t18 - var _v23 int64 // %t19 - var _v24 int64 // %t20 - var _v25 int64 // %t21 - var _v26 int32 // %t22 - var _v27 int32 // %t23 - var _v28 int64 // %t24 - var _v29 int64 // %t25 - var _v30 int64 // %t26 - var _v31 int64 // %t27 - var _v32 int32 // %t28 - var _v33 int32 // %t29 - var _v7 int64 // %t3 - var _v34 int64 // %t30 - var _v35 int64 // %t31 - var _v36 int64 // %t32 - var _v37 int64 // %t33 - var _v38 int64 // %t34 - var _v39 int32 // %t35 - var _v40 int32 // %t36 - var _v8 int32 // %t4 - var _v44 int32 // %t40 - var _v45 int32 // %t41 - var _v46 int32 // %t42 - var _v47 int64 // %t43 - var _v48 int32 // %t44 - var _v49 int32 // %t45 - var _v50 int32 // %t46 - var _v52 int32 // %t48 - var _v53 int32 // %t49 - var _v54 int64 // %t50 - var _v55 int64 // %t51 - var _v56 int64 // %t52 - var _v57 int64 // %t53 - var _v58 int32 // %t54 - var _v59 int32 // %t55 - var _v61 int32 // %t57 - var _v62 int32 // %t58 - var _v64 int64 // %t60 - var _v65 int32 // %t61 - var _v72 int64 // %t68 - var _v73 int64 // %t69 - var _v74 int32 // %t70 - var _v76 int64 // %t72 - var _v77 int32 // %t73 - var _v78 int64 // %t74 - var _v79 int64 // %t75 - var _v80 int64 // %t76 - var _v81 int64 // %t77 - var _v82 int32 // %t78 - var _v83 int32 // %t79 - var _v12 int64 // %t8 - var _v84 int64 // %t80 - var _v85 int64 // %t81 - var _v86 int64 // %t82 - var _v87 int64 // %t83 - var _v88 int32 // %t84 - var _v89 int32 // %t85 - var _v91 int32 // %t87 - var _v92 int32 // %t88 - var _v93 int64 // %t89 - var _v94 int32 // %t90 - var _v95 int32 // %t91 - var _v96 int32 // %t92 - var _v97 int64 // %t93 - var _v98 int64 // %t94 - var _v99 int64 // %t95 - var _v100 int64 // %t96 - var _v101 int32 // %t97 - var _v103 int64 // %t99 - var _v3 = int64(bp + 0) // %v2 - var _v5 = int64(bp + 8) // %v3 - *(*int64)(unsafe.Pointer(uintptr(_v3))) = _v2 - _v7 = int64(_v1 + int64(8)) - _v8 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - if _v8 != 0 { - goto l2 - } - goto l3 -l2: - s_stringAppend(t, _v1, int64(uintptr(unsafe.Pointer(&s__37))), 1) - goto l3 -l3: - _v12 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v15 = crt.Bool32(_v12 == int64(0)) - if _v15 != 0 { - goto l4 - } - goto l6 -l4: - s_stringAppend(t, _v1, int64(uintptr(unsafe.Pointer(&s__39))), 3) - - return -l6: - _v20 = int64(_v5 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v20))) = 0 - goto l7 -l7: - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v22 = int64(int32(_v21)) - _v23 = int64(_v22 * int64(1)) - _v24 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v25 = int64(_v24 + _v23) - _v26 = int32(*(*int8)(unsafe.Pointer(uintptr(_v25)))) - goto l8 -l8: - if _v26 != 0 { - goto l9 - } - goto l44 -l44: - _v46 = 0 - goto l15 -l9: - _v27 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v28 = int64(int32(_v27)) - _v29 = int64(_v28 * int64(1)) - _v30 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v31 = int64(_v30 + _v29) - _v32 = int32(*(*int8)(unsafe.Pointer(uintptr(_v31)))) - _v33 = int32(int32(uint8(_v32))) - _v34 = int64(int32(_v33)) - _v35 = int64(_v34 * int64(2)) - _v36 = crt.X__ctype_b_loc(t) - _v37 = *(*int64)(unsafe.Pointer(uintptr(_v36))) - _v38 = int64(_v37 + _v35) - _v39 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v38)))) - _v40 = int32(uint16(_v39)) - _v44 = int32(int32(_v40) & int32(8192)) - goto l10 -l10: - if _v44 != 0 { - goto l11 - } - goto l45 -l45: - _v45 = 1 - goto l12 -l11: - _v45 = 0 - goto l12 -l12: - goto l13 -l13: - if _v45 != 0 { - goto l14 - } - goto l46 -l46: - _v46 = 0 - goto l15 -l14: - _v46 = 1 - goto l15 -l15: - if _v46 != 0 { - goto l16 - } - goto l18 -l16: - goto l17 -l17: - _v47 = int64(_v5 + int64(0)) - _v48 = *(*int32)(unsafe.Pointer(uintptr(_v47))) - _v49 = int32(int32(_v48) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v47))) = _v49 - goto l7 -l18: - _v50 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v52 = crt.Bool32(int32(_v50) > int32(0)) - goto l19 -l19: - if _v52 != 0 { - goto l20 - } - goto l47 -l47: - _v62 = 0 - goto l23 -l20: - _v53 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v54 = int64(int32(_v53)) - _v55 = int64(_v54 * int64(1)) - _v56 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v57 = int64(_v56 + _v55) - _v58 = int32(*(*int8)(unsafe.Pointer(uintptr(_v57)))) - _v59 = int32(int8(_v58)) - _v61 = crt.Bool32(int32(_v59) == int32(0)) - goto l21 -l21: - if _v61 != 0 { - goto l22 - } - goto l48 -l48: - _v62 = 0 - goto l23 -l22: - _v62 = 1 - goto l23 -l23: - if _v62 != 0 { - goto l24 - } - goto l26 -l24: - _v64 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v65 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - s_stringAppend(t, _v1, _v64, _v65) - - return -l26: - s_stringAppend(t, _v1, int64(uintptr(unsafe.Pointer(&s__40))), 1) - goto l27 -l27: - _v72 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v73 = int64(_v72 + int64(0)) - _v74 = int32(*(*int8)(unsafe.Pointer(uintptr(_v73)))) - if _v74 != 0 { - goto l28 - } - goto l42 -l28: - _v76 = int64(_v5 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v76))) = 0 - goto l29 -l29: - _v77 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v78 = int64(int32(_v77)) - _v79 = int64(_v78 * int64(1)) - _v80 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v81 = int64(_v80 + _v79) - _v82 = int32(*(*int8)(unsafe.Pointer(uintptr(_v81)))) - goto l30 -l30: - if _v82 != 0 { - goto l31 - } - goto l49 -l49: - _v92 = 0 - goto l34 -l31: - _v83 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v84 = int64(int32(_v83)) - _v85 = int64(_v84 * int64(1)) - _v86 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v87 = int64(_v86 + _v85) - _v88 = int32(*(*int8)(unsafe.Pointer(uintptr(_v87)))) - _v89 = int32(int8(_v88)) - _v91 = crt.Bool32(int32(_v89) != int32(39)) - goto l32 -l32: - if _v91 != 0 { - goto l33 - } - goto l50 -l50: - _v92 = 0 - goto l34 -l33: - _v92 = 1 - goto l34 -l34: - if _v92 != 0 { - goto l35 - } - goto l37 -l35: - goto l36 -l36: - _v93 = int64(_v5 + int64(0)) - _v94 = *(*int32)(unsafe.Pointer(uintptr(_v93))) - _v95 = int32(int32(_v94) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v93))) = _v95 - goto l29 -l37: - _v96 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v97 = int64(int32(_v96)) - _v98 = int64(_v97 * int64(1)) - _v99 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v100 = int64(_v99 + _v98) - _v101 = int32(*(*int8)(unsafe.Pointer(uintptr(_v100)))) - if _v101 != 0 { - goto l38 - } - goto l39 -l38: - _v103 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v104 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v106 = int32(int32(_v104) + int32(1)) - s_stringAppend(t, _v1, _v103, _v106) - s_stringAppend(t, _v1, int64(uintptr(unsafe.Pointer(&s__40))), 1) - _v110 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v112 = int32(int32(_v110) + int32(1)) - _v113 = int64(int32(_v112)) - _v114 = int64(_v3 + int64(0)) - _v115 = *(*int64)(unsafe.Pointer(uintptr(_v114))) - _v116 = int64(_v115 + _v113) - *(*int64)(unsafe.Pointer(uintptr(_v114))) = _v116 - goto l41 -l39: - _v118 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v119 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - s_stringAppend(t, _v1, _v118, _v119) - goto l42 -l41: - goto l27 -l42: - s_stringAppend(t, _v1, int64(uintptr(unsafe.Pointer(&s__40))), 1) - goto l43 -l43: -} +// +// END OF CUSTOM TOKENIZERS +// -var s__38 = [17]byte{0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x41, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x54, 0x65, 0x72, 0x6d} - -var s__39 = [4]byte{0x6e, 0x69, 0x6c} - -var s__40 = [2]byte{0x27} - -func s_evalCallback(t *crt.TLS, _v1 int64, _v2 int32, _v3 int64, _v4 int64) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v16 int64 // %t10 - var _v18 int64 // %t12 - var _v19 int64 // %t13 - var _v20 int64 // %t14 - var _v21 int32 // %t15 - var _v22 int32 // %t16 - var _v9 int64 // %t3 - var _v10 int32 // %t4 - var _v12 int32 // %t6 - var _v13 int64 // %t7 - var _v14 int32 // %t8 - var _v15 int64 // %t9 - var _v5 = int64(bp + 0) // %v5 - var _v6 = int64(bp + 8) // %v6 - *(*int64)(unsafe.Pointer(uintptr(_v5))) = _v1 - _v9 = int64(_v6 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v9))) = 0 - goto l2 -l2: - _v10 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v12 = crt.Bool32(int32(_v10) < int32(_v2)) - if _v12 != 0 { - goto l3 - } - goto l5 -l3: - _v13 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v14 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v15 = int64(int32(_v14)) - _v16 = int64(_v15 * int64(8)) - _v18 = int64(_v3 + _v16) - _v19 = *(*int64)(unsafe.Pointer(uintptr(_v18))) - s_stringAppendTerm(t, _v13, _v19) - goto l4 -l4: - _v20 = int64(_v6 + int64(0)) - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v22 = int32(int32(_v21) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v20))) = _v22 - goto l2 -l5: - return 0 +// ************************************************************************ +// +// FTS5 EXTENSION REGISTRATION API +type fts5_api1 = struct { + iVersion int32 + xCreateTokenizer uintptr + xFindTokenizer uintptr + xCreateFunction uintptr } -var s__41 = [13]byte{0x65, 0x76, 0x61, 0x6c, 0x43, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b} - -func s_evalSql(t *crt.TLS, _v1 int64, _v2 int64, args uintptr) int32 { - bp := t.Alloc(96) - defer t.Free(96) - var _v17 int32 // %t10 - var _v19 int32 // %t12 - var _v26 int64 // %t19 - var _v27 int64 // %t20 - var _v30 int64 // %t23 - var _v31 int32 // %t24 - var _v32 int64 // %t25 - var _v33 int64 // %t26 - var _v34 int32 // %t27 - var _v39 int32 // %t32 - var _v43 int64 // %t36 - var _v44 int32 // %t37 - var _v46 int64 // %t39 - var _v47 int64 // %t40 - var _v48 int32 // %t41 - var _v12 int64 // %t5 - var _v13 int64 // %t6 - var _v3 = int64(bp + 8) // %v3 - var _v4 = int64(bp + 32) // %v4 - var _v5 = int64(bp + 40) // %v5 - var _v6 = int64(bp + 48) // %v6 - var _v7 = int64(bp + 56) // %v7 - *(*int64)(unsafe.Pointer(uintptr(_v6))) = int64(0) - *(*uintptr)(unsafe.Pointer(bp + 8)) = args - _v12 = Xsqlite3_vmprintf(t, _v2, _v3) - _v13 = int64(_v4 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v13))) = _v12 - _v17 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) - _v19 = crt.Bool32(int32(_v17) > int32(0)) - goto l2 -l2: - if _v19 != 0 { - goto l3 - } - goto l5 -l3: - goto l4 -l4: - goto l7 -l5: - crt.X__assert_fail(t, int64(uintptr(unsafe.Pointer(&s__43))), int64(uintptr(unsafe.Pointer(&s__44))), 494, int64(uintptr(unsafe.Pointer(&s__42)))) - goto l6 -l6: - goto l7 -l7: - _v26 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v27 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v30 = int64(_v6 + int64(0)) - _v31 = Xsqlite3_exec(t, _v26, _v27, *(*int64)(unsafe.Pointer(&struct { - f func(*crt.TLS, int64, int32, int64, int64) int32 - }{s_evalCallback})), _v1, _v30) - _v32 = int64(_v5 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v32))) = _v31 - _v33 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - Xsqlite3_free(t, _v33) - _v34 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - if _v34 != 0 { - goto l8 - } - goto l14 -l14: - goto l11 -l8: - _v39 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - *(*int32)(unsafe.Pointer(bp + 0)) = _v39 - - _ = Xsqlite3_snprintf(t, 30, _v7, int64(uintptr(unsafe.Pointer(&s__45))), bp+0) - s_stringAppendTerm(t, _v1, _v7) - _v43 = *(*int64)(unsafe.Pointer(uintptr(_v6))) - _v44 = crt.Bool32(int64(_v43) != int64(int64(0))) - if _v44 != 0 { - goto l9 - } - goto l10 -l9: - _v46 = *(*int64)(unsafe.Pointer(uintptr(_v6))) - s_stringAppendTerm(t, _v1, _v46) - _v47 = *(*int64)(unsafe.Pointer(uintptr(_v6))) - Xsqlite3_free(t, _v47) - goto l10 -l10: - goto l11 -l11: - _v48 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - return _v48 -} +// Flags that may be passed as the third argument to xTokenize() -var s__42 = [8]byte{0x65, 0x76, 0x61, 0x6c, 0x53, 0x71, 0x6c} +// Flags that may be passed by the tokenizer implementation back to FTS5 +// as the third argument to the supplied xToken callback. -var s__43 = [13]byte{0x67, 0x2e, 0x69, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x3e, 0x30} +// +// END OF CUSTOM TOKENIZERS +// -var s__44 = [44]byte{ - 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x73, 0x71, 0x6c, 0x69, 0x74, 0x65, 0x2d, - 0x73, 0x72, 0x63, 0x2d, 0x33, 0x33, 0x30, 0x30, 0x31, 0x30, 0x30, 0x2f, 0x6d, 0x70, 0x74, 0x65, - 0x73, 0x74, 0x2f, 0x6d, 0x70, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x63, -} +// ************************************************************************ +// +// FTS5 EXTENSION REGISTRATION API +type fts5_api = fts5_api1 /* sqlite3.h:12127:25 */ -var s__45 = [10]byte{0x65, 0x72, 0x72, 0x6f, 0x72, 0x28, 0x25, 0x64, 0x29} - -func s_evalFunc(t *crt.TLS, _v1 int64, _v2 int32, _v3 int64) { - bp := t.Alloc(48) - defer t.Free(48) - var _v20 int64 // %t12 - var _v24 int64 // %t16 - var _v25 int64 // %t17 - var _v27 int64 // %t19 - var _v10 int64 // %t2 - var _v28 int64 // %t20 - var _v29 int32 // %t21 - var _v30 int64 // %t22 - var _v31 int64 // %t23 - var _v32 int32 // %t24 - var _v34 int64 // %t26 - var _v37 int64 // %t29 - var _v38 int32 // %t30 - var _v40 int32 // %t32 - var _v42 int64 // %t34 - var _v43 int64 // %t35 - var _v44 int64 // %t36 - var _v50 int64 // %t42 - var _v15 int64 // %t7 - var _v16 int64 // %t8 - var _v17 int64 // %t9 - var _v4 = int64(bp + 0) // %v4 - var _v5 = int64(bp + 8) // %v5 - var _v6 = int64(bp + 16) // %v6 - var _v7 = int64(bp + 32) // %v7 - var _v8 = int64(bp + 40) // %v8 - _v10 = Xsqlite3_context_db_handle(t, _v1) - *(*int64)(unsafe.Pointer(uintptr(_v4))) = _v10 - _v15 = int64(_v3 + int64(0)) - _v16 = *(*int64)(unsafe.Pointer(uintptr(_v15))) - _v17 = Xsqlite3_value_text(t, _v16) - *(*int64)(unsafe.Pointer(uintptr(_v5))) = _v17 - *(*int64)(unsafe.Pointer(uintptr(_v7))) = int64(0) - _v20 = int64(_v6 + int64(0)) - _ = crt.Xmemset(t, _v20, 0, int64(16)) - _v24 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v25 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v27 = int64(_v6 + int64(0)) - _v28 = int64(_v7 + int64(0)) - _v29 = Xsqlite3_exec(t, _v24, _v25, *(*int64)(unsafe.Pointer(&struct { - f func(*crt.TLS, int64, int32, int64, int64) int32 - }{s_evalCallback})), _v27, _v28) - _v30 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v30))) = _v29 - _v31 = *(*int64)(unsafe.Pointer(uintptr(_v7))) - _v32 = crt.Bool32(int64(_v31) != int64(int64(0))) - if _v32 != 0 { - goto l2 - } - goto l3 -l2: - _v34 = *(*int64)(unsafe.Pointer(uintptr(_v7))) - Xsqlite3_result_error(t, _v1, _v34, -1) - _v37 = *(*int64)(unsafe.Pointer(uintptr(_v7))) - Xsqlite3_free(t, _v37) - goto l7 -l3: - _v38 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - if _v38 != 0 { - goto l4 +// The tag name of this struct is _G_fpos_t to preserve historic +// C++ mangled names for functions taking fpos_t arguments. +// That name should not be used in new code. +type _G_fpos_t = struct { + __pos int64 + __state struct { + __count int32 + __value struct{ __wch uint32 } } - goto l5 -l4: - _v40 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - Xsqlite3_result_error_code(t, _v1, _v40) - goto l6 -l5: - _v42 = int64(_v6 + int64(0)) - _v43 = int64(_v42 + int64(0)) - _v44 = *(*int64)(unsafe.Pointer(uintptr(_v43))) - Xsqlite3_result_text(t, _v1, _v44, -1, int64(-1)) - goto l6 -l6: - goto l7 -l7: - _v50 = int64(_v6 + int64(0)) - s_stringFree(t, _v50) - goto l8 -l8: } -var s__46 = [9]byte{0x65, 0x76, 0x61, 0x6c, 0x46, 0x75, 0x6e, 0x63} - -func s_startScript(t *crt.TLS, _v1 int32, _v2 int64, _v3 int64, _v4 int64) int32 { - bp := t.Alloc(112) - defer t.Free(112) - var _v110 int64 // %t101 - var _v112 int64 // %t103 - var _v113 int64 // %t104 - var _v115 int64 // %t106 - var _v118 int32 // %t109 - var _v124 int64 // %t115 - var _v126 int32 // %t117 - var _v128 int32 // %t119 - var _v21 int32 // %t12 - var _v129 int32 // %t120 - var _v131 int32 // %t122 - var _v137 int64 // %t128 - var _v22 int64 // %t13 - var _v141 int32 // %t132 - var _v143 int32 // %t134 - var _v147 int64 // %t138 - var _v148 int32 // %t139 - var _v23 int32 // %t14 - var _v149 int32 // %t140 - var _v153 int64 // %t144 - var _v154 int32 // %t145 - var _v155 int32 // %t146 - var _v159 int64 // %t150 - var _v160 int64 // %t151 - var _v25 int32 // %t16 - var _v29 int64 // %t20 - var _v30 int32 // %t21 - var _v31 int32 // %t22 - var _v32 int32 // %t23 - var _v34 int32 // %t25 - var _v38 int64 // %t29 - var _v39 int64 // %t30 - var _v42 int32 // %t33 - var _v45 int32 // %t36 - var _v46 int32 // %t37 - var _v50 int32 // %t41 - var _v53 int32 // %t44 - var _v62 int64 // %t53 - var _v63 int64 // %t54 - var _v64 int64 // %t55 - var _v65 int32 // %t56 - var _v66 int64 // %t57 - var _v67 int64 // %t58 - var _v69 int32 // %t60 - var _v71 int32 // %t62 - var _v81 int64 // %t72 - var _v82 int64 // %t73 - var _v83 int64 // %t74 - var _v84 int32 // %t75 - var _v85 int64 // %t76 - var _v86 int32 // %t77 - var _v88 int32 // %t79 - var _v89 int64 // %t80 - var _v91 int32 // %t82 - var _v92 int32 // %t83 - var _v94 int32 // %t85 - var _v95 int64 // %t86 - var _v98 int64 // %t89 - var _v99 int64 // %t90 - var _v101 int64 // %t92 - var _v103 int64 // %t94 - var _v105 int32 // %t96 - var _v106 int64 // %t97 - var _v107 int32 // %t98 - var _v5 = int64(bp + 80) // %v5 - var _v6 = int64(bp + 88) // %v6 - var _v7 = int64(bp + 92) // %v7 - var _v8 = int64(bp + 96) // %v8 - var _v9 = int64(bp + 100) // %v9 - *(*int64)(unsafe.Pointer(uintptr(_v5))) = int64(0) - *(*int32)(unsafe.Pointer(uintptr(_v8))) = 0 - *(*int64)(unsafe.Pointer(uintptr(_v2))) = int64(0) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) = 0 - goto l2 -l2: - if 1 != 0 { - goto l3 - } - goto l30 -l3: - - _v21 = s_trySql(t, int64(uintptr(unsafe.Pointer(&s__48))), 0) - _v22 = int64(_v7 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v22))) = _v21 - _v23 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v25 = crt.Bool32(int32(_v23) == int32(5)) - if _v25 != 0 { - goto l4 - } - goto l6 -l4: - _ = Xsqlite3_sleep(t, 10) - _v29 = int64(_v8 + int64(0)) - _v30 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v31 = int32(int32(_v30) + int32(10)) - *(*int32)(unsafe.Pointer(uintptr(_v29))) = _v31 - goto l2 -l6: - _v32 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v34 = crt.Bool32(int32(_v32) != int32(0)) - if _v34 != 0 { - goto l7 - } - goto l8 -l7: - _v38 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v39 = Xsqlite3_errmsg(t, _v38) - *(*int64)(unsafe.Pointer(bp + 0)) = _v39 - s_fatalError(t, int64(uintptr(unsafe.Pointer(&s__49))), bp+0) - goto l8 -l8: - _v42 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 112)) - goto l9 -l9: - if _v42 != 0 { - goto l32 - } - goto l10 -l32: - _v46 = 1 - goto l13 -l10: - _v45 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 116)) - goto l11 -l11: - if _v45 != 0 { - goto l33 - } - goto l12 -l33: - _v46 = 1 - goto l13 -l12: - _v46 = 0 - goto l13 -l13: - if _v46 != 0 { - goto l14 - } - goto l15 -l14: - _v50 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 112)) - _v53 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 116)) - *(*int32)(unsafe.Pointer(bp + 8)) = _v50 - - *(*int32)(unsafe.Pointer(bp + 16)) = _v53 - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__50))), bp+8) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 112)) = 0 - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 116)) = 0 - goto l15 -l15: - *(*int32)(unsafe.Pointer(bp + 24)) = _v1 - - _v62 = s_prepareSql(t, int64(uintptr(unsafe.Pointer(&s__51))), bp+24) - _v63 = int64(_v5 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v63))) = _v62 - _v64 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v65 = Xsqlite3_step(t, _v64) - _v66 = int64(_v7 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v66))) = _v65 - _v67 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _ = Xsqlite3_finalize(t, _v67) - _v69 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v71 = crt.Bool32(int32(_v69) == int32(100)) - if _v71 != 0 { - goto l16 - } - goto l18 -l16: - *(*int32)(unsafe.Pointer(bp + 32)) = _v1 - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__52))), bp+32) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) = 10000 - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__53))), 0) - return 101 -l18: - *(*int32)(unsafe.Pointer(bp + 40)) = _v1 - - _v81 = s_prepareSql(t, int64(uintptr(unsafe.Pointer(&s__54))), bp+40) - _v82 = int64(_v5 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v82))) = _v81 - _v83 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v84 = Xsqlite3_step(t, _v83) - _v85 = int64(_v7 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v85))) = _v84 - _v86 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v88 = crt.Bool32(int32(_v86) == int32(100)) - if _v88 != 0 { - goto l19 - } - goto l21 -l19: - _v89 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v91 = Xsqlite3_column_bytes(t, _v89, 0) - *(*int32)(unsafe.Pointer(uintptr(_v9))) = _v91 - _v92 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v94 = int32(int32(_v92) + int32(1)) - _v95 = Xsqlite3_malloc(t, _v94) - *(*int64)(unsafe.Pointer(uintptr(_v2))) = _v95 - _v98 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - _v99 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v101 = Xsqlite3_column_text(t, _v99, 0) - _ = crt.Xstrcpy(t, _v98, _v101) - _v103 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v105 = Xsqlite3_column_int(t, _v103, 1) - _v106 = int64(_v6 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v106))) = _v105 - _v107 = *(*int32)(unsafe.Pointer(uintptr(_v106))) - *(*int32)(unsafe.Pointer(uintptr(_v3))) = _v107 - _v110 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v112 = Xsqlite3_column_text(t, _v110, 2) - *(*int64)(unsafe.Pointer(bp + 48)) = _v112 - - _v113 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__55))), bp+48) - *(*int64)(unsafe.Pointer(uintptr(_v4))) = _v113 - _v115 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _ = Xsqlite3_finalize(t, _v115) - _v118 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - *(*int32)(unsafe.Pointer(bp + 56)) = _v118 - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__56))), bp+56) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) = 10000 - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__53))), 0) - return 0 -l21: - _v124 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _ = Xsqlite3_finalize(t, _v124) - _v126 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v128 = crt.Bool32(int32(_v126) == int32(101)) - if _v128 != 0 { - goto l22 - } - goto l29 -l22: - _v129 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v131 = crt.Bool32(int32(_v129) > int32(30000)) - if _v131 != 0 { - goto l23 - } - goto l24 -l23: - s_errorMessage(t, int64(uintptr(unsafe.Pointer(&s__57))), 0) - *(*int32)(unsafe.Pointer(bp + 64)) = _v1 - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__58))), bp+64) - _v137 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _ = Xsqlite3_close(t, _v137) - crt.Xexit(t, 1) - goto l24 -l24: - goto l25 -l25: - - _v141 = s_trySql(t, int64(uintptr(unsafe.Pointer(&s__59))), 0) - _v143 = crt.Bool32(int32(_v141) == int32(5)) - if _v143 != 0 { - goto l26 - } - goto l27 -l26: - _ = Xsqlite3_sleep(t, 10) - _v147 = int64(_v8 + int64(0)) - _v148 = *(*int32)(unsafe.Pointer(uintptr(_v147))) - _v149 = int32(int32(_v148) + int32(10)) - *(*int32)(unsafe.Pointer(uintptr(_v147))) = _v149 - goto l25 -l27: - _ = Xsqlite3_sleep(t, 100) - _v153 = int64(_v8 + int64(0)) - _v154 = *(*int32)(unsafe.Pointer(uintptr(_v153))) - _v155 = int32(int32(_v154) + int32(100)) - *(*int32)(unsafe.Pointer(uintptr(_v153))) = _v155 - goto l2 -l29: - _v159 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v160 = Xsqlite3_errmsg(t, _v159) - *(*int64)(unsafe.Pointer(bp + 72)) = _v160 - s_fatalError(t, int64(uintptr(unsafe.Pointer(&s__55))), bp+72) - goto l2 -l30: - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) = 10000 - goto l31 -l31: - return 0 +type _IO_FILE = struct { + _flags int32 + _IO_read_ptr uintptr + _IO_read_end uintptr + _IO_read_base uintptr + _IO_write_base uintptr + _IO_write_ptr uintptr + _IO_write_end uintptr + _IO_buf_base uintptr + _IO_buf_end uintptr + _IO_save_base uintptr + _IO_backup_base uintptr + _IO_save_end uintptr + _markers uintptr + _chain uintptr + _fileno int32 + _flags2 int32 + _old_offset int64 + _cur_column uint16 + _vtable_offset int8 + _shortbuf [1]int8 + _lock uintptr + _offset int64 + _codecvt uintptr + _wide_data uintptr + _freeres_list uintptr + _freeres_buf uintptr + __pad5 size_t + _mode int32 + _unused2 [20]int8 } -var s__47 = [12]byte{0x73, 0x74, 0x61, 0x72, 0x74, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74} +// The opaque type of streams. This is the definition used elsewhere. +type FILE = _IO_FILE /* FILE.h:7:25 */ + +// These macros are used by bits/stdio.h and internal headers. + +// Many more flag bits are defined internally. + +// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// +//This file is part of GCC. +// +//GCC is free software; you can redistribute it and/or modify +//it under the terms of the GNU General Public License as published by +//the Free Software Foundation; either version 3, or (at your option) +//any later version. +// +//GCC is distributed in the hope that it will be useful, +//but WITHOUT ANY WARRANTY; without even the implied warranty of +//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +//GNU General Public License for more details. +// +//Under Section 7 of GPL version 3, you are granted additional +//permissions described in the GCC Runtime Library Exception, version +//3.1, as published by the Free Software Foundation. +// +//You should have received a copy of the GNU General Public License and +//a copy of the GCC Runtime Library Exception along with this program; +//see the files COPYING3 and COPYING.RUNTIME respectively. If not, see +//<http://www.gnu.org/licenses/>. + +// ISO C Standard: 7.15 Variable arguments <stdarg.h> + +type off_t = int64 /* stdio.h:63:17 */ + +type ssize_t = int64 /* stdio.h:77:19 */ + +// The type of the second argument to `fgetpos' and `fsetpos'. +type fpos_t = _G_fpos_t /* stdio.h:84:18 */ + +// If we are compiling with optimizing read this file. It contains +// several optimizing inline functions and macros. + +// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// POSIX Standard: 2.10 Symbolic Constants <unistd.h> + +// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// These may be used to determine what facilities are present at compile time. +// Their values can be obtained at run time from `sysconf'. + +// POSIX Standard approved as ISO/IEC 9945-1 as of September 2008. + +// These are not #ifdef __USE_POSIX2 because they are +// in the theoretically application-owned namespace. + +// The utilities on GNU systems also correspond to this version. + +// The utilities on GNU systems also correspond to this version. + +// This symbol was required until the 2001 edition of POSIX. + +// If defined, the implementation supports the +// C Language Bindings Option. + +// If defined, the implementation supports the +// C Language Development Utilities Option. + +// If defined, the implementation supports the +// Software Development Utilities Option. + +// If defined, the implementation supports the +// creation of locales with the localedef utility. + +// X/Open version number to which the library conforms. It is selectable. + +// Commands and utilities from XPG4 are available. + +// We are compatible with the old published standards as well. + +// The X/Open Unix extensions are available. + +// The enhanced internationalization capabilities according to XPG4.2 +// are present. + +// The legacy interfaces are also available. + +// Get values of POSIX options: +// +// If these symbols are defined, the corresponding features are +// always available. If not, they may be available sometimes. +// The current values can be obtained with `sysconf'. +// +// _POSIX_JOB_CONTROL Job control is supported. +// _POSIX_SAVED_IDS Processes have a saved set-user-ID +// and a saved set-group-ID. +// _POSIX_REALTIME_SIGNALS Real-time, queued signals are supported. +// _POSIX_PRIORITY_SCHEDULING Priority scheduling is supported. +// _POSIX_TIMERS POSIX.4 clocks and timers are supported. +// _POSIX_ASYNCHRONOUS_IO Asynchronous I/O is supported. +// _POSIX_PRIORITIZED_IO Prioritized asynchronous I/O is supported. +// _POSIX_SYNCHRONIZED_IO Synchronizing file data is supported. +// _POSIX_FSYNC The fsync function is present. +// _POSIX_MAPPED_FILES Mapping of files to memory is supported. +// _POSIX_MEMLOCK Locking of all memory is supported. +// _POSIX_MEMLOCK_RANGE Locking of ranges of memory is supported. +// _POSIX_MEMORY_PROTECTION Setting of memory protections is supported. +// _POSIX_MESSAGE_PASSING POSIX.4 message queues are supported. +// _POSIX_SEMAPHORES POSIX.4 counting semaphores are supported. +// _POSIX_SHARED_MEMORY_OBJECTS POSIX.4 shared memory objects are supported. +// _POSIX_THREADS POSIX.1c pthreads are supported. +// _POSIX_THREAD_ATTR_STACKADDR Thread stack address attribute option supported. +// _POSIX_THREAD_ATTR_STACKSIZE Thread stack size attribute option supported. +// _POSIX_THREAD_SAFE_FUNCTIONS Thread-safe functions are supported. +// _POSIX_THREAD_PRIORITY_SCHEDULING +// POSIX.1c thread execution scheduling supported. +// _POSIX_THREAD_PRIO_INHERIT Thread priority inheritance option supported. +// _POSIX_THREAD_PRIO_PROTECT Thread priority protection option supported. +// _POSIX_THREAD_PROCESS_SHARED Process-shared synchronization supported. +// _POSIX_PII Protocol-independent interfaces are supported. +// _POSIX_PII_XTI XTI protocol-indep. interfaces are supported. +// _POSIX_PII_SOCKET Socket protocol-indep. interfaces are supported. +// _POSIX_PII_INTERNET Internet family of protocols supported. +// _POSIX_PII_INTERNET_STREAM Connection-mode Internet protocol supported. +// _POSIX_PII_INTERNET_DGRAM Connectionless Internet protocol supported. +// _POSIX_PII_OSI ISO/OSI family of protocols supported. +// _POSIX_PII_OSI_COTS Connection-mode ISO/OSI service supported. +// _POSIX_PII_OSI_CLTS Connectionless ISO/OSI service supported. +// _POSIX_POLL Implementation supports `poll' function. +// _POSIX_SELECT Implementation supports `select' and `pselect'. +// +// _XOPEN_REALTIME X/Open realtime support is available. +// _XOPEN_REALTIME_THREADS X/Open realtime thread support is available. +// _XOPEN_SHM Shared memory interface according to XPG4.2. +// +// _XBS5_ILP32_OFF32 Implementation provides environment with 32-bit +// int, long, pointer, and off_t types. +// _XBS5_ILP32_OFFBIG Implementation provides environment with 32-bit +// int, long, and pointer and off_t with at least +// 64 bits. +// _XBS5_LP64_OFF64 Implementation provides environment with 32-bit +// int, and 64-bit long, pointer, and off_t types. +// _XBS5_LPBIG_OFFBIG Implementation provides environment with at +// least 32 bits int and long, pointer, and off_t +// with at least 64 bits. +// +// If any of these symbols is defined as -1, the corresponding option is not +// true for any file. If any is defined as other than -1, the corresponding +// option is true for all files. If a symbol is not defined at all, the value +// for a specific file can be obtained from `pathconf' and `fpathconf'. +// +// _POSIX_CHOWN_RESTRICTED Only the super user can use `chown' to change +// the owner of a file. `chown' can only be used +// to change the group ID of a file to a group of +// which the calling process is a member. +// _POSIX_NO_TRUNC Pathname components longer than +// NAME_MAX generate an error. +// _POSIX_VDISABLE If defined, if the value of an element of the +// `c_cc' member of `struct termios' is +// _POSIX_VDISABLE, no character will have the +// effect associated with that element. +// _POSIX_SYNC_IO Synchronous I/O may be performed. +// _POSIX_ASYNC_IO Asynchronous I/O may be performed. +// _POSIX_PRIO_IO Prioritized Asynchronous I/O may be performed. +// +// Support for the Large File Support interface is not generally available. +// If it is available the following constants are defined to one. +// _LFS64_LARGEFILE Low-level I/O supports large files. +// _LFS64_STDIO Standard I/O supports large files. +// + +// Define POSIX options for Linux. +// Copyright (C) 1996-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public License as +// published by the Free Software Foundation; either version 2.1 of the +// License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; see the file COPYING.LIB. If +// not, see <http://www.gnu.org/licenses/>. -var s__48 = [16]byte{0x42, 0x45, 0x47, 0x49, 0x4e, 0x20, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45} +// Job control is supported. -var s__49 = [19]byte{ - 0x69, 0x6e, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3a, 0x20, - 0x25, 0x73, -} +// Processes have a saved set-user-ID and a saved set-group-ID. -var s__50 = [53]byte{ - 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x20, - 0x53, 0x45, 0x54, 0x20, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x3d, 0x6e, 0x45, 0x72, 0x72, 0x6f, - 0x72, 0x2b, 0x25, 0x64, 0x2c, 0x20, 0x6e, 0x54, 0x65, 0x73, 0x74, 0x3d, 0x6e, 0x54, 0x65, 0x73, - 0x74, 0x2b, 0x25, 0x64, -} +// Priority scheduling is supported. -var s__51 = [46]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x31, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x69, 0x64, 0x3d, 0x25, 0x64, - 0x20, 0x41, 0x4e, 0x44, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x48, 0x61, 0x6c, 0x74, -} +// Synchronizing file data is supported. -var s__52 = [31]byte{ - 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x69, 0x64, 0x3d, 0x25, 0x64, -} +// The fsync function is present. -var s__53 = [20]byte{ - 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x20, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x41, 0x43, 0x54, 0x49, - 0x4f, 0x4e, 0x3b, -} - -var s__54 = [92]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2c, 0x20, 0x69, - 0x64, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x74, 0x61, 0x73, - 0x6b, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x3d, 0x25, - 0x64, 0x20, 0x41, 0x4e, 0x44, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x20, - 0x49, 0x53, 0x20, 0x4e, 0x55, 0x4c, 0x4c, 0x20, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x20, 0x42, 0x59, - 0x20, 0x69, 0x64, 0x20, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x20, 0x31, -} - -var s__55 = [3]byte{0x25, 0x73} +// Mapping of files to memory is supported. -var s__56 = [83]byte{ - 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x20, 0x20, 0x20, 0x53, 0x45, - 0x54, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x3d, 0x73, 0x74, 0x72, 0x66, - 0x74, 0x69, 0x6d, 0x65, 0x28, 0x27, 0x25, 0x25, 0x59, 0x2d, 0x25, 0x25, 0x6d, 0x2d, 0x25, 0x25, - 0x64, 0x20, 0x25, 0x25, 0x48, 0x3a, 0x25, 0x25, 0x4d, 0x3a, 0x25, 0x25, 0x66, 0x27, 0x2c, 0x27, - 0x6e, 0x6f, 0x77, 0x27, 0x29, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x69, 0x64, 0x3d, 0x25, - 0x64, 0x3b, -} +// Locking of all memory is supported. -var s__57 = [49]byte{ - 0x57, 0x61, 0x69, 0x74, 0x65, 0x64, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x20, 0x33, 0x30, 0x20, 0x73, - 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x6e, 0x6f, 0x20, 0x77, - 0x6f, 0x72, 0x6b, 0x2e, 0x20, 0x20, 0x47, 0x69, 0x76, 0x69, 0x6e, 0x67, 0x20, 0x75, 0x70, 0x2e, -} +// Locking of ranges of memory is supported. -var s__58 = [40]byte{ - 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x69, 0x64, 0x3d, 0x25, 0x64, 0x3b, 0x20, - 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x3b, -} +// Setting of memory protections is supported. -var s__59 = [7]byte{0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54} +// Some filesystems allow all users to change file ownership. -func s_finishScript(t *crt.TLS, _v1 int32, _v2 int32, _v3 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - *(*int32)(unsafe.Pointer(bp + 0)) = _v2 - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__61))), bp+0) - if _v3 != 0 { - goto l2 - } - goto l3 -l2: - *(*int32)(unsafe.Pointer(bp + 8)) = _v1 - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__52))), bp+8) - goto l3 -l3: - return 0 -} +// `c_cc' member of 'struct termios' structure can be disabled by +// using the value _POSIX_VDISABLE. -var s__60 = [13]byte{0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74} +// Filenames are not silently truncated. -var s__61 = [81]byte{ - 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x20, 0x20, 0x20, 0x53, 0x45, - 0x54, 0x20, 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x3d, 0x73, 0x74, 0x72, 0x66, 0x74, 0x69, - 0x6d, 0x65, 0x28, 0x27, 0x25, 0x25, 0x59, 0x2d, 0x25, 0x25, 0x6d, 0x2d, 0x25, 0x25, 0x64, 0x20, - 0x25, 0x25, 0x48, 0x3a, 0x25, 0x25, 0x4d, 0x3a, 0x25, 0x25, 0x66, 0x27, 0x2c, 0x27, 0x6e, 0x6f, - 0x77, 0x27, 0x29, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x69, 0x64, 0x3d, 0x25, 0x64, 0x3b, -} +// X/Open realtime support is available. -func s_startClient(t *crt.TLS, _v1 int32) { - bp := t.Alloc(112) - defer t.Free(112) - var _v13 int64 // %t10 - var _v16 int64 // %t13 - var _v20 int32 // %t17 - var _v21 int64 // %t18 - var _v22 int64 // %t19 - var _v25 int32 // %t22 - var _v27 int64 // %t24 - var _v28 int64 // %t25 - var _v29 int64 // %t26 - var _v32 int32 // %t29 - var _v34 int64 // %t31 - var _v35 int64 // %t32 - var _v36 int64 // %t33 - var _v39 int64 // %t36 - var _v40 int32 // %t37 - var _v42 int64 // %t39 - var _v45 int64 // %t42 - var _v46 int64 // %t43 - var _v47 int64 // %t44 - var _v50 int32 // %t47 - var _v52 int32 // %t49 - var _v8 int64 // %t5 - var _v54 int64 // %t51 - var _v56 int64 // %t53 - var _v57 int64 // %t54 - var _v58 int64 // %t55 - var _v59 int64 // %t56 - var _v60 int32 // %t57 - var _v61 int64 // %t58 - var _v62 int32 // %t59 - var _v9 int32 // %t6 - var _v64 int32 // %t61 - var _v65 int64 // %t62 - var _v2 = int64(bp + 96) // %v2 - var _v3 = int64(bp + 104) // %v3 - *(*int32)(unsafe.Pointer(bp + 0)) = _v1 - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__63))), bp+0) - _v8 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v9 = Xsqlite3_changes(t, _v8) - if _v9 != 0 { - goto l2 - } - goto l13 -l2: - _v13 = *(*int64)(unsafe.Pointer(&s_g)) - _v16 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) - _v20 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - *(*int64)(unsafe.Pointer(bp + 8)) = _v13 +// X/Open thread realtime support is available. - *(*int64)(unsafe.Pointer(bp + 16)) = _v16 +// XPG4.2 shared memory is supported. - *(*int32)(unsafe.Pointer(bp + 24)) = _v1 +// Tell we have POSIX threads. - *(*int32)(unsafe.Pointer(bp + 32)) = _v20 +// We have the reentrant functions described in POSIX. - _v21 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__64))), bp+8) - _v22 = int64(_v2 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v22))) = _v21 - _v25 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 104)) - if _v25 != 0 { - goto l3 - } - goto l4 -l3: - _v27 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - *(*int64)(unsafe.Pointer(bp + 40)) = _v27 - - _v28 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__65))), bp+40) - _v29 = int64(_v2 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v29))) = _v28 - goto l4 -l4: - _v32 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 124)) - if _v32 != 0 { - goto l5 - } - goto l6 -l5: - _v34 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - *(*int64)(unsafe.Pointer(bp + 48)) = _v34 - - _v35 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__66))), bp+48) - _v36 = int64(_v2 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v36))) = _v35 - goto l6 -l6: - _v39 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) - _v40 = crt.Bool32(int64(_v39) != int64(int64(0))) - if _v40 != 0 { - goto l7 - } - goto l8 -l7: - _v42 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - _v45 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) - *(*int64)(unsafe.Pointer(bp + 56)) = _v42 - - *(*int64)(unsafe.Pointer(bp + 64)) = _v45 - - _v46 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__67))), bp+56) - _v47 = int64(_v2 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v47))) = _v46 - goto l8 -l8: - _v50 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - _v52 = crt.Bool32(int32(_v50) >= int32(2)) - if _v52 != 0 { - goto l9 - } - goto l10 -l9: - _v54 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - *(*int64)(unsafe.Pointer(bp + 72)) = _v54 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__68))), bp+72) - goto l10 -l10: - _v56 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - *(*int64)(unsafe.Pointer(bp + 80)) = _v56 - - _v57 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__69))), bp+80) - _v58 = int64(_v2 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v58))) = _v57 - _v59 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - _v60 = crt.Xsystem(t, _v59) - _v61 = int64(_v3 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v61))) = _v60 - _v62 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - if _v62 != 0 { - goto l11 - } - goto l12 -l11: - _v64 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - *(*int32)(unsafe.Pointer(bp + 88)) = _v64 - s_errorMessage(t, int64(uintptr(unsafe.Pointer(&s__70))), bp+88) - goto l12 -l12: - _v65 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - Xsqlite3_free(t, _v65) - goto l13 -l13: - goto l14 -l14: -} +// We provide priority scheduling for threads. -var s__62 = [12]byte{0x73, 0x74, 0x61, 0x72, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74} +// We support user-defined stack sizes. -var s__63 = [42]byte{ - 0x49, 0x4e, 0x53, 0x45, 0x52, 0x54, 0x20, 0x4f, 0x52, 0x20, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, - 0x20, 0x49, 0x4e, 0x54, 0x4f, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x56, 0x41, 0x4c, - 0x55, 0x45, 0x53, 0x28, 0x25, 0x64, 0x2c, 0x30, 0x29, -} +// We support user-defined stacks. -var s__64 = [31]byte{ - 0x25, 0x73, 0x20, 0x22, 0x25, 0x73, 0x22, 0x20, 0x2d, 0x2d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x20, 0x25, 0x64, 0x20, 0x2d, 0x2d, 0x74, 0x72, 0x61, 0x63, 0x65, 0x20, 0x25, 0x64, -} +// We support priority inheritence. -var s__65 = [14]byte{0x25, 0x7a, 0x20, 0x2d, 0x2d, 0x73, 0x71, 0x6c, 0x74, 0x72, 0x61, 0x63, 0x65} +// We support priority protection, though only for non-robust +// mutexes. -var s__66 = [10]byte{0x25, 0x7a, 0x20, 0x2d, 0x2d, 0x73, 0x79, 0x6e, 0x63} +// We support priority inheritence for robust mutexes. -var s__67 = [14]byte{0x25, 0x7a, 0x20, 0x2d, 0x2d, 0x76, 0x66, 0x73, 0x20, 0x22, 0x25, 0x73, 0x22} +// We do not support priority protection for robust mutexes. -var s__68 = [13]byte{0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x28, 0x27, 0x25, 0x71, 0x27, 0x29} +// We support POSIX.1b semaphores. -var s__69 = [5]byte{0x25, 0x7a, 0x20, 0x26} +// Real-time signals are supported. -var s__70 = [34]byte{ - 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x28, 0x29, 0x20, 0x66, 0x61, 0x69, 0x6c, 0x73, 0x20, 0x77, - 0x69, 0x74, 0x68, 0x20, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x25, - 0x64, -} +// We support asynchronous I/O. +// Alternative name for Unix98. +// Support for prioritization is also available. -func s_readFile(t *crt.TLS, _v1 int64) int64 { - bp := t.Alloc(32) - defer t.Free(32) - var _v14 int64 // %t10 - var _v19 int64 // %t15 - var _v20 int64 // %t16 - var _v21 int64 // %t17 - var _v22 int64 // %t18 - var _v23 int64 // %t19 - var _v26 int64 // %t22 - var _v27 int32 // %t23 - var _v28 int64 // %t24 - var _v29 int64 // %t25 - var _v30 int64 // %t26 - var _v33 int64 // %t29 - var _v7 int64 // %t3 - var _v34 int64 // %t30 - var _v35 int64 // %t31 - var _v36 int64 // %t32 - var _v39 int64 // %t35 - var _v40 int64 // %t36 - var _v41 int64 // %t37 - var _v42 int64 // %t38 - var _v43 int64 // %t39 - var _v8 int64 // %t4 - var _v45 int64 // %t41 - var _v11 int32 // %t7 - var _v2 = int64(bp + 8) // %v2 - var _v3 = int64(bp + 16) // %v3 - var _v4 = int64(bp + 24) // %v4 - _v7 = crt.Xfopen(t, _v1, int64(uintptr(unsafe.Pointer(&s__72)))) - *(*int64)(unsafe.Pointer(uintptr(_v2))) = _v7 - _v8 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - _v11 = crt.Bool32(_v8 == int64(0)) - if _v11 != 0 { - goto l2 - } - goto l3 -l2: - *(*int64)(unsafe.Pointer(bp + 0)) = _v1 - s_fatalError(t, int64(uintptr(unsafe.Pointer(&s__73))), bp+0) - goto l3 -l3: - _v14 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - _ = crt.Xfseek(t, _v14, int64(0), 2) - _v19 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - _v20 = crt.Xftell(t, _v19) - _v21 = int64(_v3 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v21))) = _v20 - _v22 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - crt.Xrewind(t, _v22) - _v23 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v26 = int64(_v23 + int64(1)) - _v27 = int32(int32(int32(_v26)) & int32(-1)) - _v28 = Xsqlite3_malloc(t, _v27) - _v29 = int64(_v4 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v29))) = _v28 - _v30 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v33 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v34 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - _v35 = crt.Xfread(t, _v30, int64(1), _v33, _v34) - _v36 = int64(_v3 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v36))) = _v35 - _v39 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v40 = int64(_v39 * int64(1)) - _v41 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - _v42 = int64(_v41 + _v40) - *(*int8)(unsafe.Pointer(uintptr(_v42))) = 0 - _v43 = *(*int64)(unsafe.Pointer(uintptr(_v2))) - _ = crt.Xfclose(t, _v43) - _v45 = *(*int64)(unsafe.Pointer(uintptr(_v4))) - return _v45 -} +// The LFS support in asynchronous I/O is also available. -var s__71 = [9]byte{0x72, 0x65, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65} +// The rest of the LFS is also available. -var s__72 = [3]byte{0x72, 0x62} +// POSIX shared memory objects are implemented. -var s__73 = [29]byte{ - 0x63, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x20, 0x6f, 0x70, 0x65, 0x6e, 0x20, 0x22, 0x25, 0x73, 0x22, - 0x20, 0x66, 0x6f, 0x72, 0x20, 0x72, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, -} +// CPU-time clocks support needs to be checked at runtime. -func s_tokenLength(t *crt.TLS, _v1 int64, _v2 int64) int32 { - bp := t.Alloc(32) - defer t.Free(32) - var _v17 int64 // %t10 - var _v107 int32 // %t100 - var _v108 int32 // %t101 - var _v109 int64 // %t102 - var _v110 int32 // %t103 - var _v111 int32 // %t104 - var _v113 int64 // %t106 - var _v114 int32 // %t107 - var _v115 int32 // %t108 - var _v116 int32 // %t109 - var _v18 int64 // %t11 - var _v118 int32 // %t111 - var _v119 int32 // %t112 - var _v120 int32 // %t113 - var _v121 int64 // %t114 - var _v122 int64 // %t115 - var _v124 int64 // %t117 - var _v125 int32 // %t118 - var _v126 int32 // %t119 - var _v19 int64 // %t12 - var _v128 int32 // %t121 - var _v129 int32 // %t122 - var _v130 int64 // %t123 - var _v131 int32 // %t124 - var _v132 int32 // %t125 - var _v134 int64 // %t127 - var _v135 int32 // %t128 - var _v136 int32 // %t129 - var _v20 int64 // %t13 - var _v137 int64 // %t130 - var _v138 int32 // %t131 - var _v139 int32 // %t132 - var _v144 int64 // %t137 - var _v145 int32 // %t138 - var _v146 int32 // %t139 - var _v21 int32 // %t14 - var _v148 int32 // %t141 - var _v153 int64 // %t146 - var _v154 int32 // %t147 - var _v155 int32 // %t148 - var _v22 int32 // %t15 - var _v157 int32 // %t150 - var _v158 int32 // %t151 - var _v160 int64 // %t153 - var _v161 int32 // %t154 - var _v162 int64 // %t155 - var _v163 int64 // %t156 - var _v165 int64 // %t158 - var _v166 int32 // %t159 - var _v167 int32 // %t160 - var _v168 int64 // %t161 - var _v169 int64 // %t162 - var _v171 int64 // %t164 - var _v172 int32 // %t165 - var _v173 int32 // %t166 - var _v175 int32 // %t168 - var _v176 int32 // %t169 - var _v177 int64 // %t170 - var _v178 int32 // %t171 - var _v179 int32 // %t172 - var _v180 int32 // %t173 - var _v181 int64 // %t174 - var _v182 int64 // %t175 - var _v184 int64 // %t177 - var _v185 int32 // %t178 - var _v187 int32 // %t180 - var _v188 int32 // %t181 - var _v189 int64 // %t182 - var _v190 int32 // %t183 - var _v191 int32 // %t184 - var _v196 int64 // %t189 - var _v26 int32 // %t19 - var _v197 int32 // %t190 - var _v198 int32 // %t191 - var _v200 int32 // %t193 - var _v205 int64 // %t198 - var _v206 int32 // %t199 - var _v207 int32 // %t200 - var _v209 int32 // %t202 - var _v210 int32 // %t203 - var _v215 int64 // %t208 - var _v216 int32 // %t209 - var _v217 int32 // %t210 - var _v219 int64 // %t212 - var _v220 int32 // %t213 - var _v221 int64 // %t214 - var _v222 int64 // %t215 - var _v224 int64 // %t217 - var _v225 int32 // %t218 - var _v226 int32 // %t219 - var _v227 int64 // %t220 - var _v228 int64 // %t221 - var _v230 int64 // %t223 - var _v231 int32 // %t224 - var _v232 int32 // %t225 - var _v234 int32 // %t227 - var _v236 int32 // %t229 - var _v237 int32 // %t230 - var _v238 int32 // %t231 - var _v239 int64 // %t232 - var _v240 int64 // %t233 - var _v242 int64 // %t235 - var _v243 int32 // %t236 - var _v244 int32 // %t237 - var _v245 int32 // %t238 - var _v246 int32 // %t239 - var _v31 int64 // %t24 - var _v247 int64 // %t240 - var _v248 int32 // %t241 - var _v249 int32 // %t242 - var _v250 int32 // %t243 - var _v252 int32 // %t245 - var _v253 int64 // %t246 - var _v254 int64 // %t247 - var _v256 int64 // %t249 - var _v32 int32 // %t25 - var _v257 int32 // %t250 - var _v258 int32 // %t251 - var _v259 int32 // %t252 - var _v260 int32 // %t253 - var _v261 int64 // %t254 - var _v262 int32 // %t255 - var _v263 int32 // %t256 - var _v265 int64 // %t258 - var _v266 int32 // %t259 - var _v33 int32 // %t26 - var _v267 int64 // %t260 - var _v268 int64 // %t261 - var _v270 int64 // %t263 - var _v271 int32 // %t264 - var _v272 int32 // %t265 - var _v273 int64 // %t266 - var _v274 int32 // %t267 - var _v276 int32 // %t269 - var _v277 int32 // %t270 - var _v278 int32 // %t271 - var _v279 int32 // %t272 - var _v280 int64 // %t273 - var _v281 int64 // %t274 - var _v282 int64 // %t275 - var _v283 int64 // %t276 - var _v284 int64 // %t277 - var _v285 int32 // %t278 - var _v286 int32 // %t279 - var _v35 int32 // %t28 - var _v290 int32 // %t283 - var _v291 int32 // %t284 - var _v292 int32 // %t285 - var _v293 int32 // %t286 - var _v295 int32 // %t288 - var _v296 int32 // %t289 - var _v297 int32 // %t290 - var _v299 int32 // %t292 - var _v300 int32 // %t293 - var _v301 int32 // %t294 - var _v303 int32 // %t296 - var _v304 int32 // %t297 - var _v305 int64 // %t298 - var _v306 int32 // %t299 - var _v307 int32 // %t300 - var _v308 int32 // %t301 - var _v40 int64 // %t33 - var _v41 int32 // %t34 - var _v42 int32 // %t35 - var _v44 int32 // %t37 - var _v45 int32 // %t38 - var _v46 int32 // %t39 - var _v52 int64 // %t45 - var _v53 int32 // %t46 - var _v54 int32 // %t47 - var _v56 int32 // %t49 - var _v58 int64 // %t51 - var _v60 int64 // %t53 - var _v61 int64 // %t54 - var _v62 int32 // %t55 - var _v63 int32 // %t56 - var _v64 int64 // %t57 - var _v65 int64 // %t58 - var _v13 int64 // %t6 - var _v67 int64 // %t60 - var _v68 int32 // %t61 - var _v69 int32 // %t62 - var _v70 int64 // %t63 - var _v71 int32 // %t64 - var _v73 int32 // %t66 - var _v74 int32 // %t67 - var _v76 int32 // %t69 - var _v14 int32 // %t7 - var _v78 int32 // %t71 - var _v79 int32 // %t72 - var _v80 int32 // %t73 - var _v81 int32 // %t74 - var _v82 int32 // %t75 - var _v83 int64 // %t76 - var _v84 int64 // %t77 - var _v85 int64 // %t78 - var _v86 int64 // %t79 - var _v15 int32 // %t8 - var _v87 int64 // %t80 - var _v88 int32 // %t81 - var _v89 int32 // %t82 - var _v93 int32 // %t86 - var _v94 int32 // %t87 - var _v95 int32 // %t88 - var _v16 int64 // %t9 - var _v97 int32 // %t90 - var _v98 int32 // %t91 - var _v99 int32 // %t92 - var _v100 int64 // %t93 - var _v101 int64 // %t94 - var _v103 int64 // %t96 - var _v104 int32 // %t97 - var _v105 int32 // %t98 - var _v3 = int64(bp + 0) // %v3 - var _v4 = int64(bp + 4) // %v4 - var _v5 = int64(bp + 8) // %v5 - var _v6 = int64(bp + 12) // %v6 - var _v7 = int64(bp + 16) // %v7 - *(*int32)(unsafe.Pointer(uintptr(_v3))) = 0 - _v13 = int64(_v1 + int64(0)) - _v14 = int32(*(*int8)(unsafe.Pointer(uintptr(_v13)))) - _v15 = int32(int32(uint8(_v14))) - _v16 = int64(int32(_v15)) - _v17 = int64(_v16 * int64(2)) - _v18 = crt.X__ctype_b_loc(t) - _v19 = *(*int64)(unsafe.Pointer(uintptr(_v18))) - _v20 = int64(_v19 + _v17) - _v21 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v20)))) - _v22 = int32(uint16(_v21)) - _v26 = int32(int32(_v22) & int32(8192)) - goto l2 -l2: - if _v26 != 0 { - goto l127 - } - goto l3 -l127: - _v46 = 1 - goto l11 -l3: - _v31 = int64(_v1 + int64(0)) - _v32 = int32(*(*int8)(unsafe.Pointer(uintptr(_v31)))) - _v33 = int32(int8(_v32)) - _v35 = crt.Bool32(int32(_v33) == int32(47)) - goto l4 -l4: - if _v35 != 0 { - goto l5 - } - goto l128 -l128: - _v45 = 0 - goto l8 -l5: - _v40 = int64(_v1 + int64(1)) - _v41 = int32(*(*int8)(unsafe.Pointer(uintptr(_v40)))) - _v42 = int32(int8(_v41)) - _v44 = crt.Bool32(int32(_v42) == int32(42)) - goto l6 -l6: - if _v44 != 0 { - goto l7 - } - goto l129 -l129: - _v45 = 0 - goto l8 -l7: - _v45 = 1 - goto l8 -l8: - goto l9 -l9: - if _v45 != 0 { - goto l130 - } - goto l10 -l130: - _v46 = 1 - goto l11 -l10: - _v46 = 0 - goto l11 -l11: - if _v46 != 0 { - goto l12 - } - goto l58 -l12: - *(*int32)(unsafe.Pointer(uintptr(_v4))) = 0 - _v52 = int64(_v1 + int64(0)) - _v53 = int32(*(*int8)(unsafe.Pointer(uintptr(_v52)))) - _v54 = int32(int8(_v53)) - _v56 = crt.Bool32(int32(_v54) == int32(47)) - if _v56 != 0 { - goto l13 - } - goto l14 -l13: - _v58 = int64(_v4 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v58))) = 1 - _v60 = int64(_v3 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v60))) = 2 - goto l14 -l14: - goto l15 -l15: - _v61 = int64(_v3 + int64(0)) - _v62 = *(*int32)(unsafe.Pointer(uintptr(_v61))) - _v63 = int32(int32(_v62) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v61))) = _v63 - _v64 = int64(int32(_v62)) - _v65 = int64(_v64 * int64(1)) - _v67 = int64(_v1 + _v65) - _v68 = int32(*(*int8)(unsafe.Pointer(uintptr(_v67)))) - _v69 = int32(int8(_v68)) - _v70 = int64(_v5 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v70))) = _v69 - _v71 = *(*int32)(unsafe.Pointer(uintptr(_v70))) - _v73 = crt.Bool32(int32(_v71) != int32(0)) - if _v73 != 0 { - goto l16 - } - goto l131 -l131: - goto l57 -l16: - _v74 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v76 = crt.Bool32(int32(_v74) == int32(10)) - if _v76 != 0 { - goto l17 - } - goto l18 -l17: - _v78 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v79 = int32(int32(_v78) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v79 - goto l18 -l18: - _v80 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v81 = int32(int32(_v80) & int32(255)) - _v82 = int32(int32(uint8(_v81))) - _v83 = int64(int32(_v82)) - _v84 = int64(_v83 * int64(2)) - _v85 = crt.X__ctype_b_loc(t) - _v86 = *(*int64)(unsafe.Pointer(uintptr(_v85))) - _v87 = int64(_v86 + _v84) - _v88 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v87)))) - _v89 = int32(uint16(_v88)) - _v93 = int32(int32(_v89) & int32(8192)) - if _v93 != 0 { - goto l19 - } - goto l21 -l19: - goto l15 -l21: - _v94 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - goto l22 -l22: - if _v94 != 0 { - goto l23 - } - goto l132 -l132: - _v98 = 0 - goto l26 -l23: - _v95 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v97 = crt.Bool32(int32(_v95) == int32(42)) - goto l24 -l24: - if _v97 != 0 { - goto l25 - } - goto l133 -l133: - _v98 = 0 - goto l26 -l25: - _v98 = 1 - goto l26 -l26: - goto l27 -l27: - if _v98 != 0 { - goto l28 - } - goto l134 -l134: - _v108 = 0 - goto l31 -l28: - _v99 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v100 = int64(int32(_v99)) - _v101 = int64(_v100 * int64(1)) - _v103 = int64(_v1 + _v101) - _v104 = int32(*(*int8)(unsafe.Pointer(uintptr(_v103)))) - _v105 = int32(int8(_v104)) - _v107 = crt.Bool32(int32(_v105) == int32(47)) - goto l29 -l29: - if _v107 != 0 { - goto l30 - } - goto l135 -l135: - _v108 = 0 - goto l31 -l30: - _v108 = 1 - goto l31 -l31: - if _v108 != 0 { - goto l32 - } - goto l33 -l32: - _v109 = int64(_v3 + int64(0)) - _v110 = *(*int32)(unsafe.Pointer(uintptr(_v109))) - _v111 = int32(int32(_v110) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v109))) = _v111 - _v113 = int64(_v4 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v113))) = 0 - goto l56 -l33: - _v114 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - goto l34 -l34: - if _v114 != 0 { - goto l35 - } - goto l136 -l136: - _v115 = 1 - goto l36 -l35: - _v115 = 0 - goto l36 -l36: - goto l37 -l37: - if _v115 != 0 { - goto l38 - } - goto l137 -l137: - _v119 = 0 - goto l41 -l38: - _v116 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v118 = crt.Bool32(int32(_v116) == int32(47)) - goto l39 -l39: - if _v118 != 0 { - goto l40 - } - goto l138 -l138: - _v119 = 0 - goto l41 -l40: - _v119 = 1 - goto l41 -l41: - goto l42 -l42: - if _v119 != 0 { - goto l43 - } - goto l139 -l139: - _v129 = 0 - goto l46 -l43: - _v120 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v121 = int64(int32(_v120)) - _v122 = int64(_v121 * int64(1)) - _v124 = int64(_v1 + _v122) - _v125 = int32(*(*int8)(unsafe.Pointer(uintptr(_v124)))) - _v126 = int32(int8(_v125)) - _v128 = crt.Bool32(int32(_v126) == int32(42)) - goto l44 -l44: - if _v128 != 0 { - goto l45 - } - goto l140 -l140: - _v129 = 0 - goto l46 -l45: - _v129 = 1 - goto l46 -l46: - if _v129 != 0 { - goto l47 - } - goto l48 -l47: - _v130 = int64(_v3 + int64(0)) - _v131 = *(*int32)(unsafe.Pointer(uintptr(_v130))) - _v132 = int32(int32(_v131) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v130))) = _v132 - _v134 = int64(_v4 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v134))) = 1 - goto l55 -l48: - _v135 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - goto l49 -l49: - if _v135 != 0 { - goto l50 - } - goto l141 -l141: - _v136 = 1 - goto l51 -l50: - _v136 = 0 - goto l51 -l51: - if _v136 != 0 { - goto l52 - } - goto l54 -l52: - goto l57 -l54: - goto l55 -l55: - goto l56 -l56: - goto l15 -l57: - _v137 = int64(_v3 + int64(0)) - _v138 = *(*int32)(unsafe.Pointer(uintptr(_v137))) - _v139 = int32(int32(_v138) - int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v137))) = _v139 - goto l124 -l58: - _v144 = int64(_v1 + int64(0)) - _v145 = int32(*(*int8)(unsafe.Pointer(uintptr(_v144)))) - _v146 = int32(int8(_v145)) - _v148 = crt.Bool32(int32(_v146) == int32(45)) - goto l59 -l59: - if _v148 != 0 { - goto l60 - } - goto l142 -l142: - _v158 = 0 - goto l63 -l60: - _v153 = int64(_v1 + int64(1)) - _v154 = int32(*(*int8)(unsafe.Pointer(uintptr(_v153)))) - _v155 = int32(int8(_v154)) - _v157 = crt.Bool32(int32(_v155) == int32(45)) - goto l61 -l61: - if _v157 != 0 { - goto l62 - } - goto l143 -l143: - _v158 = 0 - goto l63 -l62: - _v158 = 1 - goto l63 -l63: - if _v158 != 0 { - goto l64 - } - goto l76 -l64: - _v160 = int64(_v3 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v160))) = 2 - goto l65 -l65: - _v161 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v162 = int64(int32(_v161)) - _v163 = int64(_v162 * int64(1)) - _v165 = int64(_v1 + _v163) - _v166 = int32(*(*int8)(unsafe.Pointer(uintptr(_v165)))) - goto l66 -l66: - if _v166 != 0 { - goto l67 - } - goto l144 -l144: - _v176 = 0 - goto l70 -l67: - _v167 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v168 = int64(int32(_v167)) - _v169 = int64(_v168 * int64(1)) - _v171 = int64(_v1 + _v169) - _v172 = int32(*(*int8)(unsafe.Pointer(uintptr(_v171)))) - _v173 = int32(int8(_v172)) - _v175 = crt.Bool32(int32(_v173) != int32(10)) - goto l68 -l68: - if _v175 != 0 { - goto l69 - } - goto l145 -l145: - _v176 = 0 - goto l70 -l69: - _v176 = 1 - goto l70 -l70: - if _v176 != 0 { - goto l71 - } - goto l73 -l71: - goto l72 -l72: - _v177 = int64(_v3 + int64(0)) - _v178 = *(*int32)(unsafe.Pointer(uintptr(_v177))) - _v179 = int32(int32(_v178) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v177))) = _v179 - goto l65 -l73: - _v180 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v181 = int64(int32(_v180)) - _v182 = int64(_v181 * int64(1)) - _v184 = int64(_v1 + _v182) - _v185 = int32(*(*int8)(unsafe.Pointer(uintptr(_v184)))) - if _v185 != 0 { - goto l74 - } - goto l75 -l74: - _v187 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v188 = int32(int32(_v187) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v188 - _v189 = int64(_v3 + int64(0)) - _v190 = *(*int32)(unsafe.Pointer(uintptr(_v189))) - _v191 = int32(int32(_v190) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v189))) = _v191 - goto l75 -l75: - goto l123 -l76: - _v196 = int64(_v1 + int64(0)) - _v197 = int32(*(*int8)(unsafe.Pointer(uintptr(_v196)))) - _v198 = int32(int8(_v197)) - _v200 = crt.Bool32(int32(_v198) == int32(34)) - goto l77 -l77: - if _v200 != 0 { - goto l146 - } - goto l78 -l146: - _v210 = 1 - goto l81 -l78: - _v205 = int64(_v1 + int64(0)) - _v206 = int32(*(*int8)(unsafe.Pointer(uintptr(_v205)))) - _v207 = int32(int8(_v206)) - _v209 = crt.Bool32(int32(_v207) == int32(39)) - goto l79 -l79: - if _v209 != 0 { - goto l147 - } - goto l80 -l147: - _v210 = 1 - goto l81 -l80: - _v210 = 0 - goto l81 -l81: - if _v210 != 0 { - goto l82 - } - goto l94 -l82: - _v215 = int64(_v1 + int64(0)) - _v216 = int32(*(*int8)(unsafe.Pointer(uintptr(_v215)))) - _v217 = int32(int8(_v216)) - *(*int32)(unsafe.Pointer(uintptr(_v6))) = _v217 - _v219 = int64(_v3 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v219))) = 1 - goto l83 -l83: - _v220 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v221 = int64(int32(_v220)) - _v222 = int64(_v221 * int64(1)) - _v224 = int64(_v1 + _v222) - _v225 = int32(*(*int8)(unsafe.Pointer(uintptr(_v224)))) - if _v225 != 0 { - goto l84 - } - goto l148 -l148: - goto l93 -l84: - _v226 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v227 = int64(int32(_v226)) - _v228 = int64(_v227 * int64(1)) - _v230 = int64(_v1 + _v228) - _v231 = int32(*(*int8)(unsafe.Pointer(uintptr(_v230)))) - _v232 = int32(int8(_v231)) - _v234 = crt.Bool32(int32(_v232) == int32(10)) - if _v234 != 0 { - goto l85 - } - goto l86 -l85: - _v236 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v237 = int32(int32(_v236) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v237 - goto l86 -l86: - _v238 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v239 = int64(int32(_v238)) - _v240 = int64(_v239 * int64(1)) - _v242 = int64(_v1 + _v240) - _v243 = int32(*(*int8)(unsafe.Pointer(uintptr(_v242)))) - _v244 = int32(int8(_v243)) - _v245 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v246 = crt.Bool32(int32(_v244) == int32(_v245)) - if _v246 != 0 { - goto l87 - } - goto l91 -l87: - _v247 = int64(_v3 + int64(0)) - _v248 = *(*int32)(unsafe.Pointer(uintptr(_v247))) - _v249 = int32(int32(_v248) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v247))) = _v249 - _v250 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v252 = int32(int32(_v250) + int32(1)) - _v253 = int64(int32(_v252)) - _v254 = int64(_v253 * int64(1)) - _v256 = int64(_v1 + _v254) - _v257 = int32(*(*int8)(unsafe.Pointer(uintptr(_v256)))) - _v258 = int32(int8(_v257)) - _v259 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v260 = crt.Bool32(int32(_v258) != int32(_v259)) - if _v260 != 0 { - goto l88 - } - goto l90 -l88: - goto l93 -l90: - goto l91 -l91: - goto l92 -l92: - _v261 = int64(_v3 + int64(0)) - _v262 = *(*int32)(unsafe.Pointer(uintptr(_v261))) - _v263 = int32(int32(_v262) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v261))) = _v263 - goto l83 -l93: - goto l122 -l94: - _v265 = int64(_v3 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v265))) = 1 - goto l95 -l95: - _v266 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v267 = int64(int32(_v266)) - _v268 = int64(_v267 * int64(1)) - _v270 = int64(_v1 + _v268) - _v271 = int32(*(*int8)(unsafe.Pointer(uintptr(_v270)))) - _v272 = int32(int8(_v271)) - _v273 = int64(_v7 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v273))) = _v272 - _v274 = *(*int32)(unsafe.Pointer(uintptr(_v273))) - _v276 = crt.Bool32(int32(_v274) != int32(0)) - goto l96 -l96: - if _v276 != 0 { - goto l97 - } - goto l149 -l149: - _v292 = 0 - goto l103 -l97: - _v277 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v278 = int32(int32(_v277) & int32(255)) - _v279 = int32(int32(uint8(_v278))) - _v280 = int64(int32(_v279)) - _v281 = int64(_v280 * int64(2)) - _v282 = crt.X__ctype_b_loc(t) - _v283 = *(*int64)(unsafe.Pointer(uintptr(_v282))) - _v284 = int64(_v283 + _v281) - _v285 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v284)))) - _v286 = int32(uint16(_v285)) - _v290 = int32(int32(_v286) & int32(8192)) - goto l98 -l98: - if _v290 != 0 { - goto l99 - } - goto l150 -l150: - _v291 = 1 - goto l100 -l99: - _v291 = 0 - goto l100 -l100: - goto l101 -l101: - if _v291 != 0 { - goto l102 - } - goto l151 -l151: - _v292 = 0 - goto l103 -l102: - _v292 = 1 - goto l103 -l103: - goto l104 -l104: - if _v292 != 0 { - goto l105 - } - goto l152 -l152: - _v296 = 0 - goto l108 -l105: - _v293 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v295 = crt.Bool32(int32(_v293) != int32(34)) - goto l106 -l106: - if _v295 != 0 { - goto l107 - } - goto l153 -l153: - _v296 = 0 - goto l108 -l107: - _v296 = 1 - goto l108 -l108: - goto l109 -l109: - if _v296 != 0 { - goto l110 - } - goto l154 -l154: - _v300 = 0 - goto l113 -l110: - _v297 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v299 = crt.Bool32(int32(_v297) != int32(39)) - goto l111 -l111: - if _v299 != 0 { - goto l112 - } - goto l155 -l155: - _v300 = 0 - goto l113 -l112: - _v300 = 1 - goto l113 -l113: - goto l114 -l114: - if _v300 != 0 { - goto l115 - } - goto l156 -l156: - _v304 = 0 - goto l118 -l115: - _v301 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v303 = crt.Bool32(int32(_v301) != int32(59)) - goto l116 -l116: - if _v303 != 0 { - goto l117 - } - goto l157 -l157: - _v304 = 0 - goto l118 -l117: - _v304 = 1 - goto l118 -l118: - if _v304 != 0 { - goto l119 - } - goto l121 -l119: - goto l120 -l120: - _v305 = int64(_v3 + int64(0)) - _v306 = *(*int32)(unsafe.Pointer(uintptr(_v305))) - _v307 = int32(int32(_v306) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v305))) = _v307 - goto l95 -l121: - goto l122 -l122: - goto l123 -l123: - goto l124 -l124: - _v308 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - return _v308 -} - -var s__74 = [12]byte{0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68} - -func s_extractToken(t *crt.TLS, _v1 int64, _v2 int32, _v3 int64, _v4 int32) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v16 int64 // %t10 - var _v17 int64 // %t11 - var _v20 int64 // %t14 - var _v21 int32 // %t15 - var _v23 int32 // %t17 - var _v24 int32 // %t18 - var _v27 int32 // %t21 - var _v28 int32 // %t22 - var _v29 int32 // %t23 - var _v30 int32 // %t24 - var _v31 int64 // %t25 - var _v32 int64 // %t26 - var _v34 int64 // %t28 - var _v35 int32 // %t29 - var _v36 int32 // %t30 - var _v37 int64 // %t31 - var _v38 int64 // %t32 - var _v39 int64 // %t33 - var _v40 int64 // %t34 - var _v41 int64 // %t35 - var _v42 int32 // %t36 - var _v43 int32 // %t37 - var _v10 int32 // %t4 - var _v47 int32 // %t41 - var _v48 int32 // %t42 - var _v49 int32 // %t43 - var _v50 int32 // %t44 - var _v51 int64 // %t45 - var _v52 int64 // %t46 - var _v54 int64 // %t48 - var _v55 int32 // %t49 - var _v56 int32 // %t50 - var _v57 int64 // %t51 - var _v58 int64 // %t52 - var _v59 int64 // %t53 - var _v60 int64 // %t54 - var _v61 int64 // %t55 - var _v62 int32 // %t56 - var _v63 int32 // %t57 - var _v66 int32 // %t60 - var _v67 int64 // %t61 - var _v68 int64 // %t62 - var _v69 int64 // %t63 - var _v70 int64 // %t64 - var _v71 int32 // %t65 - var _v5 = int64(bp + 0) // %v3 - var _v7 = int64(bp + 8) // %v5 - *(*int64)(unsafe.Pointer(uintptr(_v5))) = _v3 - _v10 = crt.Bool32(int32(_v2) <= int32(0)) - if _v10 != 0 { - goto l2 - } - goto l4 -l2: - _v16 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v17 = int64(_v16 + int64(0)) - *(*int8)(unsafe.Pointer(uintptr(_v17))) = 0 - return 0 -l4: - _v20 = int64(_v7 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v20))) = 0 - goto l5 -l5: - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v23 = crt.Bool32(int32(_v21) < int32(_v2)) - goto l6 -l6: - if _v23 != 0 { - goto l7 - } - goto l24 -l24: - _v29 = 0 - goto l10 -l7: - _v24 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v27 = int32(int32(_v4) - int32(1)) - _v28 = crt.Bool32(int32(_v24) < int32(_v27)) - goto l8 -l8: - if _v28 != 0 { - goto l9 - } - goto l25 -l25: - _v29 = 0 - goto l10 -l9: - _v29 = 1 - goto l10 -l10: - goto l11 -l11: - if _v29 != 0 { - goto l12 - } - goto l26 -l26: - _v49 = 0 - goto l18 -l12: - _v30 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v31 = int64(int32(_v30)) - _v32 = int64(_v31 * int64(1)) - _v34 = int64(_v1 + _v32) - _v35 = int32(*(*int8)(unsafe.Pointer(uintptr(_v34)))) - _v36 = int32(int32(uint8(_v35))) - _v37 = int64(int32(_v36)) - _v38 = int64(_v37 * int64(2)) - _v39 = crt.X__ctype_b_loc(t) - _v40 = *(*int64)(unsafe.Pointer(uintptr(_v39))) - _v41 = int64(_v40 + _v38) - _v42 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v41)))) - _v43 = int32(uint16(_v42)) - _v47 = int32(int32(_v43) & int32(8192)) - goto l13 -l13: - if _v47 != 0 { - goto l14 - } - goto l27 -l27: - _v48 = 1 - goto l15 -l14: - _v48 = 0 - goto l15 -l15: - goto l16 -l16: - if _v48 != 0 { - goto l17 - } - goto l28 -l28: - _v49 = 0 - goto l18 -l17: - _v49 = 1 - goto l18 -l18: - if _v49 != 0 { - goto l19 - } - goto l21 -l19: - _v50 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v51 = int64(int32(_v50)) - _v52 = int64(_v51 * int64(1)) - _v54 = int64(_v1 + _v52) - _v55 = int32(*(*int8)(unsafe.Pointer(uintptr(_v54)))) - _v56 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v57 = int64(int32(_v56)) - _v58 = int64(_v57 * int64(1)) - _v59 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v60 = int64(_v59 + _v58) - *(*int8)(unsafe.Pointer(uintptr(_v60))) = int8(_v55) - goto l20 -l20: - _v61 = int64(_v7 + int64(0)) - _v62 = *(*int32)(unsafe.Pointer(uintptr(_v61))) - _v63 = int32(int32(_v62) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v61))) = _v63 - goto l5 -l21: - _v66 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v67 = int64(int32(_v66)) - _v68 = int64(_v67 * int64(1)) - _v69 = *(*int64)(unsafe.Pointer(uintptr(_v5))) - _v70 = int64(_v69 + _v68) - *(*int8)(unsafe.Pointer(uintptr(_v70))) = 0 - _v71 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - return _v71 -} - -var s__75 = [13]byte{0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e} - -func s_findEnd(t *crt.TLS, _v1 int64, _v2 int64) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v13 int64 // %t10 - var _v14 int64 // %t11 - var _v18 int32 // %t15 - var _v19 int32 // %t16 - var _v21 int32 // %t18 - var _v22 int64 // %t19 - var _v5 int32 // %t2 - var _v23 int64 // %t20 - var _v25 int64 // %t22 - var _v26 int32 // %t23 - var _v27 int32 // %t24 - var _v28 int64 // %t25 - var _v29 int64 // %t26 - var _v30 int64 // %t27 - var _v31 int64 // %t28 - var _v32 int64 // %t29 - var _v6 int64 // %t3 - var _v33 int32 // %t30 - var _v34 int32 // %t31 - var _v38 int32 // %t35 - var _v39 int32 // %t36 - var _v40 int32 // %t37 - var _v41 int32 // %t38 - var _v7 int64 // %t4 - var _v43 int32 // %t40 - var _v44 int64 // %t41 - var _v45 int64 // %t42 - var _v47 int32 // %t44 - var _v48 int64 // %t45 - var _v49 int32 // %t46 - var _v50 int32 // %t47 - var _v51 int32 // %t48 - var _v9 int64 // %t6 - var _v10 int32 // %t7 - var _v12 int32 // %t9 - var _v3 = int64(bp + 0) // %v3 - *(*int32)(unsafe.Pointer(uintptr(_v3))) = 0 - goto l2 -l2: - _v5 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v6 = int64(int32(_v5)) - _v7 = int64(_v6 * int64(1)) - _v9 = int64(_v1 + _v7) - _v10 = int32(*(*int8)(unsafe.Pointer(uintptr(_v9)))) - goto l3 -l3: - if _v10 != 0 { - goto l4 - } - goto l20 -l20: - _v41 = 0 - goto l15 -l4: - _v12 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v13 = int64(int32(_v12)) - _v14 = int64(_v1 + _v13) - _v18 = crt.Xstrncmp(t, _v14, int64(uintptr(unsafe.Pointer(&s__77))), int64(5)) - goto l5 -l5: - if _v18 != 0 { - goto l21 - } - goto l6 -l21: - _v40 = 1 - goto l12 -l6: - _v19 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v21 = int32(int32(_v19) + int32(5)) - _v22 = int64(int32(_v21)) - _v23 = int64(_v22 * int64(1)) - _v25 = int64(_v1 + _v23) - _v26 = int32(*(*int8)(unsafe.Pointer(uintptr(_v25)))) - _v27 = int32(int32(uint8(_v26))) - _v28 = int64(int32(_v27)) - _v29 = int64(_v28 * int64(2)) - _v30 = crt.X__ctype_b_loc(t) - _v31 = *(*int64)(unsafe.Pointer(uintptr(_v30))) - _v32 = int64(_v31 + _v29) - _v33 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v32)))) - _v34 = int32(uint16(_v33)) - _v38 = int32(int32(_v34) & int32(8192)) - goto l7 -l7: - if _v38 != 0 { - goto l8 - } - goto l22 -l22: - _v39 = 1 - goto l9 -l8: - _v39 = 0 - goto l9 -l9: - goto l10 -l10: - if _v39 != 0 { - goto l23 - } - goto l11 -l23: - _v40 = 1 - goto l12 -l11: - _v40 = 0 - goto l12 -l12: - goto l13 -l13: - if _v40 != 0 { - goto l14 - } - goto l24 -l24: - _v41 = 0 - goto l15 -l14: - _v41 = 1 - goto l15 -l15: - if _v41 != 0 { - goto l16 - } - goto l17 -l16: - _v43 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v44 = int64(int32(_v43)) - _v45 = int64(_v1 + _v44) - _v47 = s_tokenLength(t, _v45, _v2) - _v48 = int64(_v3 + int64(0)) - _v49 = *(*int32)(unsafe.Pointer(uintptr(_v48))) - _v50 = int32(int32(_v49) + int32(_v47)) - *(*int32)(unsafe.Pointer(uintptr(_v48))) = _v50 - goto l2 -l17: - _v51 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - return _v51 -} - -var s__76 = [8]byte{0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x64} - -var s__77 = [6]byte{0x2d, 0x2d, 0x65, 0x6e, 0x64} - -func s_findEndif(t *crt.TLS, _v1 int64, _v2 int32, _v3 int64) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v16 int64 // %t10 - var _v106 int32 // %t100 - var _v107 int64 // %t101 - var _v108 int64 // %t102 - var _v109 int64 // %t103 - var _v110 int64 // %t104 - var _v111 int64 // %t105 - var _v112 int32 // %t106 - var _v113 int32 // %t107 - var _v17 int64 // %t11 - var _v117 int32 // %t111 - var _v118 int32 // %t112 - var _v120 int32 // %t114 - var _v121 int64 // %t115 - var _v122 int64 // %t116 - var _v123 int32 // %t117 - var _v124 int64 // %t118 - var _v125 int64 // %t119 - var _v128 int32 // %t122 - var _v129 int32 // %t123 - var _v130 int32 // %t124 - var _v131 int32 // %t125 - var _v132 int64 // %t126 - var _v133 int32 // %t127 - var _v134 int32 // %t128 - var _v135 int32 // %t129 - var _v19 int32 // %t13 - var _v136 int64 // %t130 - var _v137 int32 // %t131 - var _v138 int32 // %t132 - var _v139 int32 // %t133 - var _v21 int32 // %t15 - var _v22 int64 // %t16 - var _v23 int64 // %t17 - var _v8 int32 // %t2 - var _v27 int32 // %t21 - var _v29 int32 // %t23 - var _v30 int32 // %t24 - var _v32 int32 // %t26 - var _v33 int64 // %t27 - var _v34 int64 // %t28 - var _v9 int64 // %t3 - var _v36 int64 // %t30 - var _v37 int32 // %t31 - var _v38 int32 // %t32 - var _v39 int64 // %t33 - var _v40 int64 // %t34 - var _v41 int64 // %t35 - var _v42 int64 // %t36 - var _v43 int64 // %t37 - var _v44 int32 // %t38 - var _v45 int32 // %t39 - var _v10 int64 // %t4 - var _v49 int32 // %t43 - var _v50 int32 // %t44 - var _v53 int32 // %t47 - var _v54 int64 // %t48 - var _v55 int64 // %t49 - var _v59 int32 // %t53 - var _v61 int32 // %t55 - var _v62 int32 // %t56 - var _v63 int32 // %t57 - var _v65 int32 // %t59 - var _v12 int64 // %t6 - var _v66 int64 // %t60 - var _v67 int64 // %t61 - var _v69 int64 // %t63 - var _v70 int32 // %t64 - var _v71 int32 // %t65 - var _v72 int64 // %t66 - var _v73 int64 // %t67 - var _v74 int64 // %t68 - var _v75 int64 // %t69 - var _v13 int32 // %t7 - var _v76 int64 // %t70 - var _v77 int32 // %t71 - var _v78 int32 // %t72 - var _v82 int32 // %t76 - var _v83 int32 // %t77 - var _v84 int32 // %t78 - var _v85 int32 // %t79 - var _v86 int32 // %t80 - var _v87 int32 // %t81 - var _v89 int32 // %t83 - var _v90 int64 // %t84 - var _v91 int64 // %t85 - var _v95 int32 // %t89 - var _v15 int32 // %t9 - var _v97 int32 // %t91 - var _v98 int32 // %t92 - var _v100 int32 // %t94 - var _v101 int64 // %t95 - var _v102 int64 // %t96 - var _v104 int64 // %t98 - var _v105 int32 // %t99 - var _v4 = int64(bp + 0) // %v4 - var _v5 = int64(bp + 4) // %v5 - var _v6 = int64(bp + 8) // %v6 - *(*int32)(unsafe.Pointer(uintptr(_v4))) = 0 - goto l2 -l2: - _v8 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v9 = int64(int32(_v8)) - _v10 = int64(_v9 * int64(1)) - _v12 = int64(_v1 + _v10) - _v13 = int32(*(*int8)(unsafe.Pointer(uintptr(_v12)))) - if _v13 != 0 { - goto l3 - } - goto l35 -l3: - _v15 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v16 = int64(int32(_v15)) - _v17 = int64(_v1 + _v16) - _v19 = s_tokenLength(t, _v17, _v3) - *(*int32)(unsafe.Pointer(uintptr(_v5))) = _v19 - _v21 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v22 = int64(int32(_v21)) - _v23 = int64(_v1 + _v22) - _v27 = crt.Xstrncmp(t, _v23, int64(uintptr(unsafe.Pointer(&s__79))), int64(7)) - _v29 = crt.Bool32(int32(_v27) == int32(0)) - goto l4 -l4: - if _v29 != 0 { - goto l5 - } - goto l38 -l38: - _v50 = 0 - goto l8 -l5: - _v30 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v32 = int32(int32(_v30) + int32(7)) - _v33 = int64(int32(_v32)) - _v34 = int64(_v33 * int64(1)) - _v36 = int64(_v1 + _v34) - _v37 = int32(*(*int8)(unsafe.Pointer(uintptr(_v36)))) - _v38 = int32(int32(uint8(_v37))) - _v39 = int64(int32(_v38)) - _v40 = int64(_v39 * int64(2)) - _v41 = crt.X__ctype_b_loc(t) - _v42 = *(*int64)(unsafe.Pointer(uintptr(_v41))) - _v43 = int64(_v42 + _v40) - _v44 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v43)))) - _v45 = int32(uint16(_v44)) - _v49 = int32(int32(_v45) & int32(8192)) - goto l6 -l6: - if _v49 != 0 { - goto l7 - } - goto l39 -l39: - _v50 = 0 - goto l8 -l7: - _v50 = 1 - goto l8 -l8: - goto l9 -l9: - if _v50 != 0 { - goto l40 - } - goto l10 -l40: - _v84 = 1 - goto l23 -l10: - goto l11 -l11: - if _v2 != 0 { - goto l12 - } - goto l41 -l41: - _v62 = 0 - goto l15 -l12: - _v53 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v54 = int64(int32(_v53)) - _v55 = int64(_v1 + _v54) - _v59 = crt.Xstrncmp(t, _v55, int64(uintptr(unsafe.Pointer(&s__80))), int64(6)) - _v61 = crt.Bool32(int32(_v59) == int32(0)) - goto l13 -l13: - if _v61 != 0 { - goto l14 - } - goto l42 -l42: - _v62 = 0 - goto l15 -l14: - _v62 = 1 - goto l15 -l15: - goto l16 -l16: - if _v62 != 0 { - goto l17 - } - goto l43 -l43: - _v83 = 0 - goto l20 -l17: - _v63 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v65 = int32(int32(_v63) + int32(6)) - _v66 = int64(int32(_v65)) - _v67 = int64(_v66 * int64(1)) - _v69 = int64(_v1 + _v67) - _v70 = int32(*(*int8)(unsafe.Pointer(uintptr(_v69)))) - _v71 = int32(int32(uint8(_v70))) - _v72 = int64(int32(_v71)) - _v73 = int64(_v72 * int64(2)) - _v74 = crt.X__ctype_b_loc(t) - _v75 = *(*int64)(unsafe.Pointer(uintptr(_v74))) - _v76 = int64(_v75 + _v73) - _v77 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v76)))) - _v78 = int32(uint16(_v77)) - _v82 = int32(int32(_v78) & int32(8192)) - goto l18 -l18: - if _v82 != 0 { - goto l19 - } - goto l44 -l44: - _v83 = 0 - goto l20 -l19: - _v83 = 1 - goto l20 -l20: - goto l21 -l21: - if _v83 != 0 { - goto l45 - } - goto l22 -l45: - _v84 = 1 - goto l23 -l22: - _v84 = 0 - goto l23 -l23: - if _v84 != 0 { - goto l24 - } - goto l26 -l24: - _v85 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v86 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v87 = int32(int32(_v85) + int32(_v86)) - return _v87 -l26: - _v89 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v90 = int64(int32(_v89)) - _v91 = int64(_v1 + _v90) - _v95 = crt.Xstrncmp(t, _v91, int64(uintptr(unsafe.Pointer(&s__81))), int64(4)) - _v97 = crt.Bool32(int32(_v95) == int32(0)) - goto l27 -l27: - if _v97 != 0 { - goto l28 - } - goto l46 -l46: - _v118 = 0 - goto l31 -l28: - _v98 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v100 = int32(int32(_v98) + int32(4)) - _v101 = int64(int32(_v100)) - _v102 = int64(_v101 * int64(1)) - _v104 = int64(_v1 + _v102) - _v105 = int32(*(*int8)(unsafe.Pointer(uintptr(_v104)))) - _v106 = int32(int32(uint8(_v105))) - _v107 = int64(int32(_v106)) - _v108 = int64(_v107 * int64(2)) - _v109 = crt.X__ctype_b_loc(t) - _v110 = *(*int64)(unsafe.Pointer(uintptr(_v109))) - _v111 = int64(_v110 + _v108) - _v112 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v111)))) - _v113 = int32(uint16(_v112)) - _v117 = int32(int32(_v113) & int32(8192)) - goto l29 -l29: - if _v117 != 0 { - goto l30 - } - goto l47 -l47: - _v118 = 0 - goto l31 -l30: - _v118 = 1 - goto l31 -l31: - if _v118 != 0 { - goto l32 - } - goto l33 -l32: - _v120 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v121 = int64(int32(_v120)) - _v122 = int64(_v1 + _v121) - _v123 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v124 = int64(int32(_v123)) - _v125 = int64(_v122 + _v124) - _v128 = s_findEndif(t, _v125, 0, _v3) - *(*int32)(unsafe.Pointer(uintptr(_v6))) = _v128 - _v129 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v130 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v131 = int32(int32(_v129) + int32(_v130)) - _v132 = int64(_v4 + int64(0)) - _v133 = *(*int32)(unsafe.Pointer(uintptr(_v132))) - _v134 = int32(int32(_v133) + int32(_v131)) - *(*int32)(unsafe.Pointer(uintptr(_v132))) = _v134 - goto l34 -l33: - _v135 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v136 = int64(_v4 + int64(0)) - _v137 = *(*int32)(unsafe.Pointer(uintptr(_v136))) - _v138 = int32(int32(_v137) + int32(_v135)) - *(*int32)(unsafe.Pointer(uintptr(_v136))) = _v138 - goto l34 -l34: - goto l2 -l35: - _v139 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - return _v139 -} +// Clock support in threads must be also checked at runtime. -var s__78 = [10]byte{0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x64, 0x69, 0x66} - -var s__79 = [8]byte{0x2d, 0x2d, 0x65, 0x6e, 0x64, 0x69, 0x66} - -var s__80 = [7]byte{0x2d, 0x2d, 0x65, 0x6c, 0x73, 0x65} - -var s__81 = [5]byte{0x2d, 0x2d, 0x69, 0x66} - -func s_waitForClient(t *crt.TLS, _v1 int32, _v2 int32, _v3 int64) { - bp := t.Alloc(64) - defer t.Free(64) - var _v18 int64 // %t11 - var _v19 int64 // %t12 - var _v23 int64 // %t16 - var _v24 int32 // %t17 - var _v25 int64 // %t18 - var _v26 int32 // %t19 - var _v28 int32 // %t21 - var _v29 int32 // %t22 - var _v31 int32 // %t24 - var _v32 int32 // %t25 - var _v33 int32 // %t26 - var _v35 int32 // %t28 - var _v36 int32 // %t29 - var _v37 int64 // %t30 - var _v42 int64 // %t35 - var _v43 int32 // %t36 - var _v44 int32 // %t37 - var _v45 int64 // %t38 - var _v50 int32 // %t43 - var _v52 int32 // %t45 - var _v53 int64 // %t46 - var _v56 int32 // %t49 - var _v12 int32 // %t5 - var _v58 int64 // %t51 - var _v61 int32 // %t54 - var _v63 int64 // %t56 - var _v66 int64 // %t59 - var _v15 int64 // %t8 - var _v16 int64 // %t9 - var _v4 = int64(bp + 32) // %v2 - var _v6 = int64(bp + 40) // %v3 - var _v8 = int64(bp + 48) // %v4 - var _v9 = int64(bp + 56) // %v5 - *(*int32)(unsafe.Pointer(uintptr(_v4))) = _v2 - *(*int64)(unsafe.Pointer(uintptr(_v6))) = _v3 - _v12 = crt.Bool32(int32(_v1) > int32(0)) - if _v12 != 0 { - goto l2 - } - goto l3 -l2: - *(*int32)(unsafe.Pointer(bp + 0)) = _v1 - - _v15 = s_prepareSql(t, int64(uintptr(unsafe.Pointer(&s__83))), bp+0) - _v16 = int64(_v8 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v16))) = _v15 - goto l4 -l3: - - _v18 = s_prepareSql(t, int64(uintptr(unsafe.Pointer(&s__84))), 0) - _v19 = int64(_v8 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v19))) = _v18 - goto l4 -l4: - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) = 0 - goto l5 -l5: - _v23 = *(*int64)(unsafe.Pointer(uintptr(_v8))) - _v24 = Xsqlite3_step(t, _v23) - _v25 = int64(_v9 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v25))) = _v24 - _v26 = *(*int32)(unsafe.Pointer(uintptr(_v25))) - _v28 = crt.Bool32(int32(_v26) == int32(5)) - goto l6 -l6: - if _v28 != 0 { - goto l26 - } - goto l7 -l26: - _v32 = 1 - goto l10 -l7: - _v29 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v31 = crt.Bool32(int32(_v29) == int32(100)) - goto l8 -l8: - if _v31 != 0 { - goto l27 - } - goto l9 -l27: - _v32 = 1 - goto l10 -l9: - _v32 = 0 - goto l10 -l10: - goto l11 -l11: - if _v32 != 0 { - goto l12 - } - goto l28 -l28: - _v36 = 0 - goto l15 -l12: - _v33 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v35 = crt.Bool32(int32(_v33) > int32(0)) - goto l13 -l13: - if _v35 != 0 { - goto l14 - } - goto l29 -l29: - _v36 = 0 - goto l15 -l14: - _v36 = 1 - goto l15 -l15: - if _v36 != 0 { - goto l16 - } - goto l17 -l16: - _v37 = *(*int64)(unsafe.Pointer(uintptr(_v8))) - _ = Xsqlite3_reset(t, _v37) - _ = Xsqlite3_sleep(t, 50) - _v42 = int64(_v4 + int64(0)) - _v43 = *(*int32)(unsafe.Pointer(uintptr(_v42))) - _v44 = int32(int32(_v43) - int32(50)) - *(*int32)(unsafe.Pointer(uintptr(_v42))) = _v44 - goto l5 -l17: - _v45 = *(*int64)(unsafe.Pointer(uintptr(_v8))) - _ = Xsqlite3_finalize(t, _v45) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) = 10000 - _v50 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v52 = crt.Bool32(int32(_v50) != int32(101)) - if _v52 != 0 { - goto l18 - } - goto l24 -l18: - _v53 = *(*int64)(unsafe.Pointer(uintptr(_v6))) - _v56 = crt.Bool32(_v53 == int64(0)) - if _v56 != 0 { - goto l19 - } - goto l20 -l19: - _v58 = int64(_v6 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v58))) = int64(uintptr(unsafe.Pointer(&s__85))) - goto l20 -l20: - _v61 = crt.Bool32(int32(_v1) > int32(0)) - if _v61 != 0 { - goto l21 - } - goto l22 -l21: - _v63 = *(*int64)(unsafe.Pointer(uintptr(_v6))) - *(*int64)(unsafe.Pointer(bp + 8)) = _v63 - - *(*int32)(unsafe.Pointer(bp + 16)) = _v1 - s_errorMessage(t, int64(uintptr(unsafe.Pointer(&s__86))), bp+8) - goto l23 -l22: - _v66 = *(*int64)(unsafe.Pointer(uintptr(_v6))) - *(*int64)(unsafe.Pointer(bp + 24)) = _v66 - s_errorMessage(t, int64(uintptr(unsafe.Pointer(&s__87))), bp+24) - goto l23 -l23: - goto l24 -l24: - goto l25 -l25: -} +// GNU libc provides regular expression handling. -var s__82 = [14]byte{0x77, 0x61, 0x69, 0x74, 0x46, 0x6f, 0x72, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74} +// Reader/Writer locks are available. -var s__83 = [96]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x31, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x74, 0x61, - 0x73, 0x6b, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x3d, - 0x25, 0x64, 0x20, 0x20, 0x20, 0x41, 0x4e, 0x44, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, - 0x49, 0x4e, 0x20, 0x28, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x69, 0x64, 0x20, 0x46, 0x52, - 0x4f, 0x4d, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x20, 0x41, 0x4e, 0x44, 0x20, - 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x49, 0x53, 0x20, 0x4e, 0x55, 0x4c, 0x4c, -} +// We have a POSIX shell. -var s__84 = [81]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x31, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x74, 0x61, - 0x73, 0x6b, 0x20, 0x57, 0x48, 0x45, 0x52, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, - 0x49, 0x4e, 0x20, 0x28, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x69, 0x64, 0x20, 0x46, 0x52, - 0x4f, 0x4d, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x20, 0x20, 0x41, 0x4e, 0x44, - 0x20, 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x49, 0x53, 0x20, 0x4e, 0x55, 0x4c, 0x4c, -} +// We support the Timeouts option. -var s__85 [1]byte +// We support spinlocks. -var s__86 = [32]byte{ - 0x25, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x20, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, - 0x67, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x25, 0x64, -} +// The `spawn' function family is supported. -var s__87 = [34]byte{ - 0x25, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x20, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, - 0x67, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x73, -} +// We have POSIX timers. -func s_filenameTail(t *crt.TLS, _v1 int64) int64 { - bp := t.Alloc(16) - defer t.Free(16) - var _v13 int32 // %t10 - var _v14 int32 // %t11 - var _v15 int64 // %t12 - var _v16 int64 // %t13 - var _v18 int64 // %t15 - var _v19 int32 // %t16 - var _v20 int32 // %t17 - var _v22 int32 // %t19 - var _v5 int64 // %t2 - var _v23 int32 // %t20 - var _v25 int32 // %t22 - var _v26 int64 // %t23 - var _v27 int64 // %t24 - var _v28 int32 // %t25 - var _v29 int32 // %t26 - var _v31 int32 // %t28 - var _v32 int64 // %t29 - var _v6 int32 // %t3 - var _v33 int64 // %t30 - var _v7 int64 // %t4 - var _v8 int32 // %t5 - var _v9 int64 // %t6 - var _v10 int64 // %t7 - var _v12 int64 // %t9 - var _v2 = int64(bp + 0) // %v2 - var _v3 = int64(bp + 4) // %v3 - _v5 = int64(_v3 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v5))) = 0 - _v6 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v7 = int64(_v2 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v7))) = _v6 - goto l2 -l2: - _v8 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v9 = int64(int32(_v8)) - _v10 = int64(_v9 * int64(1)) - _v12 = int64(_v1 + _v10) - _v13 = int32(*(*int8)(unsafe.Pointer(uintptr(_v12)))) - if _v13 != 0 { - goto l3 - } - goto l7 -l3: - _v14 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v15 = int64(int32(_v14)) - _v16 = int64(_v15 * int64(1)) - _v18 = int64(_v1 + _v16) - _v19 = int32(*(*int8)(unsafe.Pointer(uintptr(_v18)))) - _v20 = int32(int8(_v19)) - _v22 = crt.Bool32(int32(_v20) == int32(47)) - if _v22 != 0 { - goto l4 - } - goto l5 -l4: - _v23 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v25 = int32(int32(_v23) + int32(1)) - _v26 = int64(_v3 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v26))) = _v25 - goto l5 -l5: - goto l6 -l6: - _v27 = int64(_v2 + int64(0)) - _v28 = *(*int32)(unsafe.Pointer(uintptr(_v27))) - _v29 = int32(int32(_v28) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v27))) = _v29 - goto l2 -l7: - _v31 = *(*int32)(unsafe.Pointer(uintptr(_v3))) - _v32 = int64(int32(_v31)) - _v33 = int64(_v1 + _v32) - return _v33 -} +// The barrier functions are available. -var s__88 = [13]byte{0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x54, 0x61, 0x69, 0x6c} - -func s_booleanValue(t *crt.TLS, _v1 int64) int32 { - bp := t.Alloc(16) - defer t.Free(16) - var _v12 int64 // %t10 - var _v14 int64 // %t12 - var _v15 int32 // %t13 - var _v16 int32 // %t14 - var _v18 int32 // %t16 - var _v19 int32 // %t17 - var _v20 int64 // %t18 - var _v21 int64 // %t19 - var _v23 int64 // %t21 - var _v24 int32 // %t22 - var _v25 int32 // %t23 - var _v27 int32 // %t25 - var _v28 int32 // %t26 - var _v29 int64 // %t27 - var _v30 int32 // %t28 - var _v31 int32 // %t29 - var _v32 int32 // %t30 - var _v34 int32 // %t32 - var _v35 int32 // %t33 - var _v36 int64 // %t34 - var _v37 int64 // %t35 - var _v39 int64 // %t37 - var _v40 int32 // %t38 - var _v41 int32 // %t39 - var _v6 int32 // %t4 - var _v43 int32 // %t41 - var _v44 int32 // %t42 - var _v46 int32 // %t44 - var _v49 int32 // %t47 - var _v51 int32 // %t49 - var _v54 int32 // %t52 - var _v56 int32 // %t54 - var _v57 int32 // %t55 - var _v61 int32 // %t59 - var _v63 int32 // %t61 - var _v66 int32 // %t64 - var _v68 int32 // %t66 - var _v69 int32 // %t67 - var _v9 int64 // %t7 - var _v10 int32 // %t8 - var _v11 int64 // %t9 - var _v2 = int64(bp + 8) // %v2 - _v6 = crt.Bool32(_v1 == int64(0)) - if _v6 != 0 { - goto l2 - } - goto l4 -l2: - return 0 -l4: - _v9 = int64(_v2 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v9))) = 0 - goto l5 -l5: - _v10 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v11 = int64(int32(_v10)) - _v12 = int64(_v11 * int64(1)) - _v14 = int64(_v1 + _v12) - _v15 = int32(*(*int8)(unsafe.Pointer(uintptr(_v14)))) - _v16 = int32(int8(_v15)) - _v18 = crt.Bool32(int32(_v16) >= int32(48)) - goto l6 -l6: - if _v18 != 0 { - goto l7 - } - goto l40 -l40: - _v28 = 0 - goto l10 -l7: - _v19 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v20 = int64(int32(_v19)) - _v21 = int64(_v20 * int64(1)) - _v23 = int64(_v1 + _v21) - _v24 = int32(*(*int8)(unsafe.Pointer(uintptr(_v23)))) - _v25 = int32(int8(_v24)) - _v27 = crt.Bool32(int32(_v25) <= int32(57)) - goto l8 -l8: - if _v27 != 0 { - goto l9 - } - goto l41 -l41: - _v28 = 0 - goto l10 -l9: - _v28 = 1 - goto l10 -l10: - if _v28 != 0 { - goto l11 - } - goto l13 -l11: - goto l12 -l12: - _v29 = int64(_v2 + int64(0)) - _v30 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v31 = int32(int32(_v30) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v29))) = _v31 - goto l5 -l13: - _v32 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v34 = crt.Bool32(int32(_v32) > int32(0)) - goto l14 -l14: - if _v34 != 0 { - goto l15 - } - goto l42 -l42: - _v44 = 0 - goto l18 -l15: - _v35 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v36 = int64(int32(_v35)) - _v37 = int64(_v36 * int64(1)) - _v39 = int64(_v1 + _v37) - _v40 = int32(*(*int8)(unsafe.Pointer(uintptr(_v39)))) - _v41 = int32(int8(_v40)) - _v43 = crt.Bool32(int32(_v41) == int32(0)) - goto l16 -l16: - if _v43 != 0 { - goto l17 - } - goto l43 -l43: - _v44 = 0 - goto l18 -l17: - _v44 = 1 - goto l18 -l18: - if _v44 != 0 { - goto l19 - } - goto l21 -l19: - _v46 = crt.Xatoi(t, _v1) - return _v46 -l21: - _v49 = Xsqlite3_stricmp(t, _v1, int64(uintptr(unsafe.Pointer(&s__90)))) - _v51 = crt.Bool32(int32(_v49) == int32(0)) - goto l22 -l22: - if _v51 != 0 { - goto l44 - } - goto l23 -l44: - _v57 = 1 - goto l26 -l23: - _v54 = Xsqlite3_stricmp(t, _v1, int64(uintptr(unsafe.Pointer(&s__91)))) - _v56 = crt.Bool32(int32(_v54) == int32(0)) - goto l24 -l24: - if _v56 != 0 { - goto l45 - } - goto l25 -l45: - _v57 = 1 - goto l26 -l25: - _v57 = 0 - goto l26 -l26: - if _v57 != 0 { - goto l27 - } - goto l29 -l27: - return 1 -l29: - _v61 = Xsqlite3_stricmp(t, _v1, int64(uintptr(unsafe.Pointer(&s__92)))) - _v63 = crt.Bool32(int32(_v61) == int32(0)) - goto l30 -l30: - if _v63 != 0 { - goto l46 - } - goto l31 -l46: - _v69 = 1 - goto l34 -l31: - _v66 = Xsqlite3_stricmp(t, _v1, int64(uintptr(unsafe.Pointer(&s__93)))) - _v68 = crt.Bool32(int32(_v66) == int32(0)) - goto l32 -l32: - if _v68 != 0 { - goto l47 - } - goto l33 -l47: - _v69 = 1 - goto l34 -l33: - _v69 = 0 - goto l34 -l34: - if _v69 != 0 { - goto l35 - } - goto l37 -l35: - return 0 -l37: - *(*int64)(unsafe.Pointer(bp + 0)) = _v1 - s_errorMessage(t, int64(uintptr(unsafe.Pointer(&s__94))), bp+0) - return 0 -} +// POSIX message queues are available. -var s__89 = [13]byte{0x62, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65} +// Thread process-shared synchronization is supported. -var s__90 = [3]byte{0x6f, 0x6e} +// The monotonic clock might be available. -var s__91 = [4]byte{0x79, 0x65, 0x73} +// The clock selection interfaces are available. -var s__92 = [4]byte{0x6f, 0x66, 0x66} +// Advisory information interfaces are available. -var s__93 = [3]byte{0x6e, 0x6f} +// IPv6 support is available. -var s__94 = [22]byte{ - 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x62, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x3a, - 0x20, 0x5b, 0x25, 0x73, 0x5d, -} +// Raw socket support is available. -func s_test_breakpoint(t *crt.TLS) { - var _v2 int32 // %t2 - var _v3 int32 // %t3 - _v2 = *(*int32)(unsafe.Pointer(&s__96)) - _v3 = int32(int32(_v2) + int32(1)) - *(*int32)(unsafe.Pointer(&s__96)) = _v3 - goto l2 -l2: -} +// We have at least one terminal. -var s__95 = [16]byte{0x74, 0x65, 0x73, 0x74, 0x5f, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74} - -var s__96 [4]byte - -func s_runScript(t *crt.TLS, _v1 int32, _v2 int32, _v3 int64, _v4 int64) { - bp := t.Alloc(1792) - defer t.Free(1792) - var _v50 int32 // %t10 - var _v140 int32 // %t100 - var _v141 int32 // %t101 - var _v142 int64 // %t102 - var _v143 int32 // %t103 - var _v144 int32 // %t104 - var _v145 int32 // %t105 - var _v146 int32 // %t106 - var _v147 int32 // %t107 - var _v149 int32 // %t109 - var _v51 int64 // %t11 - var _v150 int32 // %t110 - var _v151 int32 // %t111 - var _v153 int32 // %t113 - var _v154 int64 // %t114 - var _v155 int64 // %t115 - var _v156 int64 // %t116 - var _v157 int64 // %t117 - var _v158 int64 // %t118 - var _v52 int64 // %t12 - var _v160 int64 // %t120 - var _v161 int32 // %t121 - var _v162 int32 // %t122 - var _v163 int32 // %t123 - var _v164 int64 // %t124 - var _v167 int32 // %t127 - var _v169 int32 // %t129 - var _v171 int32 // %t131 - var _v173 int32 // %t133 - var _v174 int64 // %t134 - var _v175 int64 // %t135 - var _v177 int32 // %t137 - var _v178 int64 // %t138 - var _v179 int64 // %t139 - var _v54 int64 // %t14 - var _v182 int64 // %t142 - var _v183 int32 // %t143 - var _v185 int32 // %t145 - var _v189 int32 // %t149 - var _v55 int32 // %t15 - var _v190 int64 // %t150 - var _v192 int64 // %t152 - var _v193 int32 // %t153 - var _v194 int32 // %t154 - var _v196 int32 // %t156 - var _v197 int32 // %t157 - var _v198 int32 // %t158 - var _v56 int32 // %t16 - var _v200 int32 // %t160 - var _v201 int32 // %t161 - var _v202 int32 // %t162 - var _v203 int32 // %t163 - var _v205 int32 // %t165 - var _v206 int32 // %t166 - var _v207 int32 // %t167 - var _v209 int32 // %t169 - var _v57 int64 // %t17 - var _v210 int32 // %t170 - var _v211 int32 // %t171 - var _v212 int64 // %t172 - var _v213 int64 // %t173 - var _v215 int64 // %t175 - var _v216 int32 // %t176 - var _v217 int32 // %t177 - var _v218 int64 // %t178 - var _v219 int64 // %t179 - var _v58 int32 // %t18 - var _v220 int64 // %t180 - var _v221 int64 // %t181 - var _v222 int64 // %t182 - var _v223 int32 // %t183 - var _v224 int32 // %t184 - var _v228 int32 // %t188 - var _v229 int32 // %t189 - var _v230 int64 // %t190 - var _v231 int32 // %t191 - var _v232 int32 // %t192 - var _v233 int32 // %t193 - var _v234 int32 // %t194 - var _v236 int32 // %t196 - var _v237 int32 // %t197 - var _v239 int32 // %t199 - var _v60 int32 // %t20 - var _v240 int64 // %t200 - var _v241 int64 // %t201 - var _v244 int64 // %t204 - var _v245 int32 // %t205 - var _v246 int64 // %t206 - var _v247 int64 // %t207 - var _v248 int32 // %t208 - var _v61 int32 // %t21 - var _v250 int32 // %t210 - var _v251 int32 // %t211 - var _v252 int32 // %t212 - var _v253 int32 // %t213 - var _v254 int64 // %t214 - var _v255 int64 // %t215 - var _v257 int64 // %t217 - var _v62 int64 // %t22 - var _v260 int32 // %t220 - var _v261 int64 // %t221 - var _v262 int32 // %t222 - var _v263 int32 // %t223 - var _v264 int64 // %t224 - var _v265 int32 // %t225 - var _v266 int32 // %t226 - var _v267 int32 // %t227 - var _v268 int64 // %t228 - var _v269 int32 // %t229 - var _v271 int32 // %t231 - var _v277 int64 // %t237 - var _v278 int32 // %t238 - var _v279 int32 // %t239 - var _v64 int32 // %t24 - var _v280 int64 // %t240 - var _v281 int64 // %t241 - var _v282 int64 // %t242 - var _v283 int64 // %t243 - var _v284 int64 // %t244 - var _v285 int64 // %t245 - var _v286 int32 // %t246 - var _v287 int32 // %t247 - var _v288 int64 // %t248 - var _v65 int64 // %t25 - var _v290 int32 // %t250 - var _v292 int32 // %t252 - var _v296 int64 // %t256 - var _v297 int64 // %t257 - var _v298 int32 // %t258 - var _v66 int64 // %t26 - var _v300 int64 // %t260 - var _v302 int32 // %t262 - var _v304 int32 // %t264 - var _v308 int64 // %t268 - var _v309 int64 // %t269 - var _v67 int64 // %t27 - var _v310 int32 // %t270 - var _v315 int32 // %t275 - var _v317 int32 // %t277 - var _v68 int32 // %t28 - var _v320 int64 // %t280 - var _v322 int32 // %t282 - var _v323 int64 // %t283 - var _v325 int32 // %t285 - var _v327 int32 // %t287 - var _v69 int64 // %t29 - var _v330 int32 // %t290 - var _v332 int32 // %t292 - var _v334 int32 // %t294 - var _v336 int32 // %t296 - var _v338 int32 // %t298 - var _v339 int64 // %t299 - var _v70 int32 // %t30 - var _v340 int64 // %t300 - var _v341 int64 // %t301 - var _v342 int64 // %t302 - var _v344 int32 // %t304 - var _v346 int32 // %t306 - var _v349 int32 // %t309 - var _v71 int32 // %t31 - var _v350 int32 // %t310 - var _v357 int32 // %t317 - var _v359 int32 // %t319 - var _v72 int32 // %t32 - var _v360 int64 // %t320 - var _v363 int32 // %t323 - var _v365 int32 // %t325 - var _v367 int32 // %t327 - var _v368 int64 // %t328 - var _v369 int64 // %t329 - var _v73 int64 // %t33 - var _v371 int64 // %t331 - var _v372 int32 // %t332 - var _v373 int32 // %t333 - var _v375 int32 // %t335 - var _v376 int32 // %t336 - var _v377 int32 // %t337 - var _v378 int64 // %t338 - var _v379 int64 // %t339 - var _v74 int64 // %t34 - var _v380 int64 // %t340 - var _v381 int64 // %t341 - var _v382 int32 // %t342 - var _v383 int32 // %t343 - var _v384 int64 // %t344 - var _v385 int64 // %t345 - var _v386 int64 // %t346 - var _v387 int64 // %t347 - var _v388 int64 // %t348 - var _v389 int32 // %t349 - var _v75 int64 // %t35 - var _v390 int32 // %t350 - var _v394 int32 // %t354 - var _v395 int32 // %t355 - var _v396 int64 // %t356 - var _v397 int32 // %t357 - var _v398 int32 // %t358 - var _v399 int32 // %t359 - var _v76 int64 // %t36 - var _v400 int64 // %t360 - var _v401 int64 // %t361 - var _v402 int64 // %t362 - var _v403 int64 // %t363 - var _v404 int32 // %t364 - var _v405 int32 // %t365 - var _v406 int32 // %t366 - var _v408 int32 // %t368 - var _v409 int64 // %t369 - var _v77 int64 // %t37 - var _v410 int64 // %t370 - var _v411 int32 // %t371 - var _v412 int32 // %t372 - var _v413 int64 // %t373 - var _v414 int64 // %t374 - var _v415 int64 // %t375 - var _v416 int64 // %t376 - var _v417 int32 // %t377 - var _v418 int32 // %t378 - var _v419 int32 // %t379 - var _v78 int32 // %t38 - var _v421 int32 // %t381 - var _v422 int64 // %t382 - var _v423 int32 // %t383 - var _v424 int32 // %t384 - var _v426 int32 // %t386 - var _v428 int32 // %t388 - var _v429 int32 // %t389 - var _v79 int32 // %t39 - var _v430 int32 // %t390 - var _v432 int32 // %t392 - var _v433 int64 // %t393 - var _v434 int64 // %t394 - var _v435 int64 // %t395 - var _v436 int64 // %t396 - var _v439 int32 // %t399 - var _v440 int32 // %t400 - var _v441 int64 // %t401 - var _v444 int32 // %t404 - var _v446 int32 // %t406 - var _v449 int32 // %t409 - var _v451 int32 // %t411 - var _v452 int32 // %t412 - var _v454 int32 // %t414 - var _v455 int64 // %t415 - var _v456 int64 // %t416 - var _v461 int64 // %t421 - var _v462 int32 // %t422 - var _v463 int32 // %t423 - var _v465 int32 // %t425 - var _v468 int32 // %t428 - var _v469 int32 // %t429 - var _v83 int32 // %t43 - var _v470 int32 // %t430 - var _v471 int64 // %t431 - var _v472 int32 // %t432 - var _v473 int32 // %t433 - var _v475 int32 // %t435 - var _v476 int32 // %t436 - var _v477 int32 // %t437 - var _v478 int64 // %t438 - var _v479 int64 // %t439 - var _v84 int32 // %t44 - var _v480 int64 // %t440 - var _v481 int64 // %t441 - var _v482 int32 // %t442 - var _v483 int32 // %t443 - var _v484 int64 // %t444 - var _v485 int64 // %t445 - var _v486 int64 // %t446 - var _v487 int64 // %t447 - var _v488 int64 // %t448 - var _v489 int32 // %t449 - var _v490 int32 // %t450 - var _v494 int32 // %t454 - var _v495 int32 // %t455 - var _v496 int64 // %t456 - var _v497 int32 // %t457 - var _v498 int32 // %t458 - var _v499 int32 // %t459 - var _v86 int32 // %t46 - var _v500 int64 // %t460 - var _v501 int64 // %t461 - var _v502 int64 // %t462 - var _v503 int64 // %t463 - var _v505 int32 // %t465 - var _v506 int32 // %t466 - var _v507 int32 // %t467 - var _v509 int32 // %t469 - var _v87 int32 // %t47 - var _v510 int64 // %t470 - var _v511 int64 // %t471 - var _v512 int64 // %t472 - var _v513 int64 // %t473 - var _v514 int64 // %t474 - var _v515 int64 // %t475 - var _v516 int64 // %t476 - var _v517 int32 // %t477 - var _v519 int32 // %t479 - var _v520 int32 // %t480 - var _v521 int32 // %t481 - var _v523 int32 // %t483 - var _v525 int64 // %t485 - var _v526 int64 // %t486 - var _v527 int64 // %t487 - var _v528 int64 // %t488 - var _v529 int64 // %t489 - var _v89 int32 // %t49 - var _v532 int32 // %t492 - var _v533 int32 // %t493 - var _v534 int64 // %t494 - var _v537 int32 // %t497 - var _v539 int32 // %t499 - var _v45 int64 // %t5 - var _v90 int64 // %t50 - var _v541 int64 // %t501 - var _v542 int64 // %t502 - var _v543 int64 // %t503 - var _v546 int32 // %t506 - var _v548 int32 // %t508 - var _v91 int64 // %t51 - var _v555 int64 // %t515 - var _v556 int64 // %t516 - var _v560 int64 // %t520 - var _v561 int64 // %t521 - var _v562 int32 // %t522 - var _v563 int32 // %t523 - var _v565 int32 // %t525 - var _v566 int32 // %t526 - var _v568 int64 // %t528 - var _v569 int32 // %t529 - var _v93 int64 // %t53 - var _v571 int32 // %t531 - var _v572 int64 // %t532 - var _v573 int32 // %t533 - var _v575 int32 // %t535 - var _v576 int32 // %t536 - var _v577 int64 // %t537 - var _v578 int64 // %t538 - var _v94 int32 // %t54 - var _v580 int64 // %t540 - var _v581 int32 // %t541 - var _v582 int32 // %t542 - var _v584 int32 // %t544 - var _v585 int32 // %t545 - var _v586 int32 // %t546 - var _v587 int64 // %t547 - var _v588 int32 // %t548 - var _v589 int32 // %t549 - var _v95 int32 // %t55 - var _v590 int32 // %t550 - var _v592 int32 // %t552 - var _v594 int32 // %t554 - var _v596 int64 // %t556 - var _v597 int64 // %t557 - var _v598 int64 // %t558 - var _v599 int64 // %t559 - var _v600 int64 // %t560 - var _v601 int64 // %t561 - var _v602 int64 // %t562 - var _v603 int64 // %t563 - var _v606 int32 // %t566 - var _v608 int64 // %t568 - var _v97 int32 // %t57 - var _v611 int64 // %t571 - var _v612 int64 // %t572 - var _v613 int64 // %t573 - var _v616 int32 // %t576 - var _v618 int64 // %t578 - var _v619 int64 // %t579 - var _v98 int32 // %t58 - var _v622 int32 // %t582 - var _v624 int32 // %t584 - var _v626 int64 // %t586 - var _v627 int32 // %t587 - var _v628 int32 // %t588 - var _v629 int32 // %t589 - var _v99 int32 // %t59 - var _v630 int32 // %t590 - var _v631 int32 // %t591 - var _v632 int32 // %t592 - var _v633 int64 // %t593 - var _v634 int64 // %t594 - var _v636 int64 // %t596 - var _v637 int32 // %t597 - var _v638 int32 // %t598 - var _v639 int64 // %t599 - var _v100 int32 // %t60 - var _v640 int64 // %t600 - var _v641 int64 // %t601 - var _v642 int64 // %t602 - var _v643 int64 // %t603 - var _v644 int32 // %t604 - var _v645 int32 // %t605 - var _v649 int32 // %t609 - var _v101 int64 // %t61 - var _v650 int32 // %t610 - var _v651 int64 // %t611 - var _v652 int32 // %t612 - var _v653 int32 // %t613 - var _v655 int32 // %t615 - var _v656 int32 // %t616 - var _v657 int32 // %t617 - var _v659 int32 // %t619 - var _v102 int32 // %t62 - var _v660 int64 // %t620 - var _v661 int64 // %t621 - var _v662 int32 // %t622 - var _v663 int64 // %t623 - var _v664 int64 // %t624 - var _v667 int32 // %t627 - var _v669 int32 // %t629 - var _v103 int32 // %t63 - var _v671 int64 // %t631 - var _v672 int32 // %t632 - var _v673 int32 // %t633 - var _v674 int32 // %t634 - var _v675 int32 // %t635 - var _v676 int32 // %t636 - var _v677 int32 // %t637 - var _v678 int64 // %t638 - var _v679 int64 // %t639 - var _v104 int32 // %t64 - var _v681 int64 // %t641 - var _v682 int32 // %t642 - var _v683 int32 // %t643 - var _v684 int64 // %t644 - var _v685 int64 // %t645 - var _v686 int64 // %t646 - var _v687 int64 // %t647 - var _v688 int64 // %t648 - var _v689 int32 // %t649 - var _v690 int32 // %t650 - var _v694 int32 // %t654 - var _v695 int32 // %t655 - var _v696 int64 // %t656 - var _v697 int32 // %t657 - var _v698 int32 // %t658 - var _v106 int32 // %t66 - var _v700 int32 // %t660 - var _v701 int32 // %t661 - var _v702 int32 // %t662 - var _v704 int32 // %t664 - var _v705 int64 // %t665 - var _v706 int64 // %t666 - var _v707 int32 // %t667 - var _v708 int64 // %t668 - var _v709 int64 // %t669 - var _v107 int32 // %t67 - var _v710 int64 // %t670 - var _v711 int64 // %t671 - var _v712 int64 // %t672 - var _v713 int32 // %t673 - var _v714 int64 // %t674 - var _v715 int32 // %t675 - var _v717 int32 // %t677 - var _v718 int64 // %t678 - var _v720 int32 // %t680 - var _v722 int32 // %t682 - var _v723 int32 // %t683 - var _v725 int32 // %t685 - var _v726 int64 // %t686 - var _v727 int64 // %t687 - var _v728 int32 // %t688 - var _v729 int64 // %t689 - var _v109 int32 // %t69 - var _v730 int64 // %t690 - var _v732 int64 // %t692 - var _v733 int32 // %t693 - var _v734 int64 // %t694 - var _v735 int32 // %t695 - var _v736 int32 // %t696 - var _v737 int64 // %t697 - var _v110 int64 // %t70 - var _v741 int32 // %t701 - var _v743 int32 // %t703 - var _v745 int32 // %t705 - var _v746 int64 // %t706 - var _v747 int64 // %t707 - var _v748 int32 // %t708 - var _v749 int64 // %t709 - var _v111 int64 // %t71 - var _v750 int64 // %t710 - var _v752 int64 // %t712 - var _v753 int32 // %t713 - var _v754 int64 // %t714 - var _v755 int32 // %t715 - var _v756 int32 // %t716 - var _v759 int32 // %t719 - var _v761 int32 // %t721 - var _v764 int32 // %t724 - var _v766 int32 // %t726 - var _v769 int32 // %t729 - var _v113 int64 // %t73 - var _v770 int32 // %t730 - var _v775 int64 // %t735 - var _v776 int32 // %t736 - var _v777 int32 // %t737 - var _v779 int32 // %t739 - var _v114 int32 // %t74 - var _v780 int32 // %t740 - var _v783 int32 // %t743 - var _v785 int32 // %t745 - var _v788 int32 // %t748 - var _v789 int32 // %t749 - var _v115 int32 // %t75 - var _v790 int32 // %t750 - var _v792 int32 // %t752 - var _v797 int64 // %t757 - var _v798 int32 // %t758 - var _v800 int32 // %t760 - var _v805 int32 // %t765 - var _v117 int32 // %t77 - var _v812 int64 // %t772 - var _v813 int32 // %t773 - var _v814 int32 // %t774 - var _v818 int32 // %t778 - var _v118 int32 // %t78 - var _v820 int32 // %t780 - var _v823 int32 // %t783 - var _v824 int32 // %t784 - var _v829 int64 // %t789 - var _v119 int32 // %t79 - var _v830 int32 // %t790 - var _v832 int32 // %t792 - var _v833 int64 // %t793 - var _v834 int64 // %t794 - var _v835 int32 // %t795 - var _v836 int64 // %t796 - var _v837 int64 // %t797 - var _v838 int64 // %t798 - var _v839 int32 // %t799 - var _v840 int64 // %t800 - var _v841 int32 // %t801 - var _v843 int32 // %t803 - var _v845 int32 // %t805 - var _v847 int32 // %t807 - var _v849 int32 // %t809 - var _v121 int32 // %t81 - var _v851 int32 // %t811 - var _v852 int64 // %t812 - var _v853 int64 // %t813 - var _v854 int32 // %t814 - var _v855 int64 // %t815 - var _v856 int64 // %t816 - var _v857 int64 // %t817 - var _v858 int64 // %t818 - var _v859 int32 // %t819 - var _v122 int64 // %t82 - var _v861 int32 // %t821 - var _v867 int64 // %t827 - var _v868 int64 // %t828 - var _v869 int64 // %t829 - var _v123 int64 // %t83 - var _v872 int64 // %t832 - var _v873 int32 // %t833 - var _v874 int64 // %t834 - var _v875 int64 // %t835 - var _v876 int32 // %t836 - var _v878 int32 // %t838 - var _v879 int64 // %t839 - var _v880 int64 // %t840 - var _v881 int64 // %t841 - var _v882 int64 // %t842 - var _v884 int32 // %t844 - var _v885 int64 // %t845 - var _v886 int64 // %t846 - var _v887 int32 // %t847 - var _v888 int64 // %t848 - var _v889 int64 // %t849 - var _v125 int64 // %t85 - var _v890 int32 // %t850 - var _v891 int64 // %t851 - var _v892 int64 // %t852 - var _v893 int64 // %t853 - var _v894 int32 // %t854 - var _v895 int64 // %t855 - var _v896 int32 // %t856 - var _v897 int32 // %t857 - var _v898 int32 // %t858 - var _v899 int64 // %t859 - var _v126 int32 // %t86 - var _v900 int32 // %t860 - var _v901 int32 // %t861 - var _v902 int32 // %t862 - var _v903 int32 // %t863 - var _v904 int32 // %t864 - var _v905 int64 // %t865 - var _v908 int32 // %t868 - var _v127 int32 // %t87 - var _v910 int32 // %t870 - var _v913 int32 // %t873 - var _v915 int32 // %t875 - var _v916 int32 // %t876 - var _v918 int32 // %t878 - var _v128 int64 // %t88 - var _v923 int64 // %t883 - var _v924 int32 // %t884 - var _v925 int32 // %t885 - var _v927 int32 // %t887 - var _v129 int64 // %t89 - var _v931 int32 // %t891 - var _v934 int32 // %t894 - var _v935 int64 // %t895 - var _v936 int32 // %t896 - var _v937 int32 // %t897 - var _v938 int32 // %t898 - var _v939 int32 // %t899 - var _v49 int64 // %t9 - var _v130 int64 // %t90 - var _v940 int32 // %t900 - var _v942 int32 // %t902 - var _v943 int32 // %t903 - var _v944 int32 // %t904 - var _v946 int32 // %t906 - var _v947 int64 // %t907 - var _v948 int64 // %t908 - var _v949 int64 // %t909 - var _v131 int64 // %t91 - var _v950 int64 // %t910 - var _v951 int64 // %t911 - var _v952 int64 // %t912 - var _v132 int64 // %t92 - var _v133 int32 // %t93 - var _v134 int32 // %t94 - var _v138 int32 // %t98 - var _v139 int32 // %t99 - var _v10 = int64(bp + 380) // %v10 - var _v11 = int64(bp + 384) // %v11 - var _v12 = int64(bp + 388) // %v12 - var _v13 = int64(bp + 392) // %v13 - var _v14 = int64(bp + 400) // %v14 - var _v15 = int64(bp + 416) // %v15 - var _v16 = int64(bp + 448) // %v16 - var _v17 = int64(bp + 1448) // %v17 - var _v18 = int64(bp + 1648) // %v18 - var _v19 = int64(bp + 1656) // %v19 - var _v20 = int64(bp + 1660) // %v20 - var _v21 = int64(bp + 1664) // %v21 - var _v22 = int64(bp + 1672) // %v22 - var _v23 = int64(bp + 1680) // %v23 - var _v24 = int64(bp + 1688) // %v24 - var _v25 = int64(bp + 1696) // %v25 - var _v26 = int64(bp + 1704) // %v26 - var _v27 = int64(bp + 1712) // %v27 - var _v28 = int64(bp + 1720) // %v28 - var _v29 = int64(bp + 1728) // %v29 - var _v30 = int64(bp + 1732) // %v30 - var _v31 = int64(bp + 1736) // %v31 - var _v32 = int64(bp + 1740) // %v32 - var _v33 = int64(bp + 1744) // %v33 - var _v34 = int64(bp + 1752) // %v34 - var _v35 = int64(bp + 1756) // %v35 - var _v36 = int64(bp + 1760) // %v36 - var _v37 = int64(bp + 1764) // %v37 - var _v38 = int64(bp + 1768) // %v38 - var _v39 = int64(bp + 1776) // %v39 - var _v40 = int64(bp + 1784) // %v40 - var _v5 = int64(bp + 360) // %v5 - var _v6 = int64(bp + 364) // %v6 - var _v7 = int64(bp + 368) // %v7 - var _v8 = int64(bp + 372) // %v8 - var _v9 = int64(bp + 376) // %v9 - *(*int32)(unsafe.Pointer(uintptr(_v5))) = 1 - *(*int32)(unsafe.Pointer(uintptr(_v6))) = 1 - *(*int32)(unsafe.Pointer(uintptr(_v7))) = 0 - *(*int32)(unsafe.Pointer(uintptr(_v8))) = 0 - _v45 = int64(_v14 + int64(0)) - _ = crt.Xmemset(t, _v45, 0, int64(16)) - _v49 = int64(_v14 + int64(0)) - s_stringReset(t, _v49) - goto l2 -l2: - _v50 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v51 = int64(int32(_v50)) - _v52 = int64(_v51 * int64(1)) - _v54 = int64(_v3 + _v52) - _v55 = int32(*(*int8)(unsafe.Pointer(uintptr(_v54)))) - _v56 = int32(int8(_v55)) - _v57 = int64(_v10 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v57))) = _v56 - _v58 = *(*int32)(unsafe.Pointer(uintptr(_v57))) - _v60 = crt.Bool32(int32(_v58) != int32(0)) - if _v60 != 0 { - goto l3 - } - goto l242 -l3: - _v61 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v62 = int64(_v6 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v62))) = _v61 - _v64 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v65 = int64(int32(_v64)) - _v66 = int64(_v3 + _v65) - _v67 = int64(_v5 + int64(0)) - _v68 = s_tokenLength(t, _v66, _v67) - _v69 = int64(_v12 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v69))) = _v68 - _v70 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _v71 = int32(int32(_v70) & int32(255)) - _v72 = int32(int32(uint8(_v71))) - _v73 = int64(int32(_v72)) - _v74 = int64(_v73 * int64(2)) - _v75 = crt.X__ctype_b_loc(t) - _v76 = *(*int64)(unsafe.Pointer(uintptr(_v75))) - _v77 = int64(_v76 + _v74) - _v78 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v77)))) - _v79 = int32(uint16(_v78)) - _v83 = int32(int32(_v79) & int32(8192)) - goto l4 -l4: - if _v83 != 0 { - goto l246 - } - goto l5 -l246: - _v99 = 1 - goto l13 -l5: - _v84 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _v86 = crt.Bool32(int32(_v84) == int32(47)) - goto l6 -l6: - if _v86 != 0 { - goto l7 - } - goto l247 -l247: - _v98 = 0 - goto l10 -l7: - _v87 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v89 = int32(int32(_v87) + int32(1)) - _v90 = int64(int32(_v89)) - _v91 = int64(_v90 * int64(1)) - _v93 = int64(_v3 + _v91) - _v94 = int32(*(*int8)(unsafe.Pointer(uintptr(_v93)))) - _v95 = int32(int8(_v94)) - _v97 = crt.Bool32(int32(_v95) == int32(42)) - goto l8 -l8: - if _v97 != 0 { - goto l9 - } - goto l248 -l248: - _v98 = 0 - goto l10 -l9: - _v98 = 1 - goto l10 -l10: - goto l11 -l11: - if _v98 != 0 { - goto l249 - } - goto l12 -l249: - _v99 = 1 - goto l13 -l12: - _v99 = 0 - goto l13 -l13: - if _v99 != 0 { - goto l14 - } - goto l16 -l14: - _v100 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v101 = int64(_v7 + int64(0)) - _v102 = *(*int32)(unsafe.Pointer(uintptr(_v101))) - _v103 = int32(int32(_v102) + int32(_v100)) - *(*int32)(unsafe.Pointer(uintptr(_v101))) = _v103 - goto l2 -l16: - _v104 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _v106 = crt.Bool32(int32(_v104) != int32(45)) - goto l17 -l17: - if _v106 != 0 { - goto l250 - } - goto l18 -l250: - _v118 = 1 - goto l21 -l18: - _v107 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v109 = int32(int32(_v107) + int32(1)) - _v110 = int64(int32(_v109)) - _v111 = int64(_v110 * int64(1)) - _v113 = int64(_v3 + _v111) - _v114 = int32(*(*int8)(unsafe.Pointer(uintptr(_v113)))) - _v115 = int32(int8(_v114)) - _v117 = crt.Bool32(int32(_v115) != int32(45)) - goto l19 -l19: - if _v117 != 0 { - goto l251 - } - goto l20 -l251: - _v118 = 1 - goto l21 -l20: - _v118 = 0 - goto l21 -l21: - goto l22 -l22: - if _v118 != 0 { - goto l252 - } - goto l23 -l252: - _v140 = 1 - goto l29 -l23: - _v119 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v121 = int32(int32(_v119) + int32(2)) - _v122 = int64(int32(_v121)) - _v123 = int64(_v122 * int64(1)) - _v125 = int64(_v3 + _v123) - _v126 = int32(*(*int8)(unsafe.Pointer(uintptr(_v125)))) - _v127 = int32(int8(_v126)) - _v128 = int64(int32(_v127)) - _v129 = int64(_v128 * int64(2)) - _v130 = crt.X__ctype_b_loc(t) - _v131 = *(*int64)(unsafe.Pointer(uintptr(_v130))) - _v132 = int64(_v131 + _v129) - _v133 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v132)))) - _v134 = int32(uint16(_v133)) - _v138 = int32(int32(_v134) & int32(1024)) - goto l24 -l24: - if _v138 != 0 { - goto l25 - } - goto l253 -l253: - _v139 = 1 - goto l26 -l25: - _v139 = 0 - goto l26 -l26: - goto l27 -l27: - if _v139 != 0 { - goto l254 - } - goto l28 -l254: - _v140 = 1 - goto l29 -l28: - _v140 = 0 - goto l29 -l29: - if _v140 != 0 { - goto l30 - } - goto l32 -l30: - _v141 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v142 = int64(_v7 + int64(0)) - _v143 = *(*int32)(unsafe.Pointer(uintptr(_v142))) - _v144 = int32(int32(_v143) + int32(_v141)) - *(*int32)(unsafe.Pointer(uintptr(_v142))) = _v144 - goto l2 -l32: - _v145 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v146 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v147 = crt.Bool32(int32(_v145) > int32(_v146)) - if _v147 != 0 { - goto l33 - } - goto l34 -l33: - _v149 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v150 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v151 = int32(int32(_v149) - int32(_v150)) - _v153 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v154 = int64(int32(_v153)) - _v155 = int64(_v3 + _v154) - *(*int32)(unsafe.Pointer(bp + 0)) = _v151 - - *(*int64)(unsafe.Pointer(bp + 8)) = _v155 - - _v156 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__98))), bp+0) - *(*int64)(unsafe.Pointer(uintptr(_v18))) = _v156 - _v157 = int64(_v14 + int64(0)) - _v158 = *(*int64)(unsafe.Pointer(uintptr(_v18))) - - _ = s_evalSql(t, _v157, _v158, 0) - _v160 = *(*int64)(unsafe.Pointer(uintptr(_v18))) - Xsqlite3_free(t, _v160) - _v161 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v162 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v163 = int32(int32(_v161) + int32(_v162)) - _v164 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v164))) = _v163 - goto l34 -l34: - _v167 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - _v169 = crt.Bool32(int32(_v167) >= int32(2)) - if _v169 != 0 { - goto l35 - } - goto l36 -l35: - _v171 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v173 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v174 = int64(int32(_v173)) - _v175 = int64(_v3 + _v174) - *(*int32)(unsafe.Pointer(bp + 16)) = _v171 - - *(*int64)(unsafe.Pointer(bp + 24)) = _v175 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__98))), bp+16) - goto l36 -l36: - _v177 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v178 = int64(int32(_v177)) - _v179 = int64(_v3 + _v178) - _v182 = int64(_v179 + int64(2)) - _v183 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v185 = int32(int32(_v183) - int32(2)) - _v189 = s_extractToken(t, _v182, _v185, _v15, 30) - _v190 = int64(_v9 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v190))) = _v189 - _v192 = int64(_v13 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v192))) = 0 - goto l37 -l37: - _v193 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v194 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v196 = int32(int32(_v194) - int32(2)) - _v197 = crt.Bool32(int32(_v193) < int32(_v196)) - goto l38 -l38: - if _v197 != 0 { - goto l39 - } - goto l255 -l255: - _v201 = 0 - goto l42 -l39: - _v198 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v200 = crt.Bool32(int32(_v198) < int32(2)) - goto l40 -l40: - if _v200 != 0 { - goto l41 - } - goto l256 -l256: - _v201 = 0 - goto l42 -l41: - _v201 = 1 - goto l42 -l42: - if _v201 != 0 { - goto l43 - } - goto l257 -l257: - goto l56 -l43: - goto l44 -l44: - _v202 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v203 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v205 = int32(int32(_v203) - int32(2)) - _v206 = crt.Bool32(int32(_v202) < int32(_v205)) - goto l45 -l45: - if _v206 != 0 { - goto l46 - } - goto l258 -l258: - _v229 = 0 - goto l49 -l46: - _v207 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v209 = int32(int32(_v207) + int32(2)) - _v210 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v211 = int32(int32(_v209) + int32(_v210)) - _v212 = int64(int32(_v211)) - _v213 = int64(_v212 * int64(1)) - _v215 = int64(_v3 + _v213) - _v216 = int32(*(*int8)(unsafe.Pointer(uintptr(_v215)))) - _v217 = int32(int32(uint8(_v216))) - _v218 = int64(int32(_v217)) - _v219 = int64(_v218 * int64(2)) - _v220 = crt.X__ctype_b_loc(t) - _v221 = *(*int64)(unsafe.Pointer(uintptr(_v220))) - _v222 = int64(_v221 + _v219) - _v223 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v222)))) - _v224 = int32(uint16(_v223)) - _v228 = int32(int32(_v224) & int32(8192)) - goto l47 -l47: - if _v228 != 0 { - goto l48 - } - goto l259 -l259: - _v229 = 0 - goto l49 -l48: - _v229 = 1 - goto l49 -l49: - if _v229 != 0 { - goto l50 - } - goto l51 -l50: - _v230 = int64(_v9 + int64(0)) - _v231 = *(*int32)(unsafe.Pointer(uintptr(_v230))) - _v232 = int32(int32(_v231) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v230))) = _v232 - goto l44 -l51: - _v233 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v234 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v236 = int32(int32(_v234) - int32(2)) - _v237 = crt.Bool32(int32(_v233) >= int32(_v236)) - if _v237 != 0 { - goto l52 - } - goto l54 -l52: - goto l56 -l54: - _v239 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v240 = int64(int32(_v239)) - _v241 = int64(_v3 + _v240) - _v244 = int64(_v241 + int64(2)) - _v245 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v246 = int64(int32(_v245)) - _v247 = int64(_v244 + _v246) - _v248 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v250 = int32(int32(_v248) - int32(2)) - _v251 = *(*int32)(unsafe.Pointer(uintptr(_v9))) - _v252 = int32(int32(_v250) - int32(_v251)) - _v253 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v254 = int64(int32(_v253)) - _v255 = int64(_v254 * int64(100)) - _v257 = int64(_v17 + _v255) - _v260 = s_extractToken(t, _v247, _v252, _v257, 100) - _v261 = int64(_v9 + int64(0)) - _v262 = *(*int32)(unsafe.Pointer(uintptr(_v261))) - _v263 = int32(int32(_v262) + int32(_v260)) - *(*int32)(unsafe.Pointer(uintptr(_v261))) = _v263 - goto l55 -l55: - _v264 = int64(_v13 + int64(0)) - _v265 = *(*int32)(unsafe.Pointer(uintptr(_v264))) - _v266 = int32(int32(_v265) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v264))) = _v266 - goto l37 -l56: - _v267 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v268 = int64(_v11 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v268))) = _v267 - goto l57 -l57: - _v269 = *(*int32)(unsafe.Pointer(uintptr(_v11))) - _v271 = crt.Bool32(int32(_v269) < int32(2)) - if _v271 != 0 { - goto l58 - } - goto l60 -l58: - _v277 = int64(_v11 + int64(0)) - _v278 = *(*int32)(unsafe.Pointer(uintptr(_v277))) - _v279 = int32(int32(_v278) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v277))) = _v279 - _v280 = int64(int32(_v278)) - _v281 = int64(_v280 * int64(100)) - _v282 = int64(_v17) - _v283 = int64(_v282 + _v281) - _v284 = int64(_v283 + int64(0)) - *(*int8)(unsafe.Pointer(uintptr(_v284))) = 0 - goto l59 -l59: - _v285 = int64(_v11 + int64(0)) - _v286 = *(*int32)(unsafe.Pointer(uintptr(_v285))) - _v287 = int32(int32(_v286) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v285))) = _v287 - goto l57 -l60: - _v288 = int64(_v15) - _v290 = crt.Xstrcmp(t, _v288, int64(uintptr(unsafe.Pointer(&s__99)))) - _v292 = crt.Bool32(int32(_v290) == int32(0)) - if _v292 != 0 { - goto l61 - } - goto l62 -l61: - _v296 = int64(_v17) - _v297 = int64(_v296 + int64(0)) - _v298 = crt.Xatoi(t, _v297) - _ = Xsqlite3_sleep(t, _v298) - goto l241 -l62: - _v300 = int64(_v15) - _v302 = crt.Xstrcmp(t, _v300, int64(uintptr(unsafe.Pointer(&s__100)))) - _v304 = crt.Bool32(int32(_v302) == int32(0)) - if _v304 != 0 { - goto l63 - } - goto l66 -l63: - _v308 = int64(_v17) - _v309 = int64(_v308 + int64(0)) - _v310 = crt.Xatoi(t, _v309) - *(*int32)(unsafe.Pointer(uintptr(_v19))) = _v310 - _ = s_finishScript(t, _v1, _v2, 1) - _v315 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - _v317 = crt.Bool32(int32(_v315) == int32(0)) - if _v317 != 0 { - goto l64 - } - goto l65 -l64: - _v320 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _ = Xsqlite3_close(t, _v320) - goto l65 -l65: - _v322 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - crt.Xexit(t, _v322) - goto l240 -l66: - _v323 = int64(_v15) - _v325 = crt.Xstrcmp(t, _v323, int64(uintptr(unsafe.Pointer(&s__101)))) - _v327 = crt.Bool32(int32(_v325) == int32(0)) - if _v327 != 0 { - goto l67 - } - goto l70 -l67: - _v330 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - _v332 = crt.Bool32(int32(_v330) == int32(1)) - if _v332 != 0 { - goto l68 - } - goto l69 -l68: - _v334 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v336 = int32(int32(_v334) - int32(1)) - _v338 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v339 = int64(int32(_v338)) - _v340 = int64(_v3 + _v339) - *(*int32)(unsafe.Pointer(bp + 32)) = _v336 - - *(*int64)(unsafe.Pointer(bp + 40)) = _v340 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__98))), bp+32) - goto l69 -l69: - _v341 = int64(_v14 + int64(0)) - s_stringReset(t, _v341) - goto l239 -l70: - _v342 = int64(_v15) - _v344 = crt.Xstrcmp(t, _v342, int64(uintptr(unsafe.Pointer(&s__102)))) - _v346 = crt.Bool32(int32(_v344) == int32(0)) - goto l71 -l71: - if _v346 != 0 { - goto l72 - } - goto l260 -l260: - _v350 = 0 - goto l75 -l72: - _v349 = crt.Bool32(int32(_v1) > int32(0)) - goto l73 -l73: - if _v349 != 0 { - goto l74 - } - goto l261 -l261: - _v350 = 0 - goto l75 -l74: - _v350 = 1 - goto l75 -l75: - if _v350 != 0 { - goto l76 - } - goto l77 -l76: - _ = s_finishScript(t, _v1, _v2, 1) - goto l238 -l77: - _v357 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__103)))) - _v359 = crt.Bool32(int32(_v357) == int32(0)) - if _v359 != 0 { - goto l78 - } - goto l79 -l78: - _v360 = int64(_v14 + int64(0)) - s_stringReset(t, _v360) - goto l237 -l79: - _v363 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__104)))) - _v365 = crt.Bool32(int32(_v363) == int32(0)) - if _v365 != 0 { - goto l80 - } - goto l97 -l80: - _v367 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v368 = int64(int32(_v367)) - _v369 = int64(_v3 + _v368) - *(*int64)(unsafe.Pointer(uintptr(_v21))) = _v369 - _v371 = int64(_v20 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v371))) = 7 - goto l81 -l81: - _v372 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v373 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v375 = int32(int32(_v373) - int32(1)) - _v376 = crt.Bool32(int32(_v372) < int32(_v375)) - goto l82 -l82: - if _v376 != 0 { - goto l83 - } - goto l262 -l262: - _v395 = 0 - goto l86 -l83: - _v377 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v378 = int64(int32(_v377)) - _v379 = int64(_v378 * int64(1)) - _v380 = *(*int64)(unsafe.Pointer(uintptr(_v21))) - _v381 = int64(_v380 + _v379) - _v382 = int32(*(*int8)(unsafe.Pointer(uintptr(_v381)))) - _v383 = int32(int32(uint8(_v382))) - _v384 = int64(int32(_v383)) - _v385 = int64(_v384 * int64(2)) - _v386 = crt.X__ctype_b_loc(t) - _v387 = *(*int64)(unsafe.Pointer(uintptr(_v386))) - _v388 = int64(_v387 + _v385) - _v389 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v388)))) - _v390 = int32(uint16(_v389)) - _v394 = int32(int32(_v390) & int32(8192)) - goto l84 -l84: - if _v394 != 0 { - goto l85 - } - goto l263 -l263: - _v395 = 0 - goto l86 -l85: - _v395 = 1 - goto l86 -l86: - if _v395 != 0 { - goto l87 - } - goto l89 -l87: - goto l88 -l88: - _v396 = int64(_v20 + int64(0)) - _v397 = *(*int32)(unsafe.Pointer(uintptr(_v396))) - _v398 = int32(int32(_v397) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v396))) = _v398 - goto l81 -l89: - _v399 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v400 = int64(int32(_v399)) - _v401 = int64(_v21 + int64(0)) - _v402 = *(*int64)(unsafe.Pointer(uintptr(_v401))) - _v403 = int64(_v402 + _v400) - *(*int64)(unsafe.Pointer(uintptr(_v401))) = _v403 - _v404 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v405 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v406 = int32(int32(_v404) - int32(_v405)) - _v408 = int32(int32(_v406) - int32(1)) - _v409 = int64(_v14 + int64(0)) - _v410 = int64(_v409 + int64(8)) - _v411 = *(*int32)(unsafe.Pointer(uintptr(_v410))) - _v412 = crt.Bool32(int32(_v408) != int32(_v411)) - goto l90 -l90: - if _v412 != 0 { - goto l264 - } - goto l91 -l264: - _v424 = 1 - goto l94 -l91: - _v413 = int64(_v14 + int64(0)) - _v414 = int64(_v413 + int64(0)) - _v415 = *(*int64)(unsafe.Pointer(uintptr(_v414))) - _v416 = *(*int64)(unsafe.Pointer(uintptr(_v21))) - _v417 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v418 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v419 = int32(int32(_v417) - int32(_v418)) - _v421 = int32(int32(_v419) - int32(1)) - _v422 = int64(int32(_v421)) - _v423 = crt.Xstrncmp(t, _v415, _v416, _v422) - goto l92 -l92: - if _v423 != 0 { - goto l265 - } - goto l93 -l265: - _v424 = 1 - goto l94 -l93: - _v424 = 0 - goto l94 -l94: - if _v424 != 0 { - goto l95 - } - goto l96 -l95: - _v426 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v428 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v429 = *(*int32)(unsafe.Pointer(uintptr(_v20))) - _v430 = int32(int32(_v428) - int32(_v429)) - _v432 = int32(int32(_v430) - int32(1)) - _v433 = *(*int64)(unsafe.Pointer(uintptr(_v21))) - _v434 = int64(_v14 + int64(0)) - _v435 = int64(_v434 + int64(0)) - _v436 = *(*int64)(unsafe.Pointer(uintptr(_v435))) - *(*int32)(unsafe.Pointer(bp + 48)) = _v426 - - *(*int64)(unsafe.Pointer(bp + 56)) = _v4 - - *(*int32)(unsafe.Pointer(bp + 64)) = _v432 - - *(*int64)(unsafe.Pointer(bp + 72)) = _v433 - - *(*int64)(unsafe.Pointer(bp + 80)) = _v436 - s_errorMessage(t, int64(uintptr(unsafe.Pointer(&s__105))), bp+48) - goto l96 -l96: - _v439 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 116)) - _v440 = int32(int32(_v439) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 116)) = _v440 - _v441 = int64(_v14 + int64(0)) - s_stringReset(t, _v441) - goto l236 -l97: - _v444 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__106)))) - _v446 = crt.Bool32(int32(_v444) == int32(0)) - goto l98 -l98: - if _v446 != 0 { - goto l266 - } - goto l99 -l266: - _v452 = 1 - goto l102 -l99: - _v449 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__107)))) - _v451 = crt.Bool32(int32(_v449) == int32(0)) - goto l100 -l100: - if _v451 != 0 { - goto l267 - } - goto l101 -l267: - _v452 = 1 - goto l102 -l101: - _v452 = 0 - goto l102 -l102: - if _v452 != 0 { - goto l103 - } - goto l115 -l103: - _v454 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v455 = int64(int32(_v454)) - _v456 = int64(_v3 + _v455) - *(*int64)(unsafe.Pointer(uintptr(_v23))) = _v456 - _v461 = int64(_v15 + int64(0)) - _v462 = int32(*(*int8)(unsafe.Pointer(uintptr(_v461)))) - _v463 = int32(int8(_v462)) - _v465 = crt.Bool32(int32(_v463) == int32(103)) - *(*int32)(unsafe.Pointer(uintptr(_v25))) = _v465 - _v468 = *(*int32)(unsafe.Pointer(uintptr(_v25))) - _v469 = int32(3 * _v468) - _v470 = int32(int32(9) - int32(_v469)) - _v471 = int64(_v22 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v471))) = _v470 - goto l104 -l104: - _v472 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v473 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v475 = int32(int32(_v473) - int32(1)) - _v476 = crt.Bool32(int32(_v472) < int32(_v475)) - goto l105 -l105: - if _v476 != 0 { - goto l106 - } - goto l268 -l268: - _v495 = 0 - goto l109 -l106: - _v477 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v478 = int64(int32(_v477)) - _v479 = int64(_v478 * int64(1)) - _v480 = *(*int64)(unsafe.Pointer(uintptr(_v23))) - _v481 = int64(_v480 + _v479) - _v482 = int32(*(*int8)(unsafe.Pointer(uintptr(_v481)))) - _v483 = int32(int32(uint8(_v482))) - _v484 = int64(int32(_v483)) - _v485 = int64(_v484 * int64(2)) - _v486 = crt.X__ctype_b_loc(t) - _v487 = *(*int64)(unsafe.Pointer(uintptr(_v486))) - _v488 = int64(_v487 + _v485) - _v489 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v488)))) - _v490 = int32(uint16(_v489)) - _v494 = int32(int32(_v490) & int32(8192)) - goto l107 -l107: - if _v494 != 0 { - goto l108 - } - goto l269 -l269: - _v495 = 0 - goto l109 -l108: - _v495 = 1 - goto l109 -l109: - if _v495 != 0 { - goto l110 - } - goto l112 -l110: - goto l111 -l111: - _v496 = int64(_v22 + int64(0)) - _v497 = *(*int32)(unsafe.Pointer(uintptr(_v496))) - _v498 = int32(int32(_v497) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v496))) = _v498 - goto l104 -l112: - _v499 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v500 = int64(int32(_v499)) - _v501 = int64(_v23 + int64(0)) - _v502 = *(*int64)(unsafe.Pointer(uintptr(_v501))) - _v503 = int64(_v502 + _v500) - *(*int64)(unsafe.Pointer(uintptr(_v501))) = _v503 - _v505 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v506 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v507 = int32(int32(_v505) - int32(_v506)) - _v509 = int32(int32(_v507) - int32(1)) - _v510 = *(*int64)(unsafe.Pointer(uintptr(_v23))) - *(*int32)(unsafe.Pointer(bp + 88)) = _v509 - - *(*int64)(unsafe.Pointer(bp + 96)) = _v510 - - _v511 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__98))), bp+88) - _v512 = int64(_v24 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v512))) = _v511 - _v513 = *(*int64)(unsafe.Pointer(uintptr(_v24))) - _v514 = int64(_v14 + int64(0)) - _v515 = int64(_v514 + int64(0)) - _v516 = *(*int64)(unsafe.Pointer(uintptr(_v515))) - _v517 = Xsqlite3_strglob(t, _v513, _v516) - _v519 = crt.Bool32(int32(_v517) == int32(0)) - _v520 = *(*int32)(unsafe.Pointer(uintptr(_v25))) - _v521 = int32(_v519 ^ _v520) - if _v521 != 0 { - goto l113 - } - goto l114 -l113: - _v523 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v525 = *(*int64)(unsafe.Pointer(uintptr(_v24))) - _v526 = int64(_v14 + int64(0)) - _v527 = int64(_v526 + int64(0)) - _v528 = *(*int64)(unsafe.Pointer(uintptr(_v527))) - *(*int32)(unsafe.Pointer(bp + 104)) = _v523 - - *(*int64)(unsafe.Pointer(bp + 112)) = _v4 - - *(*int64)(unsafe.Pointer(bp + 120)) = _v525 - - *(*int64)(unsafe.Pointer(bp + 128)) = _v528 - s_errorMessage(t, int64(uintptr(unsafe.Pointer(&s__108))), bp+104) - goto l114 -l114: - _v529 = *(*int64)(unsafe.Pointer(uintptr(_v24))) - Xsqlite3_free(t, _v529) - _v532 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 116)) - _v533 = int32(int32(_v532) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 116)) = _v533 - _v534 = int64(_v14 + int64(0)) - s_stringReset(t, _v534) - goto l235 -l115: - _v537 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__109)))) - _v539 = crt.Bool32(int32(_v537) == int32(0)) - if _v539 != 0 { - goto l116 - } - goto l117 -l116: - _v541 = int64(_v14 + int64(0)) - _v542 = int64(_v541 + int64(0)) - _v543 = *(*int64)(unsafe.Pointer(uintptr(_v542))) - *(*int64)(unsafe.Pointer(bp + 136)) = _v543 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__55))), bp+136) - goto l234 -l117: - _v546 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__110)))) - _v548 = crt.Bool32(int32(_v546) == int32(0)) - if _v548 != 0 { - goto l118 - } - goto l142 -l118: - *(*int64)(unsafe.Pointer(uintptr(_v28))) = int64(0) - _v555 = int64(_v17 + int64(0)) - _v556 = int64(_v26 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v556))) = _v555 - _v560 = *(*int64)(unsafe.Pointer(uintptr(_v26))) - _v561 = int64(_v560 + int64(0)) - _v562 = int32(*(*int8)(unsafe.Pointer(uintptr(_v561)))) - _v563 = int32(int8(_v562)) - _v565 = crt.Bool32(int32(_v563) == int32(47)) - goto l119 -l119: - if _v565 != 0 { - goto l120 - } - goto l270 -l270: - _v566 = 1 - goto l121 -l120: - _v566 = 0 - goto l121 -l121: - if _v566 != 0 { - goto l122 - } - goto l271 -l271: - goto l137 -l122: - _v568 = crt.Xstrlen(t, _v4) - _v569 = int32(int32(int32(_v568)) & int32(-1)) - _v571 = int32(int32(_v569) - int32(1)) - _v572 = int64(_v29 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v572))) = _v571 - goto l123 -l123: - _v573 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v575 = crt.Bool32(int32(_v573) >= int32(0)) - goto l124 -l124: - if _v575 != 0 { - goto l125 - } - goto l272 -l272: - _v586 = 0 - goto l131 -l125: - _v576 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v577 = int64(int32(_v576)) - _v578 = int64(_v577 * int64(1)) - _v580 = int64(_v4 + _v578) - _v581 = int32(*(*int8)(unsafe.Pointer(uintptr(_v580)))) - _v582 = int32(int8(_v581)) - _v584 = crt.Bool32(int32(_v582) == int32(47)) - goto l126 -l126: - if _v584 != 0 { - goto l127 - } - goto l273 -l273: - _v585 = 1 - goto l128 -l127: - _v585 = 0 - goto l128 -l128: - goto l129 -l129: - if _v585 != 0 { - goto l130 - } - goto l274 -l274: - _v586 = 0 - goto l131 -l130: - _v586 = 1 - goto l131 -l131: - if _v586 != 0 { - goto l132 - } - goto l134 -l132: - goto l133 -l133: - _v587 = int64(_v29 + int64(0)) - _v588 = *(*int32)(unsafe.Pointer(uintptr(_v587))) - _v589 = int32(int32(_v588) - int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v587))) = _v589 - goto l123 -l134: - _v590 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v592 = crt.Bool32(int32(_v590) > int32(0)) - if _v592 != 0 { - goto l135 - } - goto l136 -l135: - _v594 = *(*int32)(unsafe.Pointer(uintptr(_v29))) - _v596 = *(*int64)(unsafe.Pointer(uintptr(_v26))) - *(*int32)(unsafe.Pointer(bp + 144)) = _v594 - - *(*int64)(unsafe.Pointer(bp + 152)) = _v4 - - *(*int64)(unsafe.Pointer(bp + 160)) = _v596 - - _v597 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__111))), bp+144) - _v598 = int64(_v28 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v598))) = _v597 - _v599 = *(*int64)(unsafe.Pointer(uintptr(_v598))) - _v600 = int64(_v26 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v600))) = _v599 - goto l136 -l136: - goto l137 -l137: - _v601 = *(*int64)(unsafe.Pointer(uintptr(_v26))) - _v602 = s_readFile(t, _v601) - _v603 = int64(_v27 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v603))) = _v602 - _v606 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - if _v606 != 0 { - goto l138 - } - goto l139 -l138: - _v608 = *(*int64)(unsafe.Pointer(uintptr(_v26))) - *(*int64)(unsafe.Pointer(bp + 168)) = _v608 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__112))), bp+168) - goto l139 -l139: - _v611 = *(*int64)(unsafe.Pointer(uintptr(_v27))) - _v612 = *(*int64)(unsafe.Pointer(uintptr(_v26))) - s_runScript(t, 0, 0, _v611, _v612) - _v613 = *(*int64)(unsafe.Pointer(uintptr(_v27))) - Xsqlite3_free(t, _v613) - _v616 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - if _v616 != 0 { - goto l140 - } - goto l141 -l140: - _v618 = *(*int64)(unsafe.Pointer(uintptr(_v26))) - *(*int64)(unsafe.Pointer(bp + 176)) = _v618 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__113))), bp+176) - goto l141 -l141: - _v619 = *(*int64)(unsafe.Pointer(uintptr(_v28))) - Xsqlite3_free(t, _v619) - goto l233 -l142: - _v622 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__114)))) - _v624 = crt.Bool32(int32(_v622) == int32(0)) - if _v624 != 0 { - goto l143 - } - goto l153 -l143: - _v626 = int64(_v30 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v626))) = 7 - goto l144 -l144: - _v627 = *(*int32)(unsafe.Pointer(uintptr(_v30))) - _v628 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v629 = crt.Bool32(int32(_v627) < int32(_v628)) - goto l145 -l145: - if _v629 != 0 { - goto l146 - } - goto l275 -l275: - _v650 = 0 - goto l149 -l146: - _v630 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v631 = *(*int32)(unsafe.Pointer(uintptr(_v30))) - _v632 = int32(int32(_v630) + int32(_v631)) - _v633 = int64(int32(_v632)) - _v634 = int64(_v633 * int64(1)) - _v636 = int64(_v3 + _v634) - _v637 = int32(*(*int8)(unsafe.Pointer(uintptr(_v636)))) - _v638 = int32(int32(uint8(_v637))) - _v639 = int64(int32(_v638)) - _v640 = int64(_v639 * int64(2)) - _v641 = crt.X__ctype_b_loc(t) - _v642 = *(*int64)(unsafe.Pointer(uintptr(_v641))) - _v643 = int64(_v642 + _v640) - _v644 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v643)))) - _v645 = int32(uint16(_v644)) - _v649 = int32(int32(_v645) & int32(8192)) - goto l147 -l147: - if _v649 != 0 { - goto l148 - } - goto l276 -l276: - _v650 = 0 - goto l149 -l148: - _v650 = 1 - goto l149 -l149: - if _v650 != 0 { - goto l150 - } - goto l152 -l150: - goto l151 -l151: - _v651 = int64(_v30 + int64(0)) - _v652 = *(*int32)(unsafe.Pointer(uintptr(_v651))) - _v653 = int32(int32(_v652) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v651))) = _v653 - goto l144 -l152: - _v655 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v656 = *(*int32)(unsafe.Pointer(uintptr(_v30))) - _v657 = int32(int32(_v655) - int32(_v656)) - _v659 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v660 = int64(int32(_v659)) - _v661 = int64(_v3 + _v660) - _v662 = *(*int32)(unsafe.Pointer(uintptr(_v30))) - _v663 = int64(int32(_v662)) - _v664 = int64(_v661 + _v663) - *(*int32)(unsafe.Pointer(bp + 184)) = _v657 - - *(*int64)(unsafe.Pointer(bp + 192)) = _v664 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__98))), bp+184) - goto l232 -l153: - _v667 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__115)))) - _v669 = crt.Bool32(int32(_v667) == int32(0)) - if _v669 != 0 { - goto l154 - } - goto l171 -l154: - _v671 = int64(_v31 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v671))) = 4 - goto l155 -l155: - _v672 = *(*int32)(unsafe.Pointer(uintptr(_v31))) - _v673 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v674 = crt.Bool32(int32(_v672) < int32(_v673)) - goto l156 -l156: - if _v674 != 0 { - goto l157 - } - goto l277 -l277: - _v695 = 0 - goto l160 -l157: - _v675 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v676 = *(*int32)(unsafe.Pointer(uintptr(_v31))) - _v677 = int32(int32(_v675) + int32(_v676)) - _v678 = int64(int32(_v677)) - _v679 = int64(_v678 * int64(1)) - _v681 = int64(_v3 + _v679) - _v682 = int32(*(*int8)(unsafe.Pointer(uintptr(_v681)))) - _v683 = int32(int32(uint8(_v682))) - _v684 = int64(int32(_v683)) - _v685 = int64(_v684 * int64(2)) - _v686 = crt.X__ctype_b_loc(t) - _v687 = *(*int64)(unsafe.Pointer(uintptr(_v686))) - _v688 = int64(_v687 + _v685) - _v689 = int32(*(*uint16)(unsafe.Pointer(uintptr(_v688)))) - _v690 = int32(uint16(_v689)) - _v694 = int32(int32(_v690) & int32(8192)) - goto l158 -l158: - if _v694 != 0 { - goto l159 - } - goto l278 -l278: - _v695 = 0 - goto l160 -l159: - _v695 = 1 - goto l160 -l160: - if _v695 != 0 { - goto l161 - } - goto l163 -l161: - goto l162 -l162: - _v696 = int64(_v31 + int64(0)) - _v697 = *(*int32)(unsafe.Pointer(uintptr(_v696))) - _v698 = int32(int32(_v697) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v696))) = _v698 - goto l155 -l163: - _v700 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v701 = *(*int32)(unsafe.Pointer(uintptr(_v31))) - _v702 = int32(int32(_v700) - int32(_v701)) - _v704 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v705 = int64(int32(_v704)) - _v706 = int64(_v3 + _v705) - _v707 = *(*int32)(unsafe.Pointer(uintptr(_v31))) - _v708 = int64(int32(_v707)) - _v709 = int64(_v706 + _v708) - *(*int32)(unsafe.Pointer(bp + 200)) = _v702 - - *(*int64)(unsafe.Pointer(bp + 208)) = _v709 - - _v710 = s_prepareSql(t, int64(uintptr(unsafe.Pointer(&s__116))), bp+200) - _v711 = int64(_v33 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v711))) = _v710 - _v712 = *(*int64)(unsafe.Pointer(uintptr(_v33))) - _v713 = Xsqlite3_step(t, _v712) - _v714 = int64(_v32 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v714))) = _v713 - _v715 = *(*int32)(unsafe.Pointer(uintptr(_v32))) - _v717 = crt.Bool32(int32(_v715) != int32(100)) - goto l164 -l164: - if _v717 != 0 { - goto l279 - } - goto l165 -l279: - _v723 = 1 - goto l168 -l165: - _v718 = *(*int64)(unsafe.Pointer(uintptr(_v33))) - _v720 = Xsqlite3_column_int(t, _v718, 0) - _v722 = crt.Bool32(int32(_v720) == int32(0)) - goto l166 -l166: - if _v722 != 0 { - goto l280 - } - goto l167 -l280: - _v723 = 1 - goto l168 -l167: - _v723 = 0 - goto l168 -l168: - if _v723 != 0 { - goto l169 - } - goto l170 -l169: - _v725 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v726 = int64(int32(_v725)) - _v727 = int64(_v3 + _v726) - _v728 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v729 = int64(int32(_v728)) - _v730 = int64(_v727 + _v729) - _v732 = int64(_v5 + int64(0)) - _v733 = s_findEndif(t, _v730, 1, _v732) - _v734 = int64(_v7 + int64(0)) - _v735 = *(*int32)(unsafe.Pointer(uintptr(_v734))) - _v736 = int32(int32(_v735) + int32(_v733)) - *(*int32)(unsafe.Pointer(uintptr(_v734))) = _v736 - goto l170 -l170: - _v737 = *(*int64)(unsafe.Pointer(uintptr(_v33))) - _ = Xsqlite3_finalize(t, _v737) - goto l231 -l171: - _v741 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__117)))) - _v743 = crt.Bool32(int32(_v741) == int32(0)) - if _v743 != 0 { - goto l172 - } - goto l173 -l172: - _v745 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v746 = int64(int32(_v745)) - _v747 = int64(_v3 + _v746) - _v748 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v749 = int64(int32(_v748)) - _v750 = int64(_v747 + _v749) - _v752 = int64(_v5 + int64(0)) - _v753 = s_findEndif(t, _v750, 0, _v752) - _v754 = int64(_v7 + int64(0)) - _v755 = *(*int32)(unsafe.Pointer(uintptr(_v754))) - _v756 = int32(int32(_v755) + int32(_v753)) - *(*int32)(unsafe.Pointer(uintptr(_v754))) = _v756 - goto l230 -l173: - _v759 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__118)))) - _v761 = crt.Bool32(int32(_v759) == int32(0)) - if _v761 != 0 { - goto l174 - } - goto l175 -l174: - goto l229 -l175: - _v764 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__119)))) - _v766 = crt.Bool32(int32(_v764) == int32(0)) - goto l176 -l176: - if _v766 != 0 { - goto l177 - } - goto l281 -l281: - _v770 = 0 - goto l180 -l177: - _v769 = crt.Bool32(int32(_v1) == int32(0)) - goto l178 -l178: - if _v769 != 0 { - goto l179 - } - goto l282 -l282: - _v770 = 0 - goto l180 -l179: - _v770 = 1 - goto l180 -l180: - if _v770 != 0 { - goto l181 - } - goto l184 -l181: - _v775 = int64(_v17 + int64(0)) - _v776 = crt.Xatoi(t, _v775) - *(*int32)(unsafe.Pointer(uintptr(_v34))) = _v776 - _v777 = *(*int32)(unsafe.Pointer(uintptr(_v34))) - _v779 = crt.Bool32(int32(_v777) > int32(0)) - if _v779 != 0 { - goto l182 - } - goto l183 -l182: - _v780 = *(*int32)(unsafe.Pointer(uintptr(_v34))) - s_startClient(t, _v780) - goto l183 -l183: - goto l228 -l184: - _v783 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__120)))) - _v785 = crt.Bool32(int32(_v783) == int32(0)) - goto l185 -l185: - if _v785 != 0 { - goto l186 - } - goto l283 -l283: - _v789 = 0 - goto l189 -l186: - _v788 = crt.Bool32(int32(_v1) == int32(0)) - goto l187 -l187: - if _v788 != 0 { - goto l188 - } - goto l284 -l284: - _v789 = 0 - goto l189 -l188: - _v789 = 1 - goto l189 -l189: - if _v789 != 0 { - goto l190 - } - goto l197 -l190: - _v790 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v792 = crt.Bool32(int32(_v790) >= int32(2)) - goto l191 -l191: - if _v792 != 0 { - goto l192 - } - goto l194 -l192: - _v797 = int64(_v17 + int64(100)) - _v798 = crt.Xatoi(t, _v797) - goto l193 -l193: - _v800 = _v798 - goto l196 -l194: - goto l195 -l195: - _v800 = 10000 - goto l196 -l196: - *(*int32)(unsafe.Pointer(uintptr(_v35))) = _v800 - _v805 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - *(*int32)(unsafe.Pointer(bp + 216)) = _v805 - - *(*int64)(unsafe.Pointer(bp + 224)) = _v4 - - _ = Xsqlite3_snprintf(t, 1000, _v16, int64(uintptr(unsafe.Pointer(&s__121))), bp+216) - _v812 = int64(_v17 + int64(0)) - _v813 = crt.Xatoi(t, _v812) - _v814 = *(*int32)(unsafe.Pointer(uintptr(_v35))) - s_waitForClient(t, _v813, _v814, _v16) - goto l227 -l197: - _v818 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__122)))) - _v820 = crt.Bool32(int32(_v818) == int32(0)) - goto l198 -l198: - if _v820 != 0 { - goto l199 - } - goto l285 -l285: - _v824 = 0 - goto l202 -l199: - _v823 = crt.Bool32(int32(_v1) == int32(0)) - goto l200 -l200: - if _v823 != 0 { - goto l201 - } - goto l286 -l286: - _v824 = 0 - goto l202 -l201: - _v824 = 1 - goto l202 -l202: - if _v824 != 0 { - goto l203 - } - goto l210 -l203: - _v829 = int64(_v17 + int64(0)) - _v830 = crt.Xatoi(t, _v829) - *(*int32)(unsafe.Pointer(uintptr(_v36))) = _v830 - _v832 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v833 = int64(int32(_v832)) - _v834 = int64(_v3 + _v833) - _v835 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v836 = int64(int32(_v835)) - _v837 = int64(_v834 + _v836) - _v838 = int64(_v5 + int64(0)) - _v839 = s_findEnd(t, _v837, _v838) - _v840 = int64(_v37 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v840))) = _v839 - _v841 = *(*int32)(unsafe.Pointer(uintptr(_v36))) - _v843 = crt.Bool32(int32(_v841) < int32(0)) - if _v843 != 0 { - goto l204 - } - goto l205 -l204: - _v845 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v847 = *(*int32)(unsafe.Pointer(uintptr(_v36))) - *(*int32)(unsafe.Pointer(bp + 232)) = _v845 - - *(*int64)(unsafe.Pointer(bp + 240)) = _v4 - - *(*int32)(unsafe.Pointer(bp + 248)) = _v847 - s_errorMessage(t, int64(uintptr(unsafe.Pointer(&s__123))), bp+232) - goto l209 -l205: - _v849 = *(*int32)(unsafe.Pointer(uintptr(_v37))) - _v851 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v852 = int64(int32(_v851)) - _v853 = int64(_v3 + _v852) - _v854 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v855 = int64(int32(_v854)) - _v856 = int64(_v853 + _v855) - *(*int32)(unsafe.Pointer(bp + 256)) = _v849 - - *(*int64)(unsafe.Pointer(bp + 264)) = _v856 - - _v857 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__98))), bp+256) - _v858 = int64(_v38 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v858))) = _v857 - _v859 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v861 = crt.Bool32(int32(_v859) > int32(1)) - if _v861 != 0 { - goto l206 - } - goto l207 -l206: - _v867 = int64(_v17 + int64(100)) - *(*int64)(unsafe.Pointer(bp + 272)) = _v867 - - _v868 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__55))), bp+272) - _v869 = int64(_v39 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v869))) = _v868 - goto l208 -l207: - _v872 = s_filenameTail(t, _v4) - _v873 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - *(*int64)(unsafe.Pointer(bp + 280)) = _v872 - - *(*int32)(unsafe.Pointer(bp + 288)) = _v873 - - _v874 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__124))), bp+280) - _v875 = int64(_v39 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v875))) = _v874 - goto l208 -l208: - _v876 = *(*int32)(unsafe.Pointer(uintptr(_v36))) - s_startClient(t, _v876) - _v878 = *(*int32)(unsafe.Pointer(uintptr(_v36))) - _v879 = *(*int64)(unsafe.Pointer(uintptr(_v38))) - _v880 = *(*int64)(unsafe.Pointer(uintptr(_v39))) - *(*int32)(unsafe.Pointer(bp + 296)) = _v878 - - *(*int64)(unsafe.Pointer(bp + 304)) = _v879 - - *(*int64)(unsafe.Pointer(bp + 312)) = _v880 - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__125))), bp+296) - _v881 = *(*int64)(unsafe.Pointer(uintptr(_v38))) - Xsqlite3_free(t, _v881) - _v882 = *(*int64)(unsafe.Pointer(uintptr(_v39))) - Xsqlite3_free(t, _v882) - goto l209 -l209: - _v884 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v885 = int64(int32(_v884)) - _v886 = int64(_v3 + _v885) - _v887 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v888 = int64(int32(_v887)) - _v889 = int64(_v886 + _v888) - _v890 = *(*int32)(unsafe.Pointer(uintptr(_v37))) - _v891 = int64(int32(_v890)) - _v892 = int64(_v889 + _v891) - _v893 = int64(_v5 + int64(0)) - _v894 = s_tokenLength(t, _v892, _v893) - _v895 = int64(_v37 + int64(0)) - _v896 = *(*int32)(unsafe.Pointer(uintptr(_v895))) - _v897 = int32(int32(_v896) + int32(_v894)) - *(*int32)(unsafe.Pointer(uintptr(_v895))) = _v897 - _v898 = *(*int32)(unsafe.Pointer(uintptr(_v37))) - _v899 = int64(_v12 + int64(0)) - _v900 = *(*int32)(unsafe.Pointer(uintptr(_v899))) - _v901 = int32(int32(_v900) + int32(_v898)) - *(*int32)(unsafe.Pointer(uintptr(_v899))) = _v901 - _v902 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v903 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v904 = int32(int32(_v902) + int32(_v903)) - _v905 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v905))) = _v904 - goto l226 -l210: - _v908 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__126)))) - _v910 = crt.Bool32(int32(_v908) == int32(0)) - if _v910 != 0 { - goto l211 - } - goto l212 -l211: - s_test_breakpoint(t) - goto l225 -l212: - _v913 = crt.Xstrcmp(t, _v15, int64(uintptr(unsafe.Pointer(&s__127)))) - _v915 = crt.Bool32(int32(_v913) == int32(0)) - if _v915 != 0 { - goto l213 - } - goto l223 -l213: - _v916 = *(*int32)(unsafe.Pointer(uintptr(_v13))) - _v918 = crt.Bool32(int32(_v916) >= int32(1)) - goto l214 -l214: - if _v918 != 0 { - goto l215 - } - goto l220 -l215: - _v923 = int64(_v17 + int64(0)) - _v924 = s_booleanValue(t, _v923) - goto l216 -l216: - if _v924 != 0 { - goto l217 - } - goto l287 -l287: - _v925 = 1 - goto l218 -l217: - _v925 = 0 - goto l218 -l218: - goto l219 -l219: - _v927 = int32(_v925) - goto l222 -l220: - goto l221 -l221: - _v927 = 1 - goto l222 -l222: - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 108)) = _v927 - goto l224 -l223: - _v931 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - *(*int32)(unsafe.Pointer(bp + 320)) = _v931 - - *(*int64)(unsafe.Pointer(bp + 328)) = _v4 - - *(*int64)(unsafe.Pointer(bp + 336)) = _v15 - s_errorMessage(t, int64(uintptr(unsafe.Pointer(&s__128))), bp+320) - goto l224 -l224: - goto l225 -l225: - goto l226 -l226: - goto l227 -l227: - goto l228 -l228: - goto l229 -l229: - goto l230 -l230: - goto l231 -l231: - goto l232 -l232: - goto l233 -l233: - goto l234 -l234: - goto l235 -l235: - goto l236 -l236: - goto l237 -l237: - goto l238 -l238: - goto l239 -l239: - goto l240 -l240: - goto l241 -l241: - _v934 = *(*int32)(unsafe.Pointer(uintptr(_v12))) - _v935 = int64(_v7 + int64(0)) - _v936 = *(*int32)(unsafe.Pointer(uintptr(_v935))) - _v937 = int32(int32(_v936) + int32(_v934)) - *(*int32)(unsafe.Pointer(uintptr(_v935))) = _v937 - goto l2 -l242: - _v938 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v939 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v940 = crt.Bool32(int32(_v938) < int32(_v939)) - if _v940 != 0 { - goto l243 - } - goto l244 -l243: - _v942 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v943 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v944 = int32(int32(_v942) - int32(_v943)) - _v946 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v947 = int64(int32(_v946)) - _v948 = int64(_v3 + _v947) - *(*int32)(unsafe.Pointer(bp + 344)) = _v944 - - *(*int64)(unsafe.Pointer(bp + 352)) = _v948 - - _v949 = Xsqlite3_mprintf(t, int64(uintptr(unsafe.Pointer(&s__98))), bp+344) - *(*int64)(unsafe.Pointer(uintptr(_v40))) = _v949 - _v950 = *(*int64)(unsafe.Pointer(uintptr(_v40))) - s_runSql(t, _v950, 0) - _v951 = *(*int64)(unsafe.Pointer(uintptr(_v40))) - Xsqlite3_free(t, _v951) - goto l244 -l244: - _v952 = int64(_v14 + int64(0)) - s_stringFree(t, _v952) - goto l245 -l245: -} +// Neither process nor thread sporadic server interfaces is available. -var s__97 = [10]byte{0x72, 0x75, 0x6e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74} +// trace.h is not available. -var s__98 = [5]byte{0x25, 0x2e, 0x2a, 0x73} +// Typed memory objects are not available. -var s__99 = [6]byte{0x73, 0x6c, 0x65, 0x65, 0x70} +// Get the environment definitions from Unix98. +// Copyright (C) 1999-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. -var s__100 = [5]byte{0x65, 0x78, 0x69, 0x74} +// Determine the wordsize from the preprocessor defines. -var s__101 = [9]byte{0x74, 0x65, 0x73, 0x74, 0x63, 0x61, 0x73, 0x65} +// Both x86-64 and x32 use the 64-bit system call interface. -var s__102 = [7]byte{0x66, 0x69, 0x6e, 0x69, 0x73, 0x68} +// This header should define the following symbols under the described +// situations. A value `1' means that the model is always supported, +// `-1' means it is never supported. Undefined means it cannot be +// statically decided. +// +// _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type +// _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type +// +// _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type +// _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type +// +// The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, +// _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, +// _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were +// used in previous versions of the Unix standard and are available +// only for compatibility. -var s__103 = [6]byte{0x72, 0x65, 0x73, 0x65, 0x74} +// Environments with 32-bit wide pointers are optionally provided. +// Therefore following macros aren't defined: +// # undef _POSIX_V7_ILP32_OFF32 +// # undef _POSIX_V7_ILP32_OFFBIG +// # undef _POSIX_V6_ILP32_OFF32 +// # undef _POSIX_V6_ILP32_OFFBIG +// # undef _XBS5_ILP32_OFF32 +// # undef _XBS5_ILP32_OFFBIG +// and users need to check at runtime. + +// We also have no use (for now) for an environment with bigger pointers +// and offsets. -var s__104 = [6]byte{0x6d, 0x61, 0x74, 0x63, 0x68} +// By default we have 64-bit wide `long int', pointers and `off_t'. -var s__105 = [45]byte{ - 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x25, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x73, 0x3a, 0x0a, 0x45, - 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x5b, 0x25, 0x2e, 0x2a, 0x73, 0x5d, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x47, 0x6f, 0x74, 0x20, 0x5b, 0x25, 0x73, 0x5d, +// Standard file descriptors. + +// All functions that are not declared anywhere else. + +// bits/types.h -- definitions of __*_t types underlying *_t types. +// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// Never include this file directly; use <sys/types.h> instead. + +// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// +//This file is part of GCC. +// +//GCC is free software; you can redistribute it and/or modify +//it under the terms of the GNU General Public License as published by +//the Free Software Foundation; either version 3, or (at your option) +//any later version. +// +//GCC is distributed in the hope that it will be useful, +//but WITHOUT ANY WARRANTY; without even the implied warranty of +//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +//GNU General Public License for more details. +// +//Under Section 7 of GPL version 3, you are granted additional +//permissions described in the GCC Runtime Library Exception, version +//3.1, as published by the Free Software Foundation. +// +//You should have received a copy of the GNU General Public License and +//a copy of the GCC Runtime Library Exception along with this program; +//see the files COPYING3 and COPYING.RUNTIME respectively. If not, see +//<http://www.gnu.org/licenses/>. + +// ISO C Standard: 7.17 Common definitions <stddef.h> + +// Any one of these symbols __need_* means that GNU libc +// wants us just to define one data type. So don't define +// the symbols that indicate this file's entire job has been done. + +// This avoids lossage on SunOS but only if stdtypes.h comes first. +// There's no way to win with the other order! Sun lossage. + +// On 4.3bsd-net2, make sure ansi.h is included, so we have +// one less case to deal with in the following. +// On FreeBSD 5, machine/ansi.h does not exist anymore... + +// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are +// defined if the corresponding type is *not* defined. +// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. +// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ + +// Sequent's header files use _PTRDIFF_T_ in some conflicting way. +// Just ignore it. + +// On VxWorks, <type/vxTypesBase.h> may have defined macros like +// _TYPE_size_t which will typedef size_t. fixincludes patched the +// vxTypesBase.h so that this macro is only defined if _GCC_SIZE_T is +// not defined, and so that defining this macro defines _GCC_SIZE_T. +// If we find that the macros are still defined at this point, we must +// invoke them so that the type is defined as expected. + +// In case nobody has defined these types, but we aren't running under +// GCC 2.00, make sure that __PTRDIFF_TYPE__, __SIZE_TYPE__, and +// __WCHAR_TYPE__ have reasonable values. This can happen if the +// parts of GCC is compiled by an older compiler, that actually +// include gstddef.h, such as collect2. + +// Signed type of difference of two pointers. + +// Define this type if we are doing the whole job, +// or if we want this type in particular. + +// Unsigned type of `sizeof' something. + +// Define this type if we are doing the whole job, +// or if we want this type in particular. + +// Wide character type. +// Locale-writers should change this as necessary to +// be big enough to hold unique values not between 0 and 127, +// and not (wchar_t) -1, for each defined multibyte character. + +// Define this type if we are doing the whole job, +// or if we want this type in particular. + +// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. +// are already defined. +// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. +// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. + +// A null pointer constant. + +// The Single Unix specification says that some more types are +// available here. +type gid_t = uint32 /* unistd.h:232:17 */ + +type uid_t = uint32 /* unistd.h:237:17 */ + +type useconds_t = uint32 /* unistd.h:255:22 */ + +type pid_t = int32 /* unistd.h:260:17 */ + +type intptr_t = int64 /* unistd.h:267:20 */ + +type socklen_t = uint32 /* unistd.h:274:21 */ + +// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. +// are already defined. +// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. +// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. + +// A null pointer constant. + +// XPG requires a few symbols from <sys/wait.h> being defined. +// Definitions of flag bits for `waitpid' et al. +// Copyright (C) 1992-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// Bits in the third argument to `waitpid'. + +// Bits in the fourth argument to `waitid'. + +// The following values are used by the `waitid' function. + +// The Linux kernel defines these bare, rather than an enum, +// which causes a conflict if the include order is reversed. + +type idtype_t = uint32 /* waitflags.h:57:3 */ + +// Returned by `div'. +type div_t = struct { + quot int32 + rem int32 +} /* stdlib.h:62:5 */ + +// Returned by `ldiv'. +type ldiv_t = struct { + quot int64 + rem int64 +} /* stdlib.h:70:5 */ + +// Returned by `lldiv'. +type lldiv_t = struct { + quot int64 + rem int64 +} /* stdlib.h:80:5 */ + +// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// POSIX Standard: 2.6 Primitive System Data Types <sys/types.h> + +// Copyright (C) 1991-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// bits/types.h -- definitions of __*_t types underlying *_t types. +// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// Never include this file directly; use <sys/types.h> instead. + +type u_char = uint8 /* types.h:33:18 */ +type u_short = uint16 /* types.h:34:19 */ +type u_int = uint32 /* types.h:35:17 */ +type u_long = uint64 /* types.h:36:18 */ +type quad_t = int64 /* types.h:37:18 */ +type u_quad_t = uint64 /* types.h:38:20 */ +type fsid_t = struct{ __val [2]int32 } /* types.h:39:18 */ +type loff_t = int64 /* types.h:42:18 */ + +type ino_t = uint64 /* types.h:47:17 */ + +type dev_t = uint64 /* types.h:59:17 */ + +type mode_t = uint32 /* types.h:69:18 */ + +type nlink_t = uint64 /* types.h:74:19 */ + +type id_t = uint32 /* types.h:103:16 */ + +type daddr_t = int32 /* types.h:114:19 */ +type caddr_t = uintptr /* types.h:115:19 */ + +type key_t = int32 /* types.h:121:17 */ + +// bits/types.h -- definitions of __*_t types underlying *_t types. +// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// Never include this file directly; use <sys/types.h> instead. + +// Returned by `clock'. +type clock_t = int64 /* clock_t.h:7:19 */ + +// bits/types.h -- definitions of __*_t types underlying *_t types. +// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// Never include this file directly; use <sys/types.h> instead. + +// Clock ID used in clock and timer functions. +type clockid_t = int32 /* clockid_t.h:7:21 */ + +// bits/types.h -- definitions of __*_t types underlying *_t types. +// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// Never include this file directly; use <sys/types.h> instead. + +// Returned by `time'. +type time_t = int64 /* time_t.h:7:18 */ + +// bits/types.h -- definitions of __*_t types underlying *_t types. +// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// Never include this file directly; use <sys/types.h> instead. + +// Timer ID returned by `timer_create'. +type timer_t = uintptr /* timer_t.h:7:19 */ + +// Copyright (C) 1989-2018 Free Software Foundation, Inc. +// +//This file is part of GCC. +// +//GCC is free software; you can redistribute it and/or modify +//it under the terms of the GNU General Public License as published by +//the Free Software Foundation; either version 3, or (at your option) +//any later version. +// +//GCC is distributed in the hope that it will be useful, +//but WITHOUT ANY WARRANTY; without even the implied warranty of +//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +//GNU General Public License for more details. +// +//Under Section 7 of GPL version 3, you are granted additional +//permissions described in the GCC Runtime Library Exception, version +//3.1, as published by the Free Software Foundation. +// +//You should have received a copy of the GNU General Public License and +//a copy of the GCC Runtime Library Exception along with this program; +//see the files COPYING3 and COPYING.RUNTIME respectively. If not, see +//<http://www.gnu.org/licenses/>. + +// ISO C Standard: 7.17 Common definitions <stddef.h> + +// Any one of these symbols __need_* means that GNU libc +// wants us just to define one data type. So don't define +// the symbols that indicate this file's entire job has been done. + +// This avoids lossage on SunOS but only if stdtypes.h comes first. +// There's no way to win with the other order! Sun lossage. + +// On 4.3bsd-net2, make sure ansi.h is included, so we have +// one less case to deal with in the following. +// On FreeBSD 5, machine/ansi.h does not exist anymore... + +// In 4.3bsd-net2, machine/ansi.h defines these symbols, which are +// defined if the corresponding type is *not* defined. +// FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_. +// NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ + +// Sequent's header files use _PTRDIFF_T_ in some conflicting way. +// Just ignore it. + +// On VxWorks, <type/vxTypesBase.h> may have defined macros like +// _TYPE_size_t which will typedef size_t. fixincludes patched the +// vxTypesBase.h so that this macro is only defined if _GCC_SIZE_T is +// not defined, and so that defining this macro defines _GCC_SIZE_T. +// If we find that the macros are still defined at this point, we must +// invoke them so that the type is defined as expected. + +// In case nobody has defined these types, but we aren't running under +// GCC 2.00, make sure that __PTRDIFF_TYPE__, __SIZE_TYPE__, and +// __WCHAR_TYPE__ have reasonable values. This can happen if the +// parts of GCC is compiled by an older compiler, that actually +// include gstddef.h, such as collect2. + +// Signed type of difference of two pointers. + +// Define this type if we are doing the whole job, +// or if we want this type in particular. + +// Unsigned type of `sizeof' something. + +// Define this type if we are doing the whole job, +// or if we want this type in particular. + +// Wide character type. +// Locale-writers should change this as necessary to +// be big enough to hold unique values not between 0 and 127, +// and not (wchar_t) -1, for each defined multibyte character. + +// Define this type if we are doing the whole job, +// or if we want this type in particular. + +// In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. +// are already defined. +// BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. +// NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. + +// A null pointer constant. + +// Old compatibility names for C types. +type ulong = uint64 /* types.h:148:27 */ +type ushort = uint16 /* types.h:149:28 */ +type uint = uint32 /* types.h:150:22 */ + +// These size-specific names are used by some of the inet code. + +// Define intN_t types. +// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// bits/types.h -- definitions of __*_t types underlying *_t types. +// Copyright (C) 2002-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// Never include this file directly; use <sys/types.h> instead. + +type int8_t = int8 /* stdint-intn.h:24:18 */ +type int16_t = int16 /* stdint-intn.h:25:19 */ +type int32_t = int32 /* stdint-intn.h:26:19 */ +type int64_t = int64 /* stdint-intn.h:27:19 */ + +// These were defined by ISO C without the first `_'. +type u_int8_t = uint8 /* types.h:160:23 */ +type u_int16_t = uint16 /* types.h:161:28 */ +type u_int32_t = uint32 /* types.h:162:22 */ +type u_int64_t = uint64 /* types.h:164:27 */ + +type register_t = int32 /* types.h:169:13 */ + +// A set of signals to be blocked, unblocked, or waited for. +type sigset_t = struct{ __val [16]uint64 } /* sigset_t.h:7:20 */ + +type suseconds_t = int64 /* select.h:43:23 */ + +// Some versions of <linux/posix_types.h> define this macros. +// It's easier to assume 8-bit bytes than to get CHAR_BIT. + +// fd_set for select and pselect. +type fd_set = struct{ __fds_bits [16]int64 } /* select.h:70:5 */ + +// Maximum number of file descriptors in `fd_set'. + +// Sometimes the fd_set member is assumed to have this type. +type fd_mask = int64 /* select.h:77:19 */ + +// Define some inlines helping to catch common problems. + +type blksize_t = int64 /* types.h:202:21 */ + +// Types from the Large File Support interface. +type blkcnt_t = int64 /* types.h:209:20 */ // Type to count number of disk blocks. +type fsblkcnt_t = uint64 /* types.h:213:22 */ // Type to count file system blocks. +type fsfilcnt_t = uint64 /* types.h:217:22 */ + +// Thread identifiers. The structure of the attribute type is not +// exposed on purpose. +type pthread_t = uint64 /* pthreadtypes.h:27:27 */ + +// Data structures for mutex handling. The structure of the attribute +// type is not exposed on purpose. +type pthread_mutexattr_t = struct { + _ [0]uint32 + __size [4]int8 +} /* pthreadtypes.h:36:3 */ + +// Data structure for condition variable handling. The structure of +// the attribute type is not exposed on purpose. +type pthread_condattr_t = struct { + _ [0]uint32 + __size [4]int8 +} /* pthreadtypes.h:45:3 */ + +// Keys for thread-specific data +type pthread_key_t = uint32 /* pthreadtypes.h:49:22 */ + +// Once-only execution +type pthread_once_t = int32 /* pthreadtypes.h:53:30 */ + +type pthread_attr_t1 = struct { + _ [0]uint64 + __size [56]int8 } -var s__106 = [5]byte{0x67, 0x6c, 0x6f, 0x62} - -var s__107 = [8]byte{0x6e, 0x6f, 0x74, 0x67, 0x6c, 0x6f, 0x62} - -var s__108 = [43]byte{ - 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x25, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x73, 0x3a, 0x0a, 0x45, - 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x5b, 0x25, 0x73, 0x5d, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x47, 0x6f, 0x74, 0x20, 0x5b, 0x25, 0x73, 0x5d, +type pthread_attr_t = pthread_attr_t1 /* pthreadtypes.h:62:30 */ + +type pthread_mutex_t = struct { + __data struct { + __lock int32 + __count uint32 + __owner int32 + __nusers uint32 + __kind int32 + __spins int16 + __elision int16 + __list struct { + __prev uintptr + __next uintptr + } + } +} /* pthreadtypes.h:72:3 */ + +type pthread_cond_t = struct { + __data struct { + __0 struct{ __wseq uint64 } + __8 struct{ __g1_start uint64 } + __g_refs [2]uint32 + __g_size [2]uint32 + __g1_orig_size uint32 + __wrefs uint32 + __g_signals [2]uint32 + } +} /* pthreadtypes.h:80:3 */ + +// Data structure for reader-writer lock variable handling. The +// structure of the attribute type is deliberately not exposed. +type pthread_rwlock_t = struct { + __data struct { + __readers uint32 + __writers uint32 + __wrphase_futex uint32 + __writers_futex uint32 + __pad3 uint32 + __pad4 uint32 + __cur_writer int32 + __shared int32 + __rwelision int8 + __pad1 [7]uint8 + __pad2 uint64 + __flags uint32 + _ [4]byte + } +} /* pthreadtypes.h:91:3 */ + +type pthread_rwlockattr_t = struct { + _ [0]uint64 + __size [8]int8 +} /* pthreadtypes.h:97:3 */ + +// POSIX spinlock data type. +type pthread_spinlock_t = int32 /* pthreadtypes.h:103:22 */ + +// POSIX barriers data type. The structure of the type is +// deliberately not exposed. +type pthread_barrier_t = struct { + _ [0]uint64 + __size [32]int8 +} /* pthreadtypes.h:112:3 */ + +type pthread_barrierattr_t = struct { + _ [0]uint32 + __size [4]int8 +} /* pthreadtypes.h:118:3 */ + +// POSIX.1-2008 extended locale interface (see locale.h). +// Definition of locale_t. +// Copyright (C) 2017-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// Definition of struct __locale_struct and __locale_t. +// Copyright (C) 1997-2018 Free Software Foundation, Inc. +// This file is part of the GNU C Library. +// Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. +// +// The GNU C Library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// The GNU C Library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with the GNU C Library; if not, see +// <http://www.gnu.org/licenses/>. + +// POSIX.1-2008: the locale_t type, representing a locale context +// (implementation-namespace version). This type should be treated +// as opaque by applications; some details are exposed for the sake of +// efficiency in e.g. ctype functions. + +type __locale_struct = struct { + __locales [13]uintptr + __ctype_b uintptr + __ctype_tolower uintptr + __ctype_toupper uintptr + __names [13]uintptr } -var s__109 = [7]byte{0x6f, 0x75, 0x74, 0x70, 0x75, 0x74} - -var s__110 = [7]byte{0x73, 0x6f, 0x75, 0x72, 0x63, 0x65} - -var s__111 = [8]byte{0x25, 0x2e, 0x2a, 0x73, 0x2f, 0x25, 0x73} - -var s__112 = [19]byte{ - 0x62, 0x65, 0x67, 0x69, 0x6e, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x5b, 0x25, 0x73, - 0x5d, 0x0a, +type locale_t = uintptr /* locale_t.h:24:20 */ + +// The suffix to append to the child command lines, if any + +// The directory separator character(s) + +// Mark a parameter as unused to suppress compiler warnings + +// Global data +type Global = struct { + argv0 uintptr + zVfs uintptr + zDbFile uintptr + db uintptr + zErrLog uintptr + pErrLog uintptr + zLog uintptr + pLog uintptr + zName [32]int8 + taskId int32 + iTrace int32 + bSqlTrace int32 + bIgnoreSqlErrors int32 + nError int32 + nTest int32 + iTimeout int32 + bSync int32 } -var s__113 = [17]byte{0x65, 0x6e, 0x64, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x5b, 0x25, 0x73, 0x5d, 0x0a} - -var s__114 = [6]byte{0x70, 0x72, 0x69, 0x6e, 0x74} - -var s__115 = [3]byte{0x69, 0x66} - -var s__116 = [12]byte{0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x25, 0x2e, 0x2a, 0x73} +// The suffix to append to the child command lines, if any -var s__117 = [5]byte{0x65, 0x6c, 0x73, 0x65} +// The directory separator character(s) -var s__118 = [6]byte{0x65, 0x6e, 0x64, 0x69, 0x66} +// Mark a parameter as unused to suppress compiler warnings -var s__119 = [6]byte{0x73, 0x74, 0x61, 0x72, 0x74} +// Global data +var g Global /* mptest.c:90:3: */ -var s__120 = [5]byte{0x77, 0x61, 0x69, 0x74} +// Default timeout -var s__121 = [15]byte{0x6c, 0x69, 0x6e, 0x65, 0x20, 0x25, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x73, 0x0a} +// Print a message adding zPrefix[] to the beginning of every line. +func printWithPrefix(tls *crt.TLS, pOut uintptr, zPrefix uintptr, zMsg uintptr) { /* mptest.c:98:13: */ + bp := tls.Alloc(24) + defer tls.Free(24) -var s__122 = [5]byte{0x74, 0x61, 0x73, 0x6b} - -var s__123 = [37]byte{ - 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x25, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x73, 0x3a, 0x20, 0x62, - 0x61, 0x64, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x3a, 0x20, 0x25, 0x64, + for (zMsg != 0) && (*(*int8)(unsafe.Pointer(zMsg + uintptr(0))) != 0) { + var i int32 + for i = 0; ((*(*int8)(unsafe.Pointer(zMsg + uintptr(i))) != 0) && (int32(*(*int8)(unsafe.Pointer(zMsg + uintptr(i)))) != '\n')) && (int32(*(*int8)(unsafe.Pointer(zMsg + uintptr(i)))) != '\r'); i++ { + } + crt.Xfprintf(tls, pOut, ts /* "%s%.*s\n" */, crt.VaList(bp, zPrefix, i, zMsg)) + zMsg += uintptr(i) + for (int32(*(*int8)(unsafe.Pointer(zMsg + uintptr(0)))) == '\n') || (int32(*(*int8)(unsafe.Pointer(zMsg + uintptr(0)))) == '\r') { + zMsg++ + } + } } -var s__124 = [6]byte{0x25, 0x73, 0x3a, 0x25, 0x64} - -var s__125 = [56]byte{ - 0x49, 0x4e, 0x53, 0x45, 0x52, 0x54, 0x20, 0x49, 0x4e, 0x54, 0x4f, 0x20, 0x74, 0x61, 0x73, 0x6b, - 0x28, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2c, 0x6e, - 0x61, 0x6d, 0x65, 0x29, 0x20, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x53, 0x28, 0x25, 0x64, 0x2c, 0x27, - 0x25, 0x71, 0x27, 0x2c, 0x25, 0x51, 0x29, +// Compare two pointers to strings, where the pointers might be NULL. +func safe_strcmp(tls *crt.TLS, a uintptr, b uintptr) int32 { /* mptest.c:111:12: */ + if a == b { + return 0 + } + if a == uintptr(0) { + return -1 + } + if b == uintptr(0) { + return 1 + } + return crt.Xstrcmp(tls, a, b) } -var s__126 = [11]byte{0x62, 0x72, 0x65, 0x61, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74} - -var s__127 = [16]byte{0x73, 0x68, 0x6f, 0x77, 0x2d, 0x73, 0x71, 0x6c, 0x2d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73} - -var s__128 = [36]byte{ - 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x25, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x73, 0x3a, 0x20, 0x75, - 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x20, 0x2d, - 0x2d, 0x25, 0x73, +// Return TRUE if string z[] matches glob pattern zGlob[]. +// Return FALSE if the pattern does not match. +// +// Globbing rules: +// +// '*' Matches any sequence of zero or more characters. +// +// '?' Matches exactly one character. +// +// [...] Matches one character from the enclosed list of +// characters. +// +// [^...] Matches one character not in the enclosed list. +// +// '#' Matches any sequence of one or more digits with an +// optional + or - sign in front +func strglob(tls *crt.TLS, zGlob uintptr, z uintptr) int32 { /* mptest.c:136:5: */ + var c int32 + var c2 int32 + var invert int32 + var seen int32 + + for (crt.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&zGlob, 1)))))) != 0 { + if c == '*' { + for ((crt.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&zGlob, 1)))))) == '*') || (c == '?') { + if (c == '?') && ((int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&z, 1))))) == 0) { + return 0 + } + } + if c == 0 { + return 1 + } else if c == '[' { + for (*(*int8)(unsafe.Pointer(z)) != 0) && (strglob(tls, (zGlob-uintptr(1)), z) != 0) { + z++ + } + return (crt.Bool32((int32(*(*int8)(unsafe.Pointer(z)))) != 0)) + } + for (crt.AssignInt32(&c2, int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&z, 1)))))) != 0 { + for c2 != c { + c2 = int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&z, 1)))) + if c2 == 0 { + return 0 + } + } + if strglob(tls, zGlob, z) != 0 { + return 1 + } + } + return 0 + } else if c == '?' { + if (int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&z, 1))))) == 0 { + return 0 + } + } else if c == '[' { + var prior_c int32 = 0 + seen = 0 + invert = 0 + c = int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&z, 1)))) + if c == 0 { + return 0 + } + c2 = int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&zGlob, 1)))) + if c2 == '^' { + invert = 1 + c2 = int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&zGlob, 1)))) + } + if c2 == ']' { + if c == ']' { + seen = 1 + } + c2 = int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&zGlob, 1)))) + } + for (c2 != 0) && (c2 != ']') { + if (((c2 == '-') && (int32(*(*int8)(unsafe.Pointer(zGlob + uintptr(0)))) != ']')) && (int32(*(*int8)(unsafe.Pointer(zGlob + uintptr(0)))) != 0)) && (prior_c > 0) { + c2 = int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&zGlob, 1)))) + if (c >= prior_c) && (c <= c2) { + seen = 1 + } + prior_c = 0 + } else { + if c == c2 { + seen = 1 + } + prior_c = c2 + } + c2 = int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&zGlob, 1)))) + } + if (c2 == 0) || ((seen ^ invert) == 0) { + return 0 + } + } else if c == '#' { + if ((int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '-') || (int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '+')) && ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(1))))))*2))) & int32(uint16(2048))) != 0) { + z++ + } + if !((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(0))))))*2))) & int32(uint16(2048))) != 0) { + return 0 + } + z++ + for (int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(0))))))*2))) & int32(uint16(2048))) != 0 { + z++ + } + } else { + if c != (int32(*(*int8)(unsafe.Pointer(crt.PostIncUintptr(&z, 1))))) { + return 0 + } + } + } + return (crt.Bool32(int32(*(*int8)(unsafe.Pointer(z))) == 0)) } -func s_findOption(t *crt.TLS, _v1 int64, _v2 int64, _v3 int64, _v4 int32) int64 { - bp := t.Alloc(48) - defer t.Free(48) - var _v19 int32 // %t10 - var _v111 int32 // %t102 - var _v112 int32 // %t103 - var _v113 int64 // %t104 - var _v114 int32 // %t105 - var _v115 int32 // %t106 - var _v116 int32 // %t107 - var _v117 int64 // %t108 - var _v118 int32 // %t109 - var _v20 int32 // %t11 - var _v119 int32 // %t110 - var _v120 int64 // %t111 - var _v121 int64 // %t112 - var _v123 int64 // %t114 - var _v124 int64 // %t115 - var _v125 int64 // %t116 - var _v126 int32 // %t117 - var _v127 int32 // %t118 - var _v128 int64 // %t119 - var _v129 int64 // %t120 - var _v131 int64 // %t122 - var _v132 int32 // %t123 - var _v134 int64 // %t125 - var _v135 int64 // %t126 - var _v136 int32 // %t127 - var _v137 int32 // %t128 - var _v138 int64 // %t129 - var _v26 int64 // %t17 - var _v27 int32 // %t18 - var _v28 int32 // %t19 - var _v29 int32 // %t20 - var _v30 int32 // %t21 - var _v32 int32 // %t23 - var _v33 int32 // %t24 - var _v34 int32 // %t25 - var _v35 int32 // %t26 - var _v36 int64 // %t27 - var _v37 int64 // %t28 - var _v39 int64 // %t30 - var _v40 int64 // %t31 - var _v41 int64 // %t32 - var _v45 int64 // %t36 - var _v46 int64 // %t37 - var _v47 int32 // %t38 - var _v48 int32 // %t39 - var _v13 int32 // %t4 - var _v50 int32 // %t41 - var _v51 int64 // %t42 - var _v52 int64 // %t43 - var _v53 int64 // %t44 - var _v57 int64 // %t48 - var _v58 int64 // %t49 - var _v59 int32 // %t50 - var _v60 int32 // %t51 - var _v62 int32 // %t53 - var _v66 int64 // %t57 - var _v67 int64 // %t58 - var _v68 int32 // %t59 - var _v69 int32 // %t60 - var _v71 int32 // %t62 - var _v72 int64 // %t63 - var _v73 int64 // %t64 - var _v74 int64 // %t65 - var _v75 int64 // %t66 - var _v77 int32 // %t68 - var _v16 int32 // %t7 - var _v79 int32 // %t70 - var _v81 int32 // %t72 - var _v82 int32 // %t73 - var _v84 int32 // %t75 - var _v85 int32 // %t76 - var _v86 int32 // %t77 - var _v88 int64 // %t79 - var _v90 int32 // %t81 - var _v92 int32 // %t83 - var _v93 int64 // %t84 - var _v94 int64 // %t85 - var _v96 int64 // %t87 - var _v97 int64 // %t88 - var _v98 int64 // %t89 - var _v99 int32 // %t90 - var _v100 int64 // %t91 - var _v101 int64 // %t92 - var _v103 int64 // %t94 - var _v104 int64 // %t95 - var _v105 int64 // %t96 - var _v106 int32 // %t97 - var _v108 int32 // %t99 - var _v5 = int64(bp + 8) // %v5 - var _v6 = int64(bp + 12) // %v6 - var _v7 = int64(bp + 16) // %v7 - var _v8 = int64(bp + 24) // %v8 - var _v9 = int64(bp + 32) // %v9 - *(*int64)(unsafe.Pointer(uintptr(_v7))) = int64(0) - _v13 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - *(*int32)(unsafe.Pointer(uintptr(_v8))) = _v13 - _v16 = crt.Bool32(int32(_v4) == int32(0)) - goto l2 -l2: - if _v16 != 0 { - goto l46 +// Close output stream pOut if it is not stdout or stderr +func maybeClose(tls *crt.TLS, pOut uintptr) { /* mptest.c:208:13: */ + if (pOut != crt.Xstdout) && (pOut != crt.Xstderr) { + crt.Xfclose(tls, pOut) } - goto l3 -l46: - _v20 = 1 - goto l6 -l3: - _v19 = crt.Bool32(int32(_v4) == int32(1)) - goto l4 -l4: - if _v19 != 0 { - goto l47 - } - goto l5 -l47: - _v20 = 1 - goto l6 -l5: - _v20 = 0 - goto l6 -l6: - goto l7 -l7: - if _v20 != 0 { - goto l8 - } - goto l10 -l8: - goto l9 -l9: - goto l12 -l10: - crt.X__assert_fail(t, int64(uintptr(unsafe.Pointer(&s__130))), int64(uintptr(unsafe.Pointer(&s__44))), 1211, int64(uintptr(unsafe.Pointer(&s__129)))) - goto l11 -l11: - goto l12 -l12: - _v26 = int64(_v5 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v26))) = 0 - goto l13 -l13: - _v27 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v28 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v29 = crt.Bool32(int32(_v27) < int32(_v28)) - if _v29 != 0 { - goto l14 - } - goto l43 -l14: - _v30 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v32 = int32(int32(_v30) + int32(_v4)) - _v33 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v34 = crt.Bool32(int32(_v32) >= int32(_v33)) - if _v34 != 0 { - goto l15 - } - goto l17 -l15: - goto l43 -l17: - _v35 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v36 = int64(int32(_v35)) - _v37 = int64(_v36 * int64(8)) - _v39 = int64(_v1 + _v37) - _v40 = *(*int64)(unsafe.Pointer(uintptr(_v39))) - _v41 = int64(_v9 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v41))) = _v40 - _v45 = *(*int64)(unsafe.Pointer(uintptr(_v9))) - _v46 = int64(_v45 + int64(0)) - _v47 = int32(*(*int8)(unsafe.Pointer(uintptr(_v46)))) - _v48 = int32(int8(_v47)) - _v50 = crt.Bool32(int32(_v48) != int32(45)) - if _v50 != 0 { - goto l18 - } - goto l20 -l18: - goto l42 -l20: - _v51 = int64(_v9 + int64(0)) - _v52 = *(*int64)(unsafe.Pointer(uintptr(_v51))) - _v53 = int64(_v52 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v51))) = _v53 - _v57 = *(*int64)(unsafe.Pointer(uintptr(_v9))) - _v58 = int64(_v57 + int64(0)) - _v59 = int32(*(*int8)(unsafe.Pointer(uintptr(_v58)))) - _v60 = int32(int8(_v59)) - _v62 = crt.Bool32(int32(_v60) == int32(45)) - if _v62 != 0 { - goto l21 - } - goto l25 -l21: - _v66 = *(*int64)(unsafe.Pointer(uintptr(_v9))) - _v67 = int64(_v66 + int64(1)) - _v68 = int32(*(*int8)(unsafe.Pointer(uintptr(_v67)))) - _v69 = int32(int8(_v68)) - _v71 = crt.Bool32(int32(_v69) == int32(0)) - if _v71 != 0 { - goto l22 - } - goto l24 -l22: - goto l43 -l24: - _v72 = int64(_v9 + int64(0)) - _v73 = *(*int64)(unsafe.Pointer(uintptr(_v72))) - _v74 = int64(_v73 + int64(1)) - *(*int64)(unsafe.Pointer(uintptr(_v72))) = _v74 - goto l25 -l25: - _v75 = *(*int64)(unsafe.Pointer(uintptr(_v9))) - _v77 = crt.Xstrcmp(t, _v75, _v3) - _v79 = crt.Bool32(int32(_v77) == int32(0)) - if _v79 != 0 { - goto l26 - } - goto l41 -l26: - goto l27 -l27: - if _v4 != 0 { - goto l28 - } - goto l48 -l48: - _v86 = 0 - goto l31 -l28: - _v81 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v82 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v84 = int32(int32(_v82) - int32(1)) - _v85 = crt.Bool32(int32(_v81) == int32(_v84)) - goto l29 -l29: - if _v85 != 0 { - goto l30 - } - goto l49 -l49: - _v86 = 0 - goto l31 -l30: - _v86 = 1 - goto l31 -l31: - if _v86 != 0 { - goto l32 - } - goto l33 -l32: - _v88 = *(*int64)(unsafe.Pointer(uintptr(_v9))) - *(*int64)(unsafe.Pointer(bp + 0)) = _v88 - s_fatalError(t, int64(uintptr(unsafe.Pointer(&s__131))), bp+0) - goto l33 -l33: - if _v4 != 0 { - goto l34 - } - goto l35 -l34: - _v90 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v92 = int32(int32(_v90) + int32(1)) - _v93 = int64(int32(_v92)) - _v94 = int64(_v93 * int64(8)) - _v96 = int64(_v1 + _v94) - _v97 = *(*int64)(unsafe.Pointer(uintptr(_v96))) - _v98 = int64(_v7 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v98))) = _v97 - goto l36 -l35: - _v99 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v100 = int64(int32(_v99)) - _v101 = int64(_v100 * int64(8)) - _v103 = int64(_v1 + _v101) - _v104 = *(*int64)(unsafe.Pointer(uintptr(_v103))) - _v105 = int64(_v7 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v105))) = _v104 - goto l36 -l36: - _v106 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v108 = int32(int32(_v106) + int32(1)) - _v111 = crt.Bool32(int32(_v4) != int32(0)) - _v112 = int32(int32(_v108) + int32(_v111)) - _v113 = int64(_v6 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v113))) = _v112 - goto l37 -l37: - _v114 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v115 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v116 = crt.Bool32(int32(_v114) < int32(_v115)) - if _v116 != 0 { - goto l38 - } - goto l39 -l38: - _v117 = int64(_v6 + int64(0)) - _v118 = *(*int32)(unsafe.Pointer(uintptr(_v117))) - _v119 = int32(int32(_v118) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v117))) = _v119 - _v120 = int64(int32(_v118)) - _v121 = int64(_v120 * int64(8)) - _v123 = int64(_v1 + _v121) - _v124 = *(*int64)(unsafe.Pointer(uintptr(_v123))) - _v125 = int64(_v5 + int64(0)) - _v126 = *(*int32)(unsafe.Pointer(uintptr(_v125))) - _v127 = int32(int32(_v126) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v125))) = _v127 - _v128 = int64(int32(_v126)) - _v129 = int64(_v128 * int64(8)) - _v131 = int64(_v1 + _v129) - *(*int64)(unsafe.Pointer(uintptr(_v131))) = _v124 - goto l37 -l39: - _v132 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - *(*int32)(unsafe.Pointer(uintptr(_v2))) = _v132 - _v134 = *(*int64)(unsafe.Pointer(uintptr(_v7))) - return _v134 -l41: - goto l42 -l42: - _v135 = int64(_v5 + int64(0)) - _v136 = *(*int32)(unsafe.Pointer(uintptr(_v135))) - _v137 = int32(int32(_v136) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v135))) = _v137 - goto l13 -l43: - _v138 = *(*int64)(unsafe.Pointer(uintptr(_v7))) - return _v138 } -var s__129 = [11]byte{0x66, 0x69, 0x6e, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e} +// Print an error message +func errorMessage(tls *crt.TLS, zFormat uintptr, va uintptr) { /* mptest.c:215:13: */ + bp := tls.Alloc(38) + defer tls.Free(38) + + var ap va_list + _ = ap + var zMsg uintptr + // var zPrefix [30]int8 at bp+8, 30 + + ap = va + zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) + _ = ap + sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+8 /* &zPrefix[0] */, ts+8 /* "%s:ERROR: " */, crt.VaList(bp, uintptr(unsafe.Pointer(&g))+64 /* &.zName */)) + if g.pLog != 0 { + printWithPrefix(tls, g.pLog, bp+8 /* &zPrefix[0] */, zMsg) + crt.Xfflush(tls, g.pLog) + } + if (g.pErrLog != 0) && (safe_strcmp(tls, g.zErrLog, g.zLog) != 0) { + printWithPrefix(tls, g.pErrLog, bp+8 /* &zPrefix[0] */, zMsg) + crt.Xfflush(tls, g.pErrLog) + } + sqlite3.Xsqlite3_free(tls, zMsg) + g.nError++ +} -var s__130 = [23]byte{ - 0x68, 0x61, 0x73, 0x41, 0x72, 0x67, 0x3d, 0x3d, 0x30, 0x20, 0x7c, 0x7c, 0x20, 0x68, 0x61, 0x73, - 0x41, 0x72, 0x67, 0x3d, 0x3d, 0x31, +// Print an error message and then quit. +func fatalError(tls *crt.TLS, zFormat uintptr, va uintptr) { /* mptest.c:241:13: */ + bp := tls.Alloc(38) + defer tls.Free(38) + + var ap va_list + _ = ap + var zMsg uintptr + // var zPrefix [30]int8 at bp+8, 30 + + ap = va + zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) + _ = ap + sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+8 /* &zPrefix[0] */, ts+19 /* "%s:FATAL: " */, crt.VaList(bp, uintptr(unsafe.Pointer(&g))+64 /* &.zName */)) + if g.pLog != 0 { + printWithPrefix(tls, g.pLog, bp+8 /* &zPrefix[0] */, zMsg) + crt.Xfflush(tls, g.pLog) + maybeClose(tls, g.pLog) + } + if (g.pErrLog != 0) && (safe_strcmp(tls, g.zErrLog, g.zLog) != 0) { + printWithPrefix(tls, g.pErrLog, bp+8 /* &zPrefix[0] */, zMsg) + crt.Xfflush(tls, g.pErrLog) + maybeClose(tls, g.pErrLog) + } + sqlite3.Xsqlite3_free(tls, zMsg) + if g.db != 0 { + var nTry int32 = 0 + g.iTimeout = 0 + for (trySql(tls, ts+30 /* "UPDATE client SE..." */, 0) == 5) && + ((crt.PostIncInt32(&nTry, 1)) < 100) { + sqlite3.Xsqlite3_sleep(tls, 10) + } + } + sqlite3.Xsqlite3_close(tls, g.db) + crt.Xexit(tls, 1) } -var s__131 = [48]byte{ - 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x2d, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x20, 0x22, 0x2d, 0x2d, 0x25, 0x73, 0x22, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, - 0x72, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, +// Print a log message +func logMessage(tls *crt.TLS, zFormat uintptr, va uintptr) { /* mptest.c:276:13: */ + bp := tls.Alloc(38) + defer tls.Free(38) + + var ap va_list + _ = ap + var zMsg uintptr + // var zPrefix [30]int8 at bp+8, 30 + + ap = va + zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) + _ = ap + sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+8 /* &zPrefix[0] */, ts+60 /* "%s: " */, crt.VaList(bp, uintptr(unsafe.Pointer(&g))+64 /* &.zName */)) + if g.pLog != 0 { + printWithPrefix(tls, g.pLog, bp+8 /* &zPrefix[0] */, zMsg) + crt.Xfflush(tls, g.pLog) + } + sqlite3.Xsqlite3_free(tls, zMsg) } -func s_usage(t *crt.TLS, _v1 int64) { - bp := t.Alloc(32) - defer t.Free(32) - var _v13 int32 // %t10 - var _v14 int64 // %t11 - var _v15 int64 // %t12 - var _v17 int64 // %t14 - var _v18 int32 // %t15 - var _v19 int32 // %t16 - var _v21 int32 // %t18 - var _v23 int32 // %t20 - var _v24 int64 // %t21 - var _v25 int64 // %t22 - var _v28 int64 // %t25 - var _v29 int64 // %t26 - var _v30 int64 // %t27 - var _v31 int32 // %t28 - var _v32 int32 // %t29 - var _v6 int64 // %t3 - var _v33 int64 // %t30 - var _v35 int64 // %t32 - var _v37 int64 // %t34 - var _v7 int32 // %t4 - var _v8 int64 // %t5 - var _v9 int64 // %t6 - var _v11 int64 // %t8 - var _v12 int32 // %t9 - var _v2 = int64(bp + 8) // %v2 - var _v3 = int64(bp + 16) // %v3 - *(*int64)(unsafe.Pointer(uintptr(_v3))) = _v1 - _v6 = int64(_v2 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v6))) = 0 - goto l2 -l2: - _v7 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v8 = int64(int32(_v7)) - _v9 = int64(_v8 * int64(1)) - _v11 = int64(_v1 + _v9) - _v12 = int32(*(*int8)(unsafe.Pointer(uintptr(_v11)))) - if _v12 != 0 { - goto l3 - } - goto l7 -l3: - _v13 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v14 = int64(int32(_v13)) - _v15 = int64(_v14 * int64(1)) - _v17 = int64(_v1 + _v15) - _v18 = int32(*(*int8)(unsafe.Pointer(uintptr(_v17)))) - _v19 = int32(int8(_v18)) - _v21 = crt.Bool32(int32(_v19) == int32(47)) - if _v21 != 0 { - goto l4 +// Return the length of a string omitting trailing whitespace +func clipLength(tls *crt.TLS, z uintptr) int32 { /* mptest.c:294:12: */ + var n int32 = int32(crt.Xstrlen(tls, z)) + for (n > 0) && ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr((n - 1)))))))*2))) & int32(uint16(8192))) != 0) { + n-- } - goto l5 -l4: - _v23 = *(*int32)(unsafe.Pointer(uintptr(_v2))) - _v24 = int64(int32(_v23)) - _v25 = int64(_v1 + _v24) - _v28 = int64(_v25 + int64(1)) - _v29 = int64(_v3 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v29))) = _v28 - goto l5 -l5: - goto l6 -l6: - _v30 = int64(_v2 + int64(0)) - _v31 = *(*int32)(unsafe.Pointer(uintptr(_v30))) - _v32 = int32(int32(_v31) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v30))) = _v32 - goto l2 -l7: - _v33 = *(*int64)(unsafe.Pointer(&crt.Xstderr)) - _v35 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - *(*int64)(unsafe.Pointer(bp + 0)) = _v35 - - _ = crt.Xfprintf(t, _v33, int64(uintptr(unsafe.Pointer(&s__133))), bp+0) - _v37 = *(*int64)(unsafe.Pointer(&crt.Xstderr)) - - _ = crt.Xfprintf(t, _v37, int64(uintptr(unsafe.Pointer(&s__134))), 0) - crt.Xexit(t, 1) - goto l8 -l8: + return n } -var s__132 = [6]byte{0x75, 0x73, 0x61, 0x67, 0x65} +// Auxiliary SQL function to return the name of the VFS +func vfsNameFunc(tls *crt.TLS, context uintptr, argc int32, argv uintptr) { /* mptest.c:303:13: */ + bp := tls.Alloc(8) + defer tls.Free(8) -var s__133 = [39]byte{ - 0x55, 0x73, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x25, 0x73, 0x20, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, - 0x53, 0x45, 0x20, 0x3f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x3f, 0x20, 0x3f, 0x53, 0x43, - 0x52, 0x49, 0x50, 0x54, 0x3f, 0x0a, + var db uintptr = sqlite3.Xsqlite3_context_db_handle(tls, context) + *(*uintptr)(unsafe.Pointer(bp /* zVfs */)) = uintptr(0) + _ = argc + _ = argv + sqlite3.Xsqlite3_file_control(tls, db, ts+65 /* "main" */, 12, bp /* &zVfs */) + if *(*uintptr)(unsafe.Pointer(bp /* zVfs */)) != 0 { + sqlite3.Xsqlite3_result_text(tls, context, *(*uintptr)(unsafe.Pointer(bp /* zVfs */)), -1, *(*uintptr)(unsafe.Pointer(&struct{ f func(*crt.TLS, uintptr) }{sqlite3.Xsqlite3_free}))) + } } -var s__134 = [572]byte{ - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x65, 0x72, - 0x72, 0x6c, 0x6f, 0x67, 0x20, 0x46, 0x49, 0x4c, 0x45, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x57, 0x72, 0x69, 0x74, 0x65, 0x20, 0x65, 0x72, - 0x72, 0x6f, 0x72, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x46, 0x49, 0x4c, 0x45, 0x4e, 0x41, 0x4d, 0x45, - 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x6a, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x6d, 0x6f, 0x64, - 0x65, 0x20, 0x4d, 0x4f, 0x44, 0x45, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x55, 0x73, 0x65, 0x20, 0x4d, 0x4f, 0x44, 0x45, 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, - 0x6a, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x0a, 0x20, 0x20, 0x20, - 0x2d, 0x2d, 0x6c, 0x6f, 0x67, 0x20, 0x46, 0x49, 0x4c, 0x45, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x6f, 0x67, 0x20, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x46, 0x49, 0x4c, 0x45, - 0x4e, 0x41, 0x4d, 0x45, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x71, 0x75, 0x69, 0x65, 0x74, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x53, 0x75, 0x70, 0x70, 0x72, 0x65, 0x73, 0x73, 0x20, 0x75, 0x6e, 0x6e, - 0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0x20, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x0a, - 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x76, 0x66, 0x73, 0x20, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, - 0x73, 0x65, 0x20, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x56, - 0x46, 0x53, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x20, 0x4e, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x65, 0x73, - 0x74, 0x20, 0x4e, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x73, - 0x71, 0x6c, 0x74, 0x72, 0x61, 0x63, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x20, - 0x53, 0x51, 0x4c, 0x20, 0x74, 0x72, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x0a, 0x20, 0x20, 0x20, 0x2d, - 0x2d, 0x73, 0x79, 0x6e, 0x63, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x45, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x20, 0x73, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x6f, 0x75, 0x73, 0x20, 0x64, 0x69, - 0x73, 0x6b, 0x20, 0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x74, - 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x20, 0x4d, 0x49, 0x4c, 0x4c, 0x49, 0x53, 0x45, 0x43, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x42, 0x75, 0x73, 0x79, 0x20, 0x74, 0x69, - 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x20, 0x69, 0x73, 0x20, 0x4d, 0x49, 0x4c, 0x4c, 0x49, 0x53, 0x45, - 0x43, 0x0a, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x74, 0x72, 0x61, 0x63, 0x65, 0x20, 0x42, 0x4f, 0x4f, - 0x4c, 0x45, 0x41, 0x4e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x20, 0x74, 0x72, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x0a, -} +// Busy handler with a g.iTimeout-millisecond timeout +func busyHandler(tls *crt.TLS, pCD uintptr, count int32) int32 { /* mptest.c:321:12: */ + bp := tls.Alloc(8) + defer tls.Free(8) -func s_unrecognizedArguments(t *crt.TLS, _v1 int64, _v2 int32, _v3 int64) { - bp := t.Alloc(32) - defer t.Free(32) - var _v5 int64 // %t1 - var _v14 int64 // %t10 - var _v16 int32 // %t12 - var _v17 int64 // %t13 - var _v18 int64 // %t14 - var _v20 int64 // %t16 - var _v21 int64 // %t17 - var _v23 int64 // %t19 - var _v24 int32 // %t20 - var _v25 int32 // %t21 - var _v26 int64 // %t22 - var _v10 int64 // %t6 - var _v11 int32 // %t7 - var _v13 int32 // %t9 - var _v4 = int64(bp + 16) // %v4 - _v5 = *(*int64)(unsafe.Pointer(&crt.Xstderr)) - *(*int64)(unsafe.Pointer(bp + 0)) = _v1 - - _ = crt.Xfprintf(t, _v5, int64(uintptr(unsafe.Pointer(&s__136))), bp+0) - _v10 = int64(_v4 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v10))) = 0 - goto l2 -l2: - _v11 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v13 = crt.Bool32(int32(_v11) < int32(_v2)) - if _v13 != 0 { - goto l3 + _ = pCD + if (count * 10) > g.iTimeout { + if g.iTimeout > 0 { + errorMessage(tls, ts+70 /* "timeout after %d..." */, crt.VaList(bp, g.iTimeout)) + } + return 0 } - goto l5 -l3: - _v14 = *(*int64)(unsafe.Pointer(&crt.Xstderr)) - _v16 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v17 = int64(int32(_v16)) - _v18 = int64(_v17 * int64(8)) - _v20 = int64(_v3 + _v18) - _v21 = *(*int64)(unsafe.Pointer(uintptr(_v20))) - *(*int64)(unsafe.Pointer(bp + 8)) = _v21 - - _ = crt.Xfprintf(t, _v14, int64(uintptr(unsafe.Pointer(&s__137))), bp+8) - goto l4 -l4: - _v23 = int64(_v4 + int64(0)) - _v24 = *(*int32)(unsafe.Pointer(uintptr(_v23))) - _v25 = int32(int32(_v24) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v23))) = _v25 - goto l2 -l5: - _v26 = *(*int64)(unsafe.Pointer(&crt.Xstderr)) - - _ = crt.Xfprintf(t, _v26, int64(uintptr(unsafe.Pointer(&s__138))), 0) - crt.Xexit(t, 1) - goto l6 -l6: + sqlite3.Xsqlite3_sleep(tls, 10) + return 1 } -var s__135 = [22]byte{ - 0x75, 0x6e, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x64, 0x41, 0x72, 0x67, 0x75, - 0x6d, 0x65, 0x6e, 0x74, 0x73, -} +// SQL Trace callback +func sqlTraceCallback(tls *crt.TLS, NotUsed1 uintptr, zSql uintptr) { /* mptest.c:334:13: */ + bp := tls.Alloc(16) + defer tls.Free(16) -var s__136 = [28]byte{ - 0x25, 0x73, 0x3a, 0x20, 0x75, 0x6e, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x64, - 0x20, 0x61, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, + _ = NotUsed1 + logMessage(tls, ts+89 /* "[%.*s]" */, crt.VaList(bp, clipLength(tls, zSql), zSql)) } -var s__137 = [4]byte{0x20, 0x25, 0x73} - -var s__138 = [2]byte{0x0a} - -func Xmain(t *crt.TLS, _v1 int32, _v2 int64) int32 { - bp := t.Alloc(368) - defer t.Free(368) - var _v122 int64 // %t100 - var _v125 int64 // %t103 - var _v132 int64 // %t110 - var _v133 int64 // %t111 - var _v136 int64 // %t114 - var _v137 int64 // %t115 - var _v142 int64 // %t120 - var _v143 int64 // %t121 - var _v146 int64 // %t124 - var _v153 int64 // %t131 - var _v154 int64 // %t132 - var _v157 int64 // %t135 - var _v164 int64 // %t142 - var _v165 int64 // %t143 - var _v168 int64 // %t146 - var _v169 int64 // %t147 - var _v170 int64 // %t148 - var _v171 int32 // %t149 - var _v172 int64 // %t150 - var _v173 int32 // %t151 - var _v180 int64 // %t158 - var _v181 int64 // %t159 - var _v184 int64 // %t162 - var _v187 int32 // %t165 - var _v39 int32 // %t17 - var _v195 int64 // %t173 - var _v196 int64 // %t174 - var _v199 int64 // %t177 - var _v200 int64 // %t178 - var _v201 int64 // %t179 - var _v202 int32 // %t180 - var _v203 int64 // %t181 - var _v204 int32 // %t182 - var _v205 int64 // %t183 - var _v210 int64 // %t188 - var _v211 int64 // %t189 - var _v214 int64 // %t192 - var _v217 int32 // %t195 - var _v224 int64 // %t202 - var _v225 int64 // %t203 - var _v228 int64 // %t206 - var _v231 int32 // %t209 - var _v236 int64 // %t214 - var _v237 int32 // %t215 - var _v240 int64 // %t218 - var _v44 int64 // %t22 - var _v242 int64 // %t220 - var _v245 int64 // %t223 - var _v250 int64 // %t228 - var _v251 int32 // %t229 - var _v45 int64 // %t23 - var _v254 int64 // %t232 - var _v256 int64 // %t234 - var _v259 int64 // %t237 - var _v266 int64 // %t244 - var _v267 int32 // %t245 - var _v268 int64 // %t246 - var _v269 int32 // %t247 - var _v270 int64 // %t248 - var _v271 int32 // %t249 - var _v273 int32 // %t251 - var _v275 int32 // %t253 - var _v281 int32 // %t259 - var _v282 int32 // %t260 - var _v287 int32 // %t265 - var _v289 int32 // %t267 - var _v295 int64 // %t273 - var _v296 int64 // %t274 - var _v299 int64 // %t277 - var _v300 int32 // %t278 - var _v50 int64 // %t28 - var _v302 int32 // %t280 - var _v304 int32 // %t282 - var _v305 int64 // %t283 - var _v306 int64 // %t284 - var _v308 int64 // %t286 - var _v309 int64 // %t287 - var _v311 int64 // %t289 - var _v51 int64 // %t29 - var _v312 int32 // %t290 - var _v313 int32 // %t291 - var _v319 int64 // %t297 - var _v320 int32 // %t298 - var _v321 int64 // %t299 - var _v322 int64 // %t300 - var _v323 int64 // %t301 - var _v326 int32 // %t304 - var _v328 int64 // %t306 - var _v330 int64 // %t308 - var _v331 int32 // %t309 - var _v332 int32 // %t310 - var _v333 int64 // %t311 - var _v336 int64 // %t314 - var _v337 int32 // %t315 - var _v339 int32 // %t317 - var _v341 int32 // %t319 - var _v343 int32 // %t321 - var _v345 int32 // %t323 - var _v348 int64 // %t326 - var _v351 int64 // %t329 - var _v355 int64 // %t333 - var _v356 int32 // %t334 - var _v357 int64 // %t335 - var _v358 int32 // %t336 - var _v359 int64 // %t337 - var _v360 int32 // %t338 - var _v362 int32 // %t340 - var _v363 int32 // %t341 - var _v365 int64 // %t343 - var _v366 int32 // %t344 - var _v368 int32 // %t346 - var _v369 int64 // %t347 - var _v370 int32 // %t348 - var _v371 int32 // %t349 - var _v57 int64 // %t35 - var _v372 int32 // %t350 - var _v374 int32 // %t352 - var _v375 int32 // %t353 - var _v377 int32 // %t355 - var _v379 int32 // %t357 - var _v380 int32 // %t358 - var _v381 int32 // %t359 - var _v58 int32 // %t36 - var _v383 int32 // %t361 - var _v387 int64 // %t365 - var _v388 int32 // %t366 - var _v390 int64 // %t368 - var _v391 int32 // %t369 - var _v392 int32 // %t370 - var _v395 int64 // %t373 - var _v398 int32 // %t376 - var _v401 int64 // %t379 - var _v402 int32 // %t380 - var _v403 int64 // %t381 - var _v404 int32 // %t382 - var _v408 int64 // %t386 - var _v409 int32 // %t387 - var _v411 int32 // %t389 - var _v414 int64 // %t392 - var _v415 int32 // %t393 - var _v417 int64 // %t395 - var _v418 int32 // %t396 - var _v420 int64 // %t398 - var _v423 int32 // %t401 - var _v424 int32 // %t402 - var _v429 int64 // %t407 - var _v63 int64 // %t41 - var _v434 int64 // %t412 - var _v441 int64 // %t419 - var _v64 int64 // %t42 - var _v65 int64 // %t43 - var _v455 int64 // %t433 - var _v67 int32 // %t45 - var _v472 int32 // %t450 - var _v475 int64 // %t453 - var _v480 int32 // %t458 - var _v482 int32 // %t460 - var _v483 int32 // %t461 - var _v485 int32 // %t463 - var _v490 int64 // %t468 - var _v491 int64 // %t469 - var _v69 int32 // %t47 - var _v492 int32 // %t470 - var _v497 int64 // %t475 - var _v500 int32 // %t478 - var _v70 int64 // %t48 - var _v505 int32 // %t483 - var _v506 int64 // %t484 - var _v507 int64 // %t485 - var _v508 int64 // %t486 - var _v509 int32 // %t487 - var _v510 int64 // %t488 - var _v511 int32 // %t489 - var _v513 int32 // %t491 - var _v516 int32 // %t494 - var _v518 int64 // %t496 - var _v519 int32 // %t497 - var _v520 int32 // %t498 - var _v521 int32 // %t499 - var _v72 int64 // %t50 - var _v522 int64 // %t500 - var _v523 int64 // %t501 - var _v526 int32 // %t504 - var _v528 int64 // %t506 - var _v529 int32 // %t507 - var _v530 int32 // %t508 - var _v531 int32 // %t509 - var _v534 int64 // %t512 - var _v539 int32 // %t517 - var _v541 int32 // %t519 - var _v543 int32 // %t521 - var _v545 int32 // %t523 - var _v547 int32 // %t525 - var _v552 int64 // %t530 - var _v553 int64 // %t531 - var _v554 int32 // %t532 - var _v559 int64 // %t537 - var _v565 int64 // %t543 - var _v566 int64 // %t544 - var _v567 int64 // %t545 - var _v568 int64 // %t546 - var _v570 int64 // %t548 - var _v571 int32 // %t549 - var _v572 int32 // %t550 - var _v573 int32 // %t551 - var _v576 int32 // %t554 - var _v78 int32 // %t56 - var _v582 int64 // %t560 - var _v583 int64 // %t561 - var _v584 int32 // %t562 - var _v587 int64 // %t565 - var _v79 int64 // %t57 - var _v592 int64 // %t570 - var _v593 int64 // %t571 - var _v596 int32 // %t574 - var _v602 int64 // %t580 - var _v603 int64 // %t581 - var _v604 int32 // %t582 - var _v605 int64 // %t583 - var _v606 int32 // %t584 - var _v607 int32 // %t585 - var _v608 int64 // %t586 - var _v620 int64 // %t598 - var _v622 int32 // %t600 - var _v623 int64 // %t601 - var _v624 int32 // %t602 - var _v626 int32 // %t604 - var _v627 int32 // %t605 - var _v629 int32 // %t607 - var _v630 int32 // %t608 - var _v631 int32 // %t609 - var _v633 int32 // %t611 - var _v634 int32 // %t612 - var _v638 int64 // %t616 - var _v639 int32 // %t617 - var _v640 int32 // %t618 - var _v644 int64 // %t622 - var _v645 int64 // %t623 - var _v647 int64 // %t625 - var _v648 int64 // %t626 - var _v649 int32 // %t627 - var _v650 int64 // %t628 - var _v651 int32 // %t629 - var _v85 int32 // %t63 - var _v653 int32 // %t631 - var _v654 int32 // %t632 - var _v656 int32 // %t634 - var _v657 int32 // %t635 - var _v661 int64 // %t639 - var _v662 int32 // %t640 - var _v663 int32 // %t641 - var _v664 int32 // %t642 - var _v666 int32 // %t644 - var _v667 int64 // %t645 - var _v669 int32 // %t647 - var _v672 int32 // %t650 - var _v673 int32 // %t651 - var _v674 int64 // %t652 - var _v676 int32 // %t654 - var _v679 int32 // %t657 - var _v680 int32 // %t658 - var _v681 int64 // %t659 - var _v685 int64 // %t663 - var _v689 int64 // %t667 - var _v692 int64 // %t670 - var _v693 int32 // %t671 - var _v695 int32 // %t673 - var _v699 int32 // %t677 - var _v702 int32 // %t680 - var _v709 int64 // %t687 - var _v710 int64 // %t688 - var _v91 int64 // %t69 - var _v713 int64 // %t691 - var _v714 int32 // %t692 - var _v716 int32 // %t694 - var _v718 int32 // %t696 - var _v719 int64 // %t697 - var _v720 int64 // %t698 - var _v92 int64 // %t70 - var _v722 int64 // %t700 - var _v723 int64 // %t701 - var _v725 int64 // %t703 - var _v726 int32 // %t704 - var _v727 int32 // %t705 - var _v732 int32 // %t710 - var _v734 int32 // %t712 - var _v95 int64 // %t73 - var _v96 int64 // %t74 - var _v101 int64 // %t79 - var _v30 int64 // %t8 - var _v102 int64 // %t80 - var _v105 int64 // %t83 - var _v106 int64 // %t84 - var _v107 int64 // %t85 - var _v108 int32 // %t86 - var _v109 int64 // %t87 - var _v110 int32 // %t88 - var _v111 int64 // %t89 - var _v31 int64 // %t9 - var _v112 int32 // %t90 - var _v114 int32 // %t92 - var _v116 int64 // %t94 - var _v121 int64 // %t99 - var _v10 = int64(bp + 272) // %v10 - var _v11 = int64(bp + 280) // %v11 - var _v12 = int64(bp + 288) // %v12 - var _v13 = int64(bp + 296) // %v13 - var _v14 = int64(bp + 304) // %v14 - var _v15 = int64(bp + 312) // %v15 - var _v16 = int64(bp + 316) // %v16 - var _v17 = int64(bp + 320) // %v17 - var _v18 = int64(bp + 328) // %v18 - var _v19 = int64(bp + 336) // %v19 - var _v20 = int64(bp + 344) // %v20 - var _v21 = int64(bp + 352) // %v21 - var _v22 = int64(bp + 360) // %v22 - var _v3 = int64(bp + 232) // %v3 - var _v4 = int64(bp + 240) // %v4 - var _v5 = int64(bp + 244) // %v5 - var _v6 = int64(bp + 248) // %v6 - var _v7 = int64(bp + 252) // %v7 - var _v8 = int64(bp + 256) // %v8 - var _v9 = int64(bp + 264) // %v9 - *(*int32)(unsafe.Pointer(uintptr(_v7))) = 2 - *(*int32)(unsafe.Pointer(uintptr(_v15))) = 1 - *(*int32)(unsafe.Pointer(uintptr(_v17))) = 0 - _v30 = int64(_v2 + int64(0)) - _v31 = *(*int64)(unsafe.Pointer(uintptr(_v30))) - *(*int64)(unsafe.Pointer(&s_g)) = _v31 - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) = 1 - _v39 = crt.Bool32(int32(_v1) < int32(2)) - if _v39 != 0 { - goto l2 - } - goto l3 -l2: - _v44 = int64(_v2 + int64(0)) - _v45 = *(*int64)(unsafe.Pointer(uintptr(_v44))) - s_usage(t, _v45) - goto l3 -l3: - _v50 = int64(_v2 + int64(8)) - _v51 = *(*int64)(unsafe.Pointer(uintptr(_v50))) - *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) = _v51 - _v57 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) - _v58 = Xstrglob(t, int64(uintptr(unsafe.Pointer(&s__140))), _v57) - if _v58 != 0 { - goto l4 - } - goto l5 -l4: - _v63 = int64(_v2 + int64(0)) - _v64 = *(*int64)(unsafe.Pointer(uintptr(_v63))) - s_usage(t, _v64) - goto l5 -l5: - _v65 = Xsqlite3_sourceid(t) - _v67 = crt.Xstrcmp(t, _v65, int64(uintptr(unsafe.Pointer(&s__141)))) - _v69 = crt.Bool32(int32(_v67) != int32(0)) - if _v69 != 0 { - goto l6 - } - goto l7 -l6: - _v70 = *(*int64)(unsafe.Pointer(&crt.Xstderr)) - _v72 = Xsqlite3_sourceid(t) - *(*int64)(unsafe.Pointer(bp + 0)) = _v72 - - *(*int64)(unsafe.Pointer(bp + 8)) = int64(uintptr(unsafe.Pointer(&s__141))) - - _ = crt.Xfprintf(t, _v70, int64(uintptr(unsafe.Pointer(&s__142))), bp+0) - crt.Xexit(t, 1) - goto l7 -l7: - _v78 = int32(int32(_v1) - int32(2)) - _v79 = int64(_v5 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v79))) = _v78 - _v85 = crt.Xgetpid(t) - *(*int32)(unsafe.Pointer(bp + 16)) = _v85 - - _ = Xsqlite3_snprintf(t, 32, int64(uintptr(unsafe.Pointer(&s_g))+64), int64(uintptr(unsafe.Pointer(&s__143))), bp+16) - _v91 = int64(_v2 + int64(16)) - _v92 = int64(_v5 + int64(0)) - _v95 = s_findOption(t, _v91, _v92, int64(uintptr(unsafe.Pointer(&s__144))), 1) - _v96 = int64(_v13 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v96))) = _v95 - _v101 = int64(_v2 + int64(16)) - _v102 = int64(_v5 + int64(0)) - _v105 = s_findOption(t, _v101, _v102, int64(uintptr(unsafe.Pointer(&s__145))), 1) - _v106 = int64(_v14 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v106))) = _v105 - _v107 = *(*int64)(unsafe.Pointer(uintptr(_v14))) - _v108 = crt.Bool32(int64(_v107) != int64(int64(0))) - if _v108 != 0 { - goto l8 - } - goto l9 -l8: - _v109 = *(*int64)(unsafe.Pointer(uintptr(_v14))) - _v110 = crt.Xatoi(t, _v109) - _v111 = int64(_v15 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v111))) = _v110 - goto l9 -l9: - _v112 = *(*int32)(unsafe.Pointer(uintptr(_v15))) - _v114 = crt.Bool32(int32(_v112) < int32(1)) - if _v114 != 0 { - goto l10 - } - goto l11 -l10: - _v116 = int64(_v15 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v116))) = 1 - goto l11 -l11: - _v121 = int64(_v2 + int64(16)) - _v122 = int64(_v5 + int64(0)) - _v125 = s_findOption(t, _v121, _v122, int64(uintptr(unsafe.Pointer(&s__146))), 1) - *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) = _v125 - _v132 = int64(_v2 + int64(16)) - _v133 = int64(_v5 + int64(0)) - _v136 = s_findOption(t, _v132, _v133, int64(uintptr(unsafe.Pointer(&s__147))), 1) - _v137 = int64(_v3 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v137))) = _v136 - _v142 = int64(_v2 + int64(16)) - _v143 = int64(_v5 + int64(0)) - _v146 = s_findOption(t, _v142, _v143, int64(uintptr(unsafe.Pointer(&s__148))), 1) - *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 32)) = _v146 - _v153 = int64(_v2 + int64(16)) - _v154 = int64(_v5 + int64(0)) - _v157 = s_findOption(t, _v153, _v154, int64(uintptr(unsafe.Pointer(&s__149))), 1) - *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 48)) = _v157 - _v164 = int64(_v2 + int64(16)) - _v165 = int64(_v5 + int64(0)) - _v168 = s_findOption(t, _v164, _v165, int64(uintptr(unsafe.Pointer(&s__150))), 1) - _v169 = int64(_v11 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v169))) = _v168 - _v170 = *(*int64)(unsafe.Pointer(uintptr(_v11))) - _v171 = crt.Bool32(int64(_v170) != int64(int64(0))) - if _v171 != 0 { - goto l12 - } - goto l13 -l12: - _v172 = *(*int64)(unsafe.Pointer(uintptr(_v11))) - _v173 = crt.Xatoi(t, _v172) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) = _v173 - goto l13 -l13: - _v180 = int64(_v2 + int64(16)) - _v181 = int64(_v5 + int64(0)) - _v184 = s_findOption(t, _v180, _v181, int64(uintptr(unsafe.Pointer(&s__151))), 0) - _v187 = crt.Bool32(int64(_v184) != int64(int64(0))) - if _v187 != 0 { - goto l14 - } - goto l15 -l14: - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) = 0 - goto l15 -l15: - _v195 = int64(_v2 + int64(16)) - _v196 = int64(_v5 + int64(0)) - _v199 = s_findOption(t, _v195, _v196, int64(uintptr(unsafe.Pointer(&s__152))), 1) - _v200 = int64(_v18 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v200))) = _v199 - _v201 = *(*int64)(unsafe.Pointer(uintptr(_v18))) - _v202 = crt.Bool32(int64(_v201) != int64(int64(0))) - if _v202 != 0 { - goto l16 - } - goto l17 -l16: - _v203 = *(*int64)(unsafe.Pointer(uintptr(_v18))) - _v204 = crt.Xatoi(t, _v203) - _v205 = int64(_v17 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v205))) = _v204 - goto l17 -l17: - _v210 = int64(_v2 + int64(16)) - _v211 = int64(_v5 + int64(0)) - _v214 = s_findOption(t, _v210, _v211, int64(uintptr(unsafe.Pointer(&s__153))), 0) - _v217 = crt.Bool32(int64(_v214) != int64(int64(0))) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 104)) = _v217 - _v224 = int64(_v2 + int64(16)) - _v225 = int64(_v5 + int64(0)) - _v228 = s_findOption(t, _v224, _v225, int64(uintptr(unsafe.Pointer(&s__154))), 0) - _v231 = crt.Bool32(int64(_v228) != int64(int64(0))) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 124)) = _v231 - _v236 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 32)) - _v237 = crt.Bool32(int64(_v236) != int64(int64(0))) - if _v237 != 0 { - goto l18 - } - goto l19 -l18: - _v240 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 32)) - _v242 = crt.Xfopen(t, _v240, int64(uintptr(unsafe.Pointer(&s__155)))) - *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 40)) = _v242 - goto l20 -l19: - _v245 = *(*int64)(unsafe.Pointer(&crt.Xstderr)) - *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 40)) = _v245 - goto l20 -l20: - _v250 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 48)) - _v251 = crt.Bool32(int64(_v250) != int64(int64(0))) - if _v251 != 0 { - goto l21 - } - goto l22 -l21: - _v254 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 48)) - _v256 = crt.Xfopen(t, _v254, int64(uintptr(unsafe.Pointer(&s__155)))) - *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) = _v256 - goto l23 -l22: - _v259 = *(*int64)(unsafe.Pointer(&crt.Xstdout)) - *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) = _v259 - goto l23 -l23: - *(*int64)(unsafe.Pointer(bp + 24)) = *(*int64)(unsafe.Pointer(&struct { - f func(*crt.TLS, int64, int32, int64) - }{s_sqlErrorCallback})) - - *(*int32)(unsafe.Pointer(bp + 32)) = 0 - - _ = Xsqlite3_config(t, 16, bp+24) - _v266 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v267 = crt.Bool32(int64(_v266) != int64(int64(0))) - if _v267 != 0 { - goto l24 - } - goto l27 -l24: - _v268 = *(*int64)(unsafe.Pointer(uintptr(_v3))) - _v269 = crt.Xatoi(t, _v268) - _v270 = int64(_v4 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v270))) = _v269 - _v271 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v273 = crt.Bool32(int32(_v271) < int32(1)) - if _v273 != 0 { - goto l25 - } - goto l26 -l25: - _v275 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - *(*int32)(unsafe.Pointer(bp + 40)) = _v275 - s_fatalError(t, int64(uintptr(unsafe.Pointer(&s__156))), bp+40) - goto l26 -l26: - _v281 = crt.Xgetpid(t) - _v282 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - *(*int32)(unsafe.Pointer(bp + 48)) = _v281 - - *(*int32)(unsafe.Pointer(bp + 56)) = _v282 - - _ = Xsqlite3_snprintf(t, 32, int64(uintptr(unsafe.Pointer(&s_g))+64), int64(uintptr(unsafe.Pointer(&s__157))), bp+48) - goto l68 -l27: - *(*int32)(unsafe.Pointer(uintptr(_v19))) = 0 - _v287 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - _v289 = crt.Bool32(int32(_v287) > int32(0)) - if _v289 != 0 { - goto l28 - } - goto l144 -l144: - goto l37 -l28: - _v295 = int64(_v2 + int64(0)) - _v296 = *(*int64)(unsafe.Pointer(uintptr(_v295))) - *(*int64)(unsafe.Pointer(bp + 64)) = _v296 - - _ = crt.Xprintf(t, int64(uintptr(unsafe.Pointer(&s__158))), bp+64) - _v299 = int64(_v6 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v299))) = 1 - goto l29 -l29: - _v300 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v302 = crt.Bool32(int32(_v300) < int32(_v1)) - if _v302 != 0 { - goto l30 - } - goto l32 -l30: - _v304 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v305 = int64(int32(_v304)) - _v306 = int64(_v305 * int64(8)) - _v308 = int64(_v2 + _v306) - _v309 = *(*int64)(unsafe.Pointer(uintptr(_v308))) - *(*int64)(unsafe.Pointer(bp + 72)) = _v309 - - _ = crt.Xprintf(t, int64(uintptr(unsafe.Pointer(&s__137))), bp+72) - goto l31 -l31: - _v311 = int64(_v6 + int64(0)) - _v312 = *(*int32)(unsafe.Pointer(uintptr(_v311))) - _v313 = int32(int32(_v312) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v311))) = _v313 - goto l29 -l32: - - _ = crt.Xprintf(t, int64(uintptr(unsafe.Pointer(&s__138))), 0) - - _ = crt.Xprintf(t, int64(uintptr(unsafe.Pointer(&s__159))), 0) - _v319 = int64(_v6 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v319))) = 0 - goto l33 -l33: - _v320 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v321 = Xsqlite3_compileoption_get(t, _v320) - _v322 = int64(_v12 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v322))) = _v321 - _v323 = *(*int64)(unsafe.Pointer(uintptr(_v322))) - _v326 = crt.Bool32(int64(_v323) != int64(int64(0))) - if _v326 != 0 { - goto l34 - } - goto l36 -l34: - _v328 = *(*int64)(unsafe.Pointer(uintptr(_v12))) - *(*int64)(unsafe.Pointer(bp + 80)) = _v328 - - _ = crt.Xprintf(t, int64(uintptr(unsafe.Pointer(&s__160))), bp+80) - goto l35 -l35: - _v330 = int64(_v6 + int64(0)) - _v331 = *(*int32)(unsafe.Pointer(uintptr(_v330))) - _v332 = int32(int32(_v331) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v330))) = _v332 - goto l33 -l36: - _v333 = *(*int64)(unsafe.Pointer(&crt.Xstdout)) - _ = crt.Xfflush(t, _v333) - goto l37 -l37: - _v336 = int64(_v4 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v336))) = 0 - goto l38 -l38: - _v337 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - _v339 = int32(int32(_v337) % int32(5)) - _v341 = crt.Bool32(int32(_v339) == int32(4)) - if _v341 != 0 { - goto l39 - } - goto l145 -l145: - goto l46 -l39: - _v343 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - _v345 = crt.Bool32(int32(_v343) > int32(5)) - goto l40 -l40: - if _v345 != 0 { - goto l41 - } - goto l43 -l41: - goto l42 -l42: - _v348 = int64(uintptr(unsafe.Pointer(&s__162))) - goto l45 -l43: - goto l44 -l44: - _v348 = int64(uintptr(unsafe.Pointer(&s__85))) - goto l45 -l45: - _v351 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) - *(*int64)(unsafe.Pointer(bp + 88)) = _v348 - - *(*int64)(unsafe.Pointer(bp + 96)) = _v351 - - _ = crt.Xprintf(t, int64(uintptr(unsafe.Pointer(&s__161))), bp+88) - goto l46 -l46: - _v355 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) - _v356 = crt.Xunlink(t, _v355) - _v357 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v357))) = _v356 - _v358 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - goto l47 -l47: - if _v358 != 0 { - goto l48 - } - goto l146 -l146: - _v363 = 0 - goto l51 -l48: - _v359 = crt.X__errno_location(t) - _v360 = *(*int32)(unsafe.Pointer(uintptr(_v359))) - _v362 = crt.Bool32(int32(_v360) == int32(2)) - goto l49 -l49: - if _v362 != 0 { - goto l50 - } - goto l147 -l147: - _v363 = 0 - goto l51 -l50: - _v363 = 1 - goto l51 -l51: - if _v363 != 0 { - goto l52 - } - goto l53 -l52: - _v365 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v365))) = 0 - goto l53 -l53: - goto l54 -l54: - _v366 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v368 = crt.Bool32(int32(_v366) != int32(0)) - goto l55 -l55: - if _v368 != 0 { - goto l56 - } - goto l148 -l148: - _v375 = 0 - goto l59 -l56: - _v369 = int64(_v19 + int64(0)) - _v370 = *(*int32)(unsafe.Pointer(uintptr(_v369))) - _v371 = int32(int32(_v370) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v369))) = _v371 - _v372 = *(*int32)(unsafe.Pointer(uintptr(_v369))) - _v374 = crt.Bool32(int32(_v372) < int32(60)) - goto l57 -l57: - if _v374 != 0 { - goto l58 - } - goto l149 -l149: - _v375 = 0 - goto l59 -l58: - _v375 = 1 - goto l59 -l59: - goto l60 -l60: - if _v375 != 0 { - goto l61 - } - goto l150 -l150: - _v380 = 0 - goto l64 -l61: - _v377 = Xsqlite3_sleep(t, 1000) - _v379 = crt.Bool32(int32(_v377) > int32(0)) - goto l62 -l62: - if _v379 != 0 { - goto l63 - } - goto l151 -l151: - _v380 = 0 - goto l64 -l63: - _v380 = 1 - goto l64 -l64: - if _v380 != 0 { - goto l152 - } - goto l65 -l152: - goto l38 -l65: - _v381 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v383 = crt.Bool32(int32(_v381) != int32(0)) - if _v383 != 0 { - goto l66 - } - goto l67 -l66: - _v387 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) - _v388 = *(*int32)(unsafe.Pointer(uintptr(_v19))) - *(*int64)(unsafe.Pointer(bp + 104)) = _v387 - - *(*int32)(unsafe.Pointer(bp + 112)) = _v388 - s_fatalError(t, int64(uintptr(unsafe.Pointer(&s__163))), bp+104) - goto l67 -l67: - _v390 = int64(_v7 + int64(0)) - _v391 = *(*int32)(unsafe.Pointer(uintptr(_v390))) - _v392 = int32(_v391 | 4) - *(*int32)(unsafe.Pointer(uintptr(_v390))) = _v392 - goto l68 -l68: - _v395 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) - _v398 = *(*int32)(unsafe.Pointer(uintptr(_v7))) - _v401 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 8)) - _v402 = Xsqlite3_open_v2(t, _v395, int64(uintptr(unsafe.Pointer(&s_g))+24), _v398, _v401) - _v403 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v403))) = _v402 - _v404 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - if _v404 != 0 { - goto l69 - } - goto l70 -l69: - _v408 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 16)) - *(*int64)(unsafe.Pointer(bp + 120)) = _v408 - s_fatalError(t, int64(uintptr(unsafe.Pointer(&s__164))), bp+120) - goto l70 -l70: - _v409 = *(*int32)(unsafe.Pointer(uintptr(_v17))) - _v411 = crt.Bool32(int32(_v409) > int32(0)) - if _v411 != 0 { - goto l71 - } - goto l72 -l71: - _v414 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _v415 = *(*int32)(unsafe.Pointer(uintptr(_v17))) - _ = Xsqlite3_busy_timeout(t, _v414, _v415) - goto l72 -l72: - _v417 = *(*int64)(unsafe.Pointer(uintptr(_v13))) - _v418 = crt.Bool32(int64(_v417) != int64(int64(0))) - if _v418 != 0 { - goto l73 - } - goto l74 -l73: - _v420 = *(*int64)(unsafe.Pointer(uintptr(_v13))) - *(*int64)(unsafe.Pointer(bp + 128)) = _v420 - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__165))), bp+128) - goto l74 -l74: - _v423 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 124)) - goto l75 -l75: - if _v423 != 0 { - goto l76 - } - goto l153 -l153: - _v424 = 1 - goto l77 -l76: - _v424 = 0 - goto l77 -l77: - if _v424 != 0 { - goto l78 - } - goto l79 -l78: - - _ = s_trySql(t, int64(uintptr(unsafe.Pointer(&s__166))), 0) - goto l79 -l79: - _v429 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _ = Xsqlite3_enable_load_extension(t, _v429, 1) - _v434 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _ = Xsqlite3_busy_handler(t, _v434, *(*int64)(unsafe.Pointer(&struct { - f func(*crt.TLS, int64, int32) int32 - }{s_busyHandler})), int64(0)) - _v441 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _ = Xsqlite3_create_function(t, _v441, int64(uintptr(unsafe.Pointer(&s__167))), 0, 1, int64(0), *(*int64)(unsafe.Pointer(&struct { - f func(*crt.TLS, int64, int32, int64) - }{s_vfsNameFunc})), int64(0), int64(0)) - _v455 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _ = Xsqlite3_create_function(t, _v455, int64(uintptr(unsafe.Pointer(&s__168))), 1, 1, int64(0), *(*int64)(unsafe.Pointer(&struct { - f func(*crt.TLS, int64, int32, int64) - }{s_evalFunc})), int64(0), int64(0)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) = 10000 - _v472 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 104)) - if _v472 != 0 { - goto l80 - } - goto l81 -l80: - _v475 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _ = Xsqlite3_trace(t, _v475, *(*int64)(unsafe.Pointer(&struct{ f func(*crt.TLS, int64, int64) }{s_sqlTraceCallback})), int64(0)) - goto l81 -l81: - _v480 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v482 = crt.Bool32(int32(_v480) > int32(0)) - if _v482 != 0 { - goto l82 - } - goto l99 -l82: - _v483 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v485 = crt.Bool32(int32(_v483) > int32(0)) - if _v485 != 0 { - goto l83 - } - goto l84 -l83: - _v490 = int64(_v2 + int64(0)) - _v491 = *(*int64)(unsafe.Pointer(uintptr(_v490))) - _v492 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v497 = int64(_v2 + int64(16)) - s_unrecognizedArguments(t, _v491, _v492, _v497) - goto l84 -l84: - _v500 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - if _v500 != 0 { - goto l85 - } - goto l86 -l85: - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__169))), 0) - goto l86 -l86: - goto l87 -l87: - if 1 != 0 { - goto l88 - } - goto l96 -l88: - *(*int64)(unsafe.Pointer(uintptr(_v20))) = int64(0) - _v505 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v506 = int64(_v9 + int64(0)) - _v507 = int64(_v10 + int64(0)) - _v508 = int64(_v20 + int64(0)) - _v509 = s_startScript(t, _v505, _v506, _v507, _v508) - _v510 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v510))) = _v509 - _v511 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v513 = crt.Bool32(int32(_v511) == int32(101)) - if _v513 != 0 { - goto l89 - } - goto l91 -l89: - goto l96 -l91: - _v516 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - if _v516 != 0 { - goto l92 - } - goto l93 -l92: - _v518 = *(*int64)(unsafe.Pointer(uintptr(_v20))) - _v519 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - *(*int64)(unsafe.Pointer(bp + 136)) = _v518 - - *(*int32)(unsafe.Pointer(bp + 144)) = _v519 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__170))), bp+136) - goto l93 -l93: - _v520 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v521 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _v522 = *(*int64)(unsafe.Pointer(uintptr(_v9))) - _v523 = *(*int64)(unsafe.Pointer(uintptr(_v20))) - s_runScript(t, _v520, _v521, _v522, _v523) - _v526 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - if _v526 != 0 { - goto l94 - } - goto l95 -l94: - _v528 = *(*int64)(unsafe.Pointer(uintptr(_v20))) - _v529 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - *(*int64)(unsafe.Pointer(bp + 152)) = _v528 - - *(*int32)(unsafe.Pointer(bp + 160)) = _v529 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__171))), bp+152) - goto l95 -l95: - _v530 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v531 = *(*int32)(unsafe.Pointer(uintptr(_v10))) - _ = s_finishScript(t, _v530, _v531, 0) - _v534 = *(*int64)(unsafe.Pointer(uintptr(_v20))) - Xsqlite3_free(t, _v534) - _ = Xsqlite3_sleep(t, 10) - goto l87 -l96: - _v539 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - if _v539 != 0 { - goto l97 - } - goto l98 -l97: - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__172))), 0) - goto l98 -l98: - goto l135 -l99: - _v541 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v543 = crt.Bool32(int32(_v541) == int32(0)) - if _v543 != 0 { - goto l100 - } - goto l101 -l100: - s_fatalError(t, int64(uintptr(unsafe.Pointer(&s__173))), 0) - goto l101 -l101: - _v545 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v547 = crt.Bool32(int32(_v545) > int32(1)) - if _v547 != 0 { - goto l102 - } - goto l103 -l102: - _v552 = int64(_v2 + int64(0)) - _v553 = *(*int64)(unsafe.Pointer(uintptr(_v552))) - _v554 = *(*int32)(unsafe.Pointer(uintptr(_v5))) - _v559 = int64(_v2 + int64(16)) - s_unrecognizedArguments(t, _v553, _v554, _v559) - goto l103 -l103: - s_runSql(t, int64(uintptr(unsafe.Pointer(&s__174))), 0) - _v565 = int64(_v2 + int64(16)) - _v566 = *(*int64)(unsafe.Pointer(uintptr(_v565))) - _v567 = s_readFile(t, _v566) - _v568 = int64(_v9 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v568))) = _v567 - _v570 = int64(_v16 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v570))) = 1 - goto l104 -l104: - _v571 = *(*int32)(unsafe.Pointer(uintptr(_v16))) - _v572 = *(*int32)(unsafe.Pointer(uintptr(_v15))) - _v573 = crt.Bool32(int32(_v571) <= int32(_v572)) - if _v573 != 0 { - goto l105 - } - goto l111 -l105: - _v576 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - if _v576 != 0 { - goto l106 - } - goto l107 -l106: - _v582 = int64(_v2 + int64(16)) - _v583 = *(*int64)(unsafe.Pointer(uintptr(_v582))) - _v584 = *(*int32)(unsafe.Pointer(uintptr(_v16))) - *(*int64)(unsafe.Pointer(bp + 168)) = _v583 - - *(*int32)(unsafe.Pointer(bp + 176)) = _v584 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__175))), bp+168) - goto l107 -l107: - _v587 = *(*int64)(unsafe.Pointer(uintptr(_v9))) - _v592 = int64(_v2 + int64(16)) - _v593 = *(*int64)(unsafe.Pointer(uintptr(_v592))) - s_runScript(t, 0, 0, _v587, _v593) - _v596 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 100)) - if _v596 != 0 { - goto l108 - } - goto l109 -l108: - _v602 = int64(_v2 + int64(16)) - _v603 = *(*int64)(unsafe.Pointer(uintptr(_v602))) - _v604 = *(*int32)(unsafe.Pointer(uintptr(_v16))) - *(*int64)(unsafe.Pointer(bp + 184)) = _v603 - - *(*int32)(unsafe.Pointer(bp + 192)) = _v604 - s_logMessage(t, int64(uintptr(unsafe.Pointer(&s__176))), bp+184) - goto l109 -l109: - goto l110 -l110: - _v605 = int64(_v16 + int64(0)) - _v606 = *(*int32)(unsafe.Pointer(uintptr(_v605))) - _v607 = int32(int32(_v606) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v605))) = _v607 - goto l104 -l111: - _v608 = *(*int64)(unsafe.Pointer(uintptr(_v9))) - Xsqlite3_free(t, _v608) - s_waitForClient(t, 0, 2000, int64(uintptr(unsafe.Pointer(&s__177)))) - - _ = s_trySql(t, int64(uintptr(unsafe.Pointer(&s__178))), 0) - _ = Xsqlite3_sleep(t, 10) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 120)) = 0 - _v620 = int64(_v22 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v620))) = 1000 - goto l112 -l112: - - _v622 = s_trySql(t, int64(uintptr(unsafe.Pointer(&s__179))), 0) - _v623 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v623))) = _v622 - _v624 = *(*int32)(unsafe.Pointer(uintptr(_v623))) - _v626 = crt.Bool32(int32(_v624) == int32(5)) - goto l113 -l113: - if _v626 != 0 { - goto l154 - } - goto l114 -l154: - _v630 = 1 - goto l117 -l114: - _v627 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v629 = crt.Bool32(int32(_v627) == int32(100)) - goto l115 -l115: - if _v629 != 0 { - goto l155 - } - goto l116 -l155: - _v630 = 1 - goto l117 -l116: - _v630 = 0 - goto l117 -l117: - goto l118 -l118: - if _v630 != 0 { - goto l119 - } - goto l156 -l156: - _v634 = 0 - goto l122 -l119: - _v631 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v633 = crt.Bool32(int32(_v631) > int32(0)) - goto l120 -l120: - if _v633 != 0 { - goto l121 - } - goto l157 -l157: - _v634 = 0 - goto l122 -l121: - _v634 = 1 - goto l122 -l122: - if _v634 != 0 { - goto l123 - } - goto l124 -l123: - _ = Xsqlite3_sleep(t, 10) - _v638 = int64(_v22 + int64(0)) - _v639 = *(*int32)(unsafe.Pointer(uintptr(_v638))) - _v640 = int32(int32(_v639) - int32(10)) - *(*int32)(unsafe.Pointer(uintptr(_v638))) = _v640 - goto l112 -l124: - _ = Xsqlite3_sleep(t, 100) - - _v644 = s_prepareSql(t, int64(uintptr(unsafe.Pointer(&s__180))), 0) - _v645 = int64(_v21 + int64(0)) - *(*int64)(unsafe.Pointer(uintptr(_v645))) = _v644 - _v647 = int64(_v22 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v647))) = 1000 - goto l125 -l125: - _v648 = *(*int64)(unsafe.Pointer(uintptr(_v21))) - _v649 = Xsqlite3_step(t, _v648) - _v650 = int64(_v8 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v650))) = _v649 - _v651 = *(*int32)(unsafe.Pointer(uintptr(_v650))) - _v653 = crt.Bool32(int32(_v651) == int32(5)) - goto l126 -l126: - if _v653 != 0 { - goto l127 - } - goto l158 -l158: - _v657 = 0 - goto l130 -l127: - _v654 = *(*int32)(unsafe.Pointer(uintptr(_v22))) - _v656 = crt.Bool32(int32(_v654) > int32(0)) - goto l128 -l128: - if _v656 != 0 { - goto l129 - } - goto l159 -l159: - _v657 = 0 - goto l130 -l129: - _v657 = 1 - goto l130 -l130: - if _v657 != 0 { - goto l131 +// SQL error log callback +func sqlErrorCallback(tls *crt.TLS, pArg uintptr, iErrCode int32, zMsg uintptr) { /* mptest.c:342:13: */ + bp := tls.Alloc(24) + defer tls.Free(24) + + _ = pArg + if (iErrCode == 1) && (g.bIgnoreSqlErrors != 0) { + return } - goto l132 -l131: - _ = Xsqlite3_sleep(t, 10) - _v661 = int64(_v22 + int64(0)) - _v662 = *(*int32)(unsafe.Pointer(uintptr(_v661))) - _v663 = int32(int32(_v662) - int32(10)) - *(*int32)(unsafe.Pointer(uintptr(_v661))) = _v663 - goto l125 -l132: - _v664 = *(*int32)(unsafe.Pointer(uintptr(_v8))) - _v666 = crt.Bool32(int32(_v664) == int32(100)) - if _v666 != 0 { - goto l133 + if ((iErrCode & 0xff) == 17) && (g.iTrace < 3) { + return } - goto l134 -l133: - _v667 = *(*int64)(unsafe.Pointer(uintptr(_v21))) - _v669 = Xsqlite3_column_int(t, _v667, 0) - _v672 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 112)) - _v673 = int32(int32(_v672) + int32(_v669)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 112)) = _v673 - _v674 = *(*int64)(unsafe.Pointer(uintptr(_v21))) - _v676 = Xsqlite3_column_int(t, _v674, 1) - _v679 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 116)) - _v680 = int32(int32(_v679) + int32(_v676)) - *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 116)) = _v680 - goto l134 -l134: - _v681 = *(*int64)(unsafe.Pointer(uintptr(_v21))) - _ = Xsqlite3_finalize(t, _v681) - goto l135 -l135: - _v685 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 24)) - _ = Xsqlite3_close(t, _v685) - _v689 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 56)) - s_maybeClose(t, _v689) - _v692 = *(*int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 40)) - s_maybeClose(t, _v692) - _v693 = *(*int32)(unsafe.Pointer(uintptr(_v4))) - _v695 = crt.Bool32(int32(_v693) == int32(0)) - if _v695 != 0 { - goto l136 + if ((g.iTimeout == 0) && ((iErrCode & 0xff) == 5)) && (g.iTrace < 3) { + return } - goto l141 -l136: - _v699 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 112)) - _v702 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 116)) - *(*int32)(unsafe.Pointer(bp + 200)) = _v699 - - *(*int32)(unsafe.Pointer(bp + 208)) = _v702 - - _ = crt.Xprintf(t, int64(uintptr(unsafe.Pointer(&s__181))), bp+200) - _v709 = int64(_v2 + int64(0)) - _v710 = *(*int64)(unsafe.Pointer(uintptr(_v709))) - *(*int64)(unsafe.Pointer(bp + 216)) = _v710 - - _ = crt.Xprintf(t, int64(uintptr(unsafe.Pointer(&s__182))), bp+216) - _v713 = int64(_v6 + int64(0)) - *(*int32)(unsafe.Pointer(uintptr(_v713))) = 1 - goto l137 -l137: - _v714 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v716 = crt.Bool32(int32(_v714) < int32(_v1)) - if _v716 != 0 { - goto l138 + if (iErrCode & 0xff) == 27 { + logMessage(tls, ts+96 /* "(info) %s" */, crt.VaList(bp, zMsg)) + } else { + errorMessage(tls, ts+106 /* "(errcode=%d) %s" */, crt.VaList(bp+8, iErrCode, zMsg)) } - goto l140 -l138: - _v718 = *(*int32)(unsafe.Pointer(uintptr(_v6))) - _v719 = int64(int32(_v718)) - _v720 = int64(_v719 * int64(8)) - _v722 = int64(_v2 + _v720) - _v723 = *(*int64)(unsafe.Pointer(uintptr(_v722))) - *(*int64)(unsafe.Pointer(bp + 224)) = _v723 - - _ = crt.Xprintf(t, int64(uintptr(unsafe.Pointer(&s__137))), bp+224) - goto l139 -l139: - _v725 = int64(_v6 + int64(0)) - _v726 = *(*int32)(unsafe.Pointer(uintptr(_v725))) - _v727 = int32(int32(_v726) + int32(1)) - *(*int32)(unsafe.Pointer(uintptr(_v725))) = _v727 - goto l137 -l140: - - _ = crt.Xprintf(t, int64(uintptr(unsafe.Pointer(&s__138))), 0) - goto l141 -l141: - _v732 = *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&s_g)) + 112)) - _v734 = crt.Bool32(int32(_v732) > int32(0)) - return _v734 } -var s__139 = [5]byte{0x6d, 0x61, 0x69, 0x6e} - -var s__140 = [7]byte{0x2a, 0x2e, 0x74, 0x65, 0x73, 0x74} - -var s__141 = [85]byte{ - 0x32, 0x30, 0x31, 0x39, 0x2d, 0x31, 0x30, 0x2d, 0x31, 0x30, 0x20, 0x32, 0x30, 0x3a, 0x31, 0x39, - 0x3a, 0x34, 0x35, 0x20, 0x31, 0x38, 0x64, 0x62, 0x30, 0x33, 0x32, 0x64, 0x30, 0x35, 0x38, 0x66, - 0x31, 0x34, 0x33, 0x36, 0x63, 0x65, 0x33, 0x64, 0x65, 0x61, 0x38, 0x34, 0x30, 0x38, 0x31, 0x66, - 0x34, 0x65, 0x65, 0x35, 0x61, 0x30, 0x66, 0x32, 0x32, 0x35, 0x39, 0x61, 0x64, 0x39, 0x37, 0x33, - 0x30, 0x31, 0x64, 0x34, 0x33, 0x63, 0x34, 0x32, 0x36, 0x62, 0x63, 0x37, 0x66, 0x33, 0x64, 0x66, - 0x31, 0x62, 0x30, 0x62, +// Prepare an SQL statement. Issue a fatal error if unable. +func prepareSql(tls *crt.TLS, zFormat uintptr, va uintptr) uintptr { /* mptest.c:357:21: */ + bp := tls.Alloc(24) + defer tls.Free(24) + + var ap va_list + _ = ap + var zSql uintptr + var rc int32 + *(*uintptr)(unsafe.Pointer(bp + 16 /* pStmt */)) = uintptr(0) + ap = va + zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) + _ = ap + rc = sqlite3.Xsqlite3_prepare_v2(tls, g.db, zSql, -1, bp+16 /* &pStmt */, uintptr(0)) + if rc != 0 { + sqlite3.Xsqlite3_finalize(tls, *(*uintptr)(unsafe.Pointer(bp + 16 /* pStmt */))) + fatalError(tls, ts+122 /* "%s\n%s\n" */, crt.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db), zSql)) + } + sqlite3.Xsqlite3_free(tls, zSql) + return *(*uintptr)(unsafe.Pointer(bp + 16 /* pStmt */)) } -var s__142 = [60]byte{ - 0x53, 0x51, 0x4c, 0x69, 0x74, 0x65, 0x20, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x20, 0x61, - 0x6e, 0x64, 0x20, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x20, 0x6d, 0x69, 0x73, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x0a, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x3a, 0x20, 0x25, 0x73, 0x0a, 0x48, - 0x65, 0x61, 0x64, 0x65, 0x72, 0x3a, 0x20, 0x20, 0x25, 0x73, 0x0a, +// Run arbitrary SQL. Issue a fatal error on failure. +func runSql(tls *crt.TLS, zFormat uintptr, va uintptr) { /* mptest.c:377:13: */ + bp := tls.Alloc(16) + defer tls.Free(16) + + var ap va_list + _ = ap + var zSql uintptr + var rc int32 + ap = va + zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) + _ = ap + rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, uintptr(0), uintptr(0), uintptr(0)) + if rc != 0 { + fatalError(tls, ts+122 /* "%s\n%s\n" */, crt.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db), zSql)) + } + sqlite3.Xsqlite3_free(tls, zSql) } -var s__143 = [12]byte{0x25, 0x30, 0x35, 0x64, 0x2e, 0x6d, 0x70, 0x74, 0x65, 0x73, 0x74} - -var s__144 = [12]byte{0x6a, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x6d, 0x6f, 0x64, 0x65} - -var s__145 = [7]byte{0x72, 0x65, 0x70, 0x65, 0x61, 0x74} - -var s__146 = [4]byte{0x76, 0x66, 0x73} +// Try to run arbitrary SQL. Return success code. +func trySql(tls *crt.TLS, zFormat uintptr, va uintptr) int32 { /* mptest.c:394:12: */ + var ap va_list + _ = ap + var zSql uintptr + var rc int32 + ap = va + zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) + _ = ap + rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, uintptr(0), uintptr(0), uintptr(0)) + sqlite3.Xsqlite3_free(tls, zSql) + return rc +} -var s__147 = [7]byte{0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74} +// Structure for holding an arbitrary length string +type String1 = struct { + z uintptr + n int32 + nAlloc int32 +} -var s__148 = [7]byte{0x65, 0x72, 0x72, 0x6c, 0x6f, 0x67} +// Structure for holding an arbitrary length string +type String = String1 /* mptest.c:408:23 */ -var s__149 = [4]byte{0x6c, 0x6f, 0x67} +// Free a string +func stringFree(tls *crt.TLS, p uintptr) { /* mptest.c:416:13: */ + if (*String)(unsafe.Pointer(p)).z != 0 { + sqlite3.Xsqlite3_free(tls, (*String)(unsafe.Pointer(p)).z) + } + crt.Xmemset(tls, p, 0, uint64(unsafe.Sizeof(String{}))) +} -var s__150 = [6]byte{0x74, 0x72, 0x61, 0x63, 0x65} +// Append n bytes of text to a string. If n<0 append the entire string. +func stringAppend(tls *crt.TLS, p uintptr, z uintptr, n int32) { /* mptest.c:422:13: */ + if n < 0 { + n = int32(crt.Xstrlen(tls, z)) + } + if ((*String)(unsafe.Pointer(p)).n + n) >= (*String)(unsafe.Pointer(p)).nAlloc { + var nAlloc int32 = ((((*String)(unsafe.Pointer(p)).nAlloc * 2) + n) + 100) + var zNew uintptr = sqlite3.Xsqlite3_realloc(tls, (*String)(unsafe.Pointer(p)).z, nAlloc) + if zNew == uintptr(0) { + fatalError(tls, ts+129 /* "out of memory" */, 0) + } + (*String)(unsafe.Pointer(p)).z = zNew + (*String)(unsafe.Pointer(p)).nAlloc = nAlloc + } + crt.Xmemcpy(tls, ((*String)(unsafe.Pointer(p)).z + uintptr((*String)(unsafe.Pointer(p)).n)), z, uint64(n)) + *(*int32)(unsafe.Pointer(p + 8 /* &.n */)) += (n) + *(*int8)(unsafe.Pointer((*String)(unsafe.Pointer(p)).z + uintptr((*String)(unsafe.Pointer(p)).n))) = int8(0) +} -var s__151 = [6]byte{0x71, 0x75, 0x69, 0x65, 0x74} +// Reset a string to an empty string +func stringReset(tls *crt.TLS, p uintptr) { /* mptest.c:437:13: */ + if (*String)(unsafe.Pointer(p)).z == uintptr(0) { + stringAppend(tls, p, ts+143 /* " " */, 1) + } + (*String)(unsafe.Pointer(p)).n = 0 + *(*int8)(unsafe.Pointer((*String)(unsafe.Pointer(p)).z + uintptr(0))) = int8(0) +} -var s__152 = [8]byte{0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74} +// Append a new token onto the end of the string +func stringAppendTerm(tls *crt.TLS, p uintptr, z uintptr) { /* mptest.c:444:13: */ + var i int32 + if (*String)(unsafe.Pointer(p)).n != 0 { + stringAppend(tls, p, ts+143 /* " " */, 1) + } + if z == uintptr(0) { + stringAppend(tls, p, ts+145 /* "nil" */, 3) + return + } + for i = 0; (*(*int8)(unsafe.Pointer(z + uintptr(i))) != 0) && !((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(i))))))*2))) & int32(uint16(8192))) != 0); i++ { + } + if (i > 0) && (int32(*(*int8)(unsafe.Pointer(z + uintptr(i)))) == 0) { + stringAppend(tls, p, z, i) + return + } + stringAppend(tls, p, ts+149 /* "'" */, 1) + for *(*int8)(unsafe.Pointer(z + uintptr(0))) != 0 { + for i = 0; (*(*int8)(unsafe.Pointer(z + uintptr(i))) != 0) && (int32(*(*int8)(unsafe.Pointer(z + uintptr(i)))) != '\''); i++ { + } + if *(*int8)(unsafe.Pointer(z + uintptr(i))) != 0 { + stringAppend(tls, p, z, (i + 1)) + stringAppend(tls, p, ts+149 /* "'" */, 1) + z += (uintptr(i + 1)) + } else { + stringAppend(tls, p, z, i) + break + } + } + stringAppend(tls, p, ts+149 /* "'" */, 1) +} -var s__153 = [9]byte{0x73, 0x71, 0x6c, 0x74, 0x72, 0x61, 0x63, 0x65} +// Callback function for evalSql() +func evalCallback(tls *crt.TLS, pCData uintptr, argc int32, argv uintptr, azCol uintptr) int32 { /* mptest.c:474:12: */ + var p uintptr = pCData + var i int32 + _ = azCol + for i = 0; i < argc; i++ { + stringAppendTerm(tls, p, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))) + } + return 0 +} -var s__154 = [5]byte{0x73, 0x79, 0x6e, 0x63} +// Run arbitrary SQL and record the results in an output string +// given by the first parameter. +func evalSql(tls *crt.TLS, p uintptr, zFormat uintptr, va uintptr) int32 { /* mptest.c:486:12: */ + bp := tls.Alloc(46) + defer tls.Free(46) + + var ap va_list + _ = ap + var zSql uintptr + var rc int32 + *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrMsg */)) = uintptr(0) + ap = va + zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) + _ = ap + if !(g.iTimeout > 0) { + crt.X__assert_fail(tls, ts+151 /* "g.iTimeout>0" */, ts+164 /* "testdata/sqlite-..." */, uint32(494), uintptr(unsafe.Pointer(&__func__))) + } + rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, *(*uintptr)(unsafe.Pointer(&struct { + f func(*crt.TLS, uintptr, int32, uintptr, uintptr) int32 + }{evalCallback})), p, bp+8 /* &zErrMsg */) + sqlite3.Xsqlite3_free(tls, zSql) + if rc != 0 { + // var zErr [30]int8 at bp+16, 30 + + sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+16 /* &zErr[0] */, ts+208 /* "error(%d)" */, crt.VaList(bp, rc)) + stringAppendTerm(tls, p, bp+16 /* &zErr[0] */) + if *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrMsg */)) != 0 { + stringAppendTerm(tls, p, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrMsg */))) + sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 8 /* zErrMsg */))) + } + } + return rc +} -var s__155 = [2]byte{0x61} +var __func__ = *(*[8]int8)(unsafe.Pointer(ts + 218 /* "evalSql" */)) /* mptest.c:486:56 */ + +// Auxiliary SQL function to recursively evaluate SQL. +func evalFunc(tls *crt.TLS, context uintptr, argc int32, argv uintptr) { /* mptest.c:512:13: */ + bp := tls.Alloc(24) + defer tls.Free(24) + + var db uintptr = sqlite3.Xsqlite3_context_db_handle(tls, context) + var zSql uintptr = sqlite3.Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*8))) + // var res String at bp, 16 + + *(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */)) = uintptr(0) + var rc int32 + _ = argc + crt.Xmemset(tls, bp /* &res */, 0, uint64(unsafe.Sizeof(String{}))) + rc = sqlite3.Xsqlite3_exec(tls, db, zSql, *(*uintptr)(unsafe.Pointer(&struct { + f func(*crt.TLS, uintptr, int32, uintptr, uintptr) int32 + }{evalCallback})), bp /* &res */, bp+16 /* &zErrMsg */) + if *(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */)) != 0 { + sqlite3.Xsqlite3_result_error(tls, context, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */)), -1) + sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */))) + } else if rc != 0 { + sqlite3.Xsqlite3_result_error_code(tls, context, rc) + } else { + sqlite3.Xsqlite3_result_text(tls, context, (*String)(unsafe.Pointer(bp /* &res */)).z, -1, crt.UintptrFromInt32(-1)) + } + stringFree(tls, bp /* &res */) +} -var s__156 = [27]byte{ - 0x69, 0x6c, 0x6c, 0x65, 0x67, 0x61, 0x6c, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x6e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x3a, 0x20, 0x25, 0x64, 0x0a, +// Look up the next task for client iClient in the database. +// Return the task script and the task number and mark that +// task as being under way. +func startScript(tls *crt.TLS, iClient int32, pzScript uintptr, pTaskId uintptr, pzTaskName uintptr) int32 { /* mptest.c:541:12: */ + bp := tls.Alloc(80) + defer tls.Free(80) + + var pStmt uintptr = uintptr(0) + var taskId int32 + var rc int32 + var totalTime int32 = 0 + + *(*uintptr)(unsafe.Pointer(pzScript)) = uintptr(0) + g.iTimeout = 0 + for 1 != 0 { + rc = trySql(tls, ts+226 /* "BEGIN IMMEDIATE" */, 0) + if rc == 5 { + sqlite3.Xsqlite3_sleep(tls, 10) + totalTime = totalTime + (10) + continue + } + if rc != 0 { + fatalError(tls, ts+242 /* "in startScript: ..." */, crt.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db))) + } + if (g.nError != 0) || (g.nTest != 0) { + runSql(tls, ts+261, /* "UPDATE counters ..." */ + crt.VaList(bp+8, g.nError, g.nTest)) + g.nError = 0 + g.nTest = 0 + } + pStmt = prepareSql(tls, ts+314 /* "SELECT 1 FROM cl..." */, crt.VaList(bp+24, iClient)) + rc = sqlite3.Xsqlite3_step(tls, pStmt) + sqlite3.Xsqlite3_finalize(tls, pStmt) + if rc == 100 { + runSql(tls, ts+360 /* "DELETE FROM clie..." */, crt.VaList(bp+32, iClient)) + g.iTimeout = 10000 + runSql(tls, ts+391 /* "COMMIT TRANSACTI..." */, 0) + return 101 + } + pStmt = prepareSql(tls, + + ts+411 /* "SELECT script, i..." */, crt.VaList(bp+40, iClient)) + rc = sqlite3.Xsqlite3_step(tls, pStmt) + if rc == 100 { + var n int32 = sqlite3.Xsqlite3_column_bytes(tls, pStmt, 0) + *(*uintptr)(unsafe.Pointer(pzScript)) = sqlite3.Xsqlite3_malloc(tls, (n + 1)) + crt.Xstrcpy(tls, *(*uintptr)(unsafe.Pointer(pzScript)), sqlite3.Xsqlite3_column_text(tls, pStmt, 0)) + *(*int32)(unsafe.Pointer(pTaskId)) = crt.AssignInt32(&taskId, sqlite3.Xsqlite3_column_int(tls, pStmt, 1)) + *(*uintptr)(unsafe.Pointer(pzTaskName)) = sqlite3.Xsqlite3_mprintf(tls, ts+503 /* "%s" */, crt.VaList(bp+48, sqlite3.Xsqlite3_column_text(tls, pStmt, 2))) + sqlite3.Xsqlite3_finalize(tls, pStmt) + runSql(tls, + + ts+506 /* "UPDATE task SE..." */, crt.VaList(bp+56, taskId)) + g.iTimeout = 10000 + runSql(tls, ts+391 /* "COMMIT TRANSACTI..." */, 0) + return 0 + } + sqlite3.Xsqlite3_finalize(tls, pStmt) + if rc == 101 { + if totalTime > 30000 { + errorMessage(tls, ts+589 /* "Waited over 30 s..." */, 0) + runSql(tls, ts+638 /* "DELETE FROM clie..." */, crt.VaList(bp+64, iClient)) + sqlite3.Xsqlite3_close(tls, g.db) + crt.Xexit(tls, 1) + } + for trySql(tls, ts+678 /* "COMMIT" */, 0) == 5 { + sqlite3.Xsqlite3_sleep(tls, 10) + totalTime = totalTime + (10) + } + sqlite3.Xsqlite3_sleep(tls, 100) + totalTime = totalTime + (100) + continue + } + fatalError(tls, ts+503 /* "%s" */, crt.VaList(bp+72, sqlite3.Xsqlite3_errmsg(tls, g.db))) + } + g.iTimeout = 10000 + return int32(0) } -var s__157 = [16]byte{0x25, 0x30, 0x35, 0x64, 0x2e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x25, 0x30, 0x32, 0x64} +// Mark a script as having finished. Remove the CLIENT table entry +// if bShutdown is true. +func finishScript(tls *crt.TLS, iClient int32, taskId int32, bShutdown int32) int32 { /* mptest.c:623:12: */ + bp := tls.Alloc(16) + defer tls.Free(16) -var s__158 = [10]byte{0x42, 0x45, 0x47, 0x49, 0x4e, 0x3a, 0x20, 0x25, 0x73} + runSql(tls, -var s__159 = [105]byte{ - 0x57, 0x69, 0x74, 0x68, 0x20, 0x53, 0x51, 0x4c, 0x69, 0x74, 0x65, 0x20, 0x33, 0x2e, 0x33, 0x30, - 0x2e, 0x31, 0x20, 0x32, 0x30, 0x31, 0x39, 0x2d, 0x31, 0x30, 0x2d, 0x31, 0x30, 0x20, 0x32, 0x30, - 0x3a, 0x31, 0x39, 0x3a, 0x34, 0x35, 0x20, 0x31, 0x38, 0x64, 0x62, 0x30, 0x33, 0x32, 0x64, 0x30, - 0x35, 0x38, 0x66, 0x31, 0x34, 0x33, 0x36, 0x63, 0x65, 0x33, 0x64, 0x65, 0x61, 0x38, 0x34, 0x30, - 0x38, 0x31, 0x66, 0x34, 0x65, 0x65, 0x35, 0x61, 0x30, 0x66, 0x32, 0x32, 0x35, 0x39, 0x61, 0x64, - 0x39, 0x37, 0x33, 0x30, 0x31, 0x64, 0x34, 0x33, 0x63, 0x34, 0x32, 0x36, 0x62, 0x63, 0x37, 0x66, - 0x33, 0x64, 0x66, 0x31, 0x62, 0x30, 0x62, 0x0a, + ts+685 /* "UPDATE task SE..." */, crt.VaList(bp, taskId)) + if bShutdown != 0 { + runSql(tls, ts+360 /* "DELETE FROM clie..." */, crt.VaList(bp+8, iClient)) + } + return 0 } -var s__160 = [13]byte{0x2d, 0x44, 0x53, 0x51, 0x4c, 0x49, 0x54, 0x45, 0x5f, 0x25, 0x73, 0x0a} - -var s__161 = [29]byte{ - 0x2e, 0x2e, 0x2e, 0x20, 0x25, 0x73, 0x74, 0x72, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, - 0x75, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x27, 0x25, 0x73, 0x27, 0x0a, +// Start up a client process for iClient, if it is not already +// running. If the client is already running, then this routine +// is a no-op. +func startClient(tls *crt.TLS, iClient int32) { /* mptest.c:638:13: */ + bp := tls.Alloc(96) + defer tls.Free(96) + + runSql(tls, ts+766 /* "INSERT OR IGNORE..." */, crt.VaList(bp, iClient)) + if sqlite3.Xsqlite3_changes(tls, g.db) != 0 { + var zSys uintptr + var rc int32 + zSys = sqlite3.Xsqlite3_mprintf(tls, ts+808, /* "%s \"%s\" --client..." */ + crt.VaList(bp+8, g.argv0, g.zDbFile, iClient, g.iTrace)) + if g.bSqlTrace != 0 { + zSys = sqlite3.Xsqlite3_mprintf(tls, ts+839 /* "%z --sqltrace" */, crt.VaList(bp+40, zSys)) + } + if g.bSync != 0 { + zSys = sqlite3.Xsqlite3_mprintf(tls, ts+853 /* "%z --sync" */, crt.VaList(bp+48, zSys)) + } + if g.zVfs != 0 { + zSys = sqlite3.Xsqlite3_mprintf(tls, ts+863 /* "%z --vfs \"%s\"" */, crt.VaList(bp+56, zSys, g.zVfs)) + } + if g.iTrace >= 2 { + logMessage(tls, ts+877 /* "system('%q')" */, crt.VaList(bp+72, zSys)) + } + zSys = sqlite3.Xsqlite3_mprintf(tls, ts+890 /* "%z &" */, crt.VaList(bp+80, zSys)) + rc = crt.Xsystem(tls, zSys) + if rc != 0 { + errorMessage(tls, ts+895 /* "system() fails w..." */, crt.VaList(bp+88, rc)) + } + sqlite3.Xsqlite3_free(tls, zSys) + } } -var s__162 = [7]byte{0x73, 0x74, 0x69, 0x6c, 0x6c, 0x20} - -var s__163 = [41]byte{ - 0x75, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x75, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, - 0x20, 0x27, 0x25, 0x73, 0x27, 0x20, 0x61, 0x66, 0x74, 0x65, 0x72, 0x20, 0x25, 0x64, 0x20, 0x61, - 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x0a, +// Read the entire content of a file into memory +func readFile(tls *crt.TLS, zFilename uintptr) uintptr { /* mptest.c:684:13: */ + bp := tls.Alloc(8) + defer tls.Free(8) + + var in uintptr = crt.Xfopen(tls, zFilename, ts+929 /* "rb" */) + var sz int64 + var z uintptr + if in == uintptr(0) { + fatalError(tls, ts+932 /* "cannot open \"%s\"..." */, crt.VaList(bp, zFilename)) + } + crt.Xfseek(tls, in, int64(0), 2) + sz = crt.Xftell(tls, in) + crt.Xrewind(tls, in) + z = sqlite3.Xsqlite3_malloc(tls, (int32(sz + int64(1)))) + sz = int64(crt.Xfread(tls, z, uint64(1), uint64(sz), in)) + *(*int8)(unsafe.Pointer(z + uintptr(sz))) = int8(0) + crt.Xfclose(tls, in) + return z } -var s__164 = [17]byte{0x63, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x20, 0x6f, 0x70, 0x65, 0x6e, 0x20, 0x5b, 0x25, 0x73, 0x5d} - -var s__165 = [24]byte{ - 0x50, 0x52, 0x41, 0x47, 0x4d, 0x41, 0x20, 0x6a, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, - 0x6f, 0x64, 0x65, 0x3d, 0x25, 0x51, 0x3b, +// Return the length of the next token. +func tokenLength(tls *crt.TLS, z uintptr, pnLine uintptr) int32 { /* mptest.c:704:12: */ + var n int32 = 0 + if ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(0))))))*2))) & int32(uint16(8192))) != 0) || ((int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '/') && (int32(*(*int8)(unsafe.Pointer(z + uintptr(1)))) == '*')) { + var inC int32 = 0 + var c int32 + if int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '/' { + inC = 1 + n = 2 + } + for (crt.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(z + uintptr(crt.PostIncInt32(&n, 1))))))) != 0 { + if c == '\n' { + (*(*int32)(unsafe.Pointer(pnLine)))++ + } + if (int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(c)))*2))) & int32(uint16(8192))) != 0 { + continue + } + if ((inC != 0) && (c == '*')) && (int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == '/') { + n++ + inC = 0 + } else if (!(inC != 0) && (c == '/')) && (int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == '*') { + n++ + inC = 1 + } else if !(inC != 0) { + break + } + } + n-- + } else if (int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '-') && (int32(*(*int8)(unsafe.Pointer(z + uintptr(1)))) == '-') { + for n = 2; (*(*int8)(unsafe.Pointer(z + uintptr(n))) != 0) && (int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) != '\n'); n++ { + } + if *(*int8)(unsafe.Pointer(z + uintptr(n))) != 0 { + (*(*int32)(unsafe.Pointer(pnLine)))++ + n++ + } + } else if (int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '"') || (int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '\'') { + var delim int32 = int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) + for n = 1; *(*int8)(unsafe.Pointer(z + uintptr(n))) != 0; n++ { + if int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == '\n' { + (*(*int32)(unsafe.Pointer(pnLine)))++ + } + if int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == delim { + n++ + if int32(*(*int8)(unsafe.Pointer(z + uintptr((n + 1))))) != delim { + break + } + } + } + } else { + var c int32 + for n = 1; (((((crt.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))))) != 0) && !((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(c)))*2))) & int32(uint16(8192))) != 0)) && (c != '"')) && (c != '\'')) && (c != ';'); n++ { + } + } + return n } -var s__166 = [23]byte{ - 0x50, 0x52, 0x41, 0x47, 0x4d, 0x41, 0x20, 0x73, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x6f, - 0x75, 0x73, 0x3d, 0x4f, 0x46, 0x46, +// Copy a single token into a string buffer. +func extractToken(tls *crt.TLS, zIn uintptr, nIn int32, zOut uintptr, nOut int32) int32 { /* mptest.c:749:12: */ + var i int32 + if nIn <= 0 { + *(*int8)(unsafe.Pointer(zOut + uintptr(0))) = int8(0) + return 0 + } + for i = 0; ((i < nIn) && (i < (nOut - 1))) && !((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(zIn + uintptr(i))))))*2))) & int32(uint16(8192))) != 0); i++ { + *(*int8)(unsafe.Pointer(zOut + uintptr(i))) = *(*int8)(unsafe.Pointer(zIn + uintptr(i))) + } + *(*int8)(unsafe.Pointer(zOut + uintptr(i))) = int8(0) + return i } -var s__167 = [8]byte{0x76, 0x66, 0x73, 0x6e, 0x61, 0x6d, 0x65} - -var s__168 = [5]byte{0x65, 0x76, 0x61, 0x6c} +// Find the number of characters up to the start of the next "--end" token. +func findEnd(tls *crt.TLS, z uintptr, pnLine uintptr) int32 { /* mptest.c:763:12: */ + var n int32 = 0 + for (*(*int8)(unsafe.Pointer(z + uintptr(n))) != 0) && ((crt.Xstrncmp(tls, (z+uintptr(n)), ts+961 /* "--end" */, uint64(5)) != 0) || !((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr((n + 5)))))))*2))) & int32(uint16(8192))) != 0)) { + n = n + (tokenLength(tls, (z + uintptr(n)), pnLine)) + } + return n +} -var s__169 = [13]byte{0x73, 0x74, 0x61, 0x72, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74} +// Find the number of characters up to the first character past the +// of the next "--endif" or "--else" token. Nested --if commands are +// also skipped. +func findEndif(tls *crt.TLS, z uintptr, stopAtElse int32, pnLine uintptr) int32 { /* mptest.c:776:12: */ + var n int32 = 0 + for *(*int8)(unsafe.Pointer(z + uintptr(n))) != 0 { + var len int32 = tokenLength(tls, (z + uintptr(n)), pnLine) + if ((crt.Xstrncmp(tls, (z+uintptr(n)), ts+967 /* "--endif" */, uint64(7)) == 0) && ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr((n + 7)))))))*2))) & int32(uint16(8192))) != 0)) || + (((stopAtElse != 0) && (crt.Xstrncmp(tls, (z+uintptr(n)), ts+975 /* "--else" */, uint64(6)) == 0)) && ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr((n + 6)))))))*2))) & int32(uint16(8192))) != 0)) { + return (n + len) + } + if (crt.Xstrncmp(tls, (z+uintptr(n)), ts+982 /* "--if" */, uint64(4)) == 0) && ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr((n + 4)))))))*2))) & int32(uint16(8192))) != 0) { + var skip int32 = findEndif(tls, ((z + uintptr(n)) + uintptr(len)), 0, pnLine) + n = n + (skip + len) + } else { + n = n + (len) + } + } + return n +} -var s__170 = [14]byte{0x62, 0x65, 0x67, 0x69, 0x6e, 0x20, 0x25, 0x73, 0x20, 0x28, 0x25, 0x64, 0x29} +// Wait for a client process to complete all its tasks +func waitForClient(tls *crt.TLS, iClient int32, iTimeout int32, zErrPrefix uintptr) { /* mptest.c:798:13: */ + bp := tls.Alloc(32) + defer tls.Free(32) + + var pStmt uintptr + var rc int32 + if iClient > 0 { + pStmt = prepareSql(tls, + + ts+987, /* "SELECT 1 FROM ta..." */ + crt.VaList(bp, iClient)) + } else { + pStmt = prepareSql(tls, + + ts+1083 /* "SELECT 1 FROM ta..." */, 0) + } + g.iTimeout = 0 + for (((crt.AssignInt32(&rc, sqlite3.Xsqlite3_step(tls, pStmt))) == 5) || (rc == 100)) && + (iTimeout > 0) { + sqlite3.Xsqlite3_reset(tls, pStmt) + sqlite3.Xsqlite3_sleep(tls, 50) + iTimeout = iTimeout - (50) + } + sqlite3.Xsqlite3_finalize(tls, pStmt) + g.iTimeout = 10000 + if rc != 101 { + if zErrPrefix == uintptr(0) { + zErrPrefix = ts + 1164 /* "" */ + } + if iClient > 0 { + errorMessage(tls, ts+1165 /* "%stimeout waitin..." */, crt.VaList(bp+8, zErrPrefix, iClient)) + } else { + errorMessage(tls, ts+1197 /* "%stimeout waitin..." */, crt.VaList(bp+24, zErrPrefix)) + } + } +} -var s__171 = [12]byte{0x65, 0x6e, 0x64, 0x20, 0x25, 0x73, 0x20, 0x28, 0x25, 0x64, 0x29} +// Return a pointer to the tail of a filename +func filenameTail(tls *crt.TLS, z uintptr) uintptr { /* mptest.c:836:13: */ + var i int32 + var j int32 + for i = crt.AssignInt32(&j, 0); *(*int8)(unsafe.Pointer(z + uintptr(i))) != 0; i++ { + if (int32(*(*int8)(unsafe.Pointer(z + uintptr(i))))) == '/' { + j = (i + 1) + } + } + return (z + uintptr(j)) +} -var s__172 = [11]byte{0x65, 0x6e, 0x64, 0x2d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74} +// Interpret zArg as a boolean value. Return either 0 or 1. +func booleanValue(tls *crt.TLS, zArg uintptr) int32 { /* mptest.c:845:12: */ + bp := tls.Alloc(8) + defer tls.Free(8) -var s__173 = [24]byte{ - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x66, - 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, + var i int32 + if zArg == uintptr(0) { + return 0 + } + for i = 0; (int32(*(*int8)(unsafe.Pointer(zArg + uintptr(i)))) >= '0') && (int32(*(*int8)(unsafe.Pointer(zArg + uintptr(i)))) <= '9'); i++ { + } + if (i > 0) && (int32(*(*int8)(unsafe.Pointer(zArg + uintptr(i)))) == 0) { + return crt.Xatoi(tls, zArg) + } + if (sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1231 /* "on" */) == 0) || (sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1234 /* "yes" */) == 0) { + return 1 + } + if (sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1238 /* "off" */) == 0) || (sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1242 /* "no" */) == 0) { + return 0 + } + errorMessage(tls, ts+1245 /* "unknown boolean:..." */, crt.VaList(bp, zArg)) + return 0 } -var s__174 = [436]byte{ - 0x44, 0x52, 0x4f, 0x50, 0x20, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x20, 0x49, 0x46, 0x20, 0x45, 0x58, - 0x49, 0x53, 0x54, 0x53, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x3b, 0x0a, 0x44, 0x52, 0x4f, 0x50, 0x20, - 0x54, 0x41, 0x42, 0x4c, 0x45, 0x20, 0x49, 0x46, 0x20, 0x45, 0x58, 0x49, 0x53, 0x54, 0x53, 0x20, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x3b, 0x0a, 0x44, 0x52, 0x4f, 0x50, 0x20, 0x54, - 0x41, 0x42, 0x4c, 0x45, 0x20, 0x49, 0x46, 0x20, 0x45, 0x58, 0x49, 0x53, 0x54, 0x53, 0x20, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x3b, 0x0a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x20, 0x54, 0x41, - 0x42, 0x4c, 0x45, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x28, 0x0a, 0x20, 0x20, 0x69, 0x64, 0x20, 0x49, - 0x4e, 0x54, 0x45, 0x47, 0x45, 0x52, 0x20, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x20, 0x4b, - 0x45, 0x59, 0x2c, 0x0a, 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x54, 0x45, 0x58, 0x54, 0x2c, - 0x0a, 0x20, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x49, 0x4e, 0x54, 0x45, 0x47, 0x45, - 0x52, 0x2c, 0x0a, 0x20, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x44, - 0x41, 0x54, 0x45, 0x2c, 0x0a, 0x20, 0x20, 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x44, - 0x41, 0x54, 0x45, 0x2c, 0x0a, 0x20, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x54, 0x45, - 0x58, 0x54, 0x0a, 0x29, 0x3b, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x20, 0x49, 0x4e, 0x44, 0x45, - 0x58, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x31, 0x20, 0x4f, 0x4e, 0x20, 0x74, 0x61, 0x73, - 0x6b, 0x28, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, - 0x69, 0x6d, 0x65, 0x29, 0x3b, 0x0a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x20, 0x49, 0x4e, 0x44, - 0x45, 0x58, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x32, 0x20, 0x4f, 0x4e, 0x20, 0x74, 0x61, - 0x73, 0x6b, 0x28, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x65, 0x6e, 0x64, 0x74, 0x69, - 0x6d, 0x65, 0x29, 0x3b, 0x0a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x20, 0x54, 0x41, 0x42, 0x4c, - 0x45, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x28, 0x6e, 0x45, 0x72, 0x72, 0x6f, - 0x72, 0x2c, 0x6e, 0x54, 0x65, 0x73, 0x74, 0x29, 0x3b, 0x0a, 0x49, 0x4e, 0x53, 0x45, 0x52, 0x54, - 0x20, 0x49, 0x4e, 0x54, 0x4f, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x20, 0x56, - 0x41, 0x4c, 0x55, 0x45, 0x53, 0x28, 0x30, 0x2c, 0x30, 0x29, 0x3b, 0x0a, 0x43, 0x52, 0x45, 0x41, - 0x54, 0x45, 0x20, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x28, - 0x69, 0x64, 0x20, 0x49, 0x4e, 0x54, 0x45, 0x47, 0x45, 0x52, 0x20, 0x50, 0x52, 0x49, 0x4d, 0x41, - 0x52, 0x59, 0x20, 0x4b, 0x45, 0x59, 0x2c, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x48, 0x61, 0x6c, 0x74, - 0x29, 0x3b, 0x0a, +// This routine exists as a convenient place to set a debugger +// breakpoint. +func test_breakpoint(tls *crt.TLS) { /* mptest.c:864:13: */ cnt++ } + +var cnt int32 = 0 /* mptest.c:864:56 */ + +// Maximum number of arguments to a --command + +// Run a script. +func runScript(tls *crt.TLS, iClient int32, taskId int32, zScript uintptr, zFilename uintptr) { /* mptest.c:872:13: */ + bp := tls.Alloc(1610) + defer tls.Free(1610) + + *(*int32)(unsafe.Pointer(bp + 376 /* lineno */)) = 1 + var prevLine int32 = 1 + var ii int32 = 0 + var iBegin int32 = 0 + var n int32 + var c int32 + var j int32 + var len int32 + var nArg int32 + // var sResult String at bp+360, 16 + + // var zCmd [30]int8 at bp+380, 30 + + // var zError [1000]int8 at bp+610, 1000 + + // var azArg [2][100]int8 at bp+410, 200 + + crt.Xmemset(tls, bp+360 /* &sResult */, 0, uint64(unsafe.Sizeof(String{}))) + stringReset(tls, bp+360 /* &sResult */) + for (crt.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(zScript + uintptr(ii)))))) != 0 { + prevLine = *(*int32)(unsafe.Pointer(bp + 376 /* lineno */)) + len = tokenLength(tls, (zScript + uintptr(ii)), bp+376 /* &lineno */) + if ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(c)))*2))) & int32(uint16(8192))) != 0) || ((c == '/') && (int32(*(*int8)(unsafe.Pointer(zScript + uintptr((ii + 1))))) == '*')) { + ii = ii + (len) + continue + } + if ((c != '-') || (int32(*(*int8)(unsafe.Pointer(zScript + uintptr((ii + 1))))) != '-')) || !((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(*(*int8)(unsafe.Pointer(zScript + uintptr((ii + 2))))))*2))) & int32(uint16(1024))) != 0) { + ii = ii + (len) + continue + } + + // Run any prior SQL before processing the new --command + if ii > iBegin { + var zSql uintptr = sqlite3.Xsqlite3_mprintf(tls, ts+1267 /* "%.*s" */, crt.VaList(bp, (ii-iBegin), (zScript+uintptr(iBegin)))) + evalSql(tls, bp+360 /* &sResult */, zSql, 0) + sqlite3.Xsqlite3_free(tls, zSql) + iBegin = (ii + len) + } + + // Parse the --command + if g.iTrace >= 2 { + logMessage(tls, ts+1267 /* "%.*s" */, crt.VaList(bp+16, len, (zScript+uintptr(ii)))) + } + n = extractToken(tls, ((zScript + uintptr(ii)) + uintptr(2)), (len - 2), bp+380 /* &zCmd[0] */, int32(unsafe.Sizeof([30]int8{}))) + for nArg = 0; (n < (len - 2)) && (nArg < 2); nArg++ { + for (n < (len - 2)) && ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(zScript + uintptr(((ii + 2) + n)))))))*2))) & int32(uint16(8192))) != 0) { + n++ + } + if n >= (len - 2) { + break + } + n = n + (extractToken(tls, (((zScript + uintptr(ii)) + uintptr(2)) + uintptr(n)), ((len - 2) - n), + (bp + 410 /* &azArg[0] */ + uintptr(nArg)*100), int32(unsafe.Sizeof([100]int8{})))) + } + for j = nArg; j < 2; j++ { + *(*int8)(unsafe.Pointer((bp + 410 /* &azArg[0] */ + uintptr(crt.PostIncInt32(&j, 1))*100) + uintptr(0))) = int8(0) + } + + // --sleep N + // + // Pause for N milliseconds + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1272 /* "sleep" */) == 0 { + sqlite3.Xsqlite3_sleep(tls, crt.Xatoi(tls, (bp+410 /* &azArg[0] */ +uintptr(0)*100))) + } else + + // --exit N + // + // Exit this process. If N>0 then exit without shutting down + // SQLite. (In other words, simulate a crash.) + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1278 /* "exit" */) == 0 { + var rc int32 = crt.Xatoi(tls, (bp + 410 /* &azArg[0] */ + uintptr(0)*100)) + finishScript(tls, iClient, taskId, 1) + if rc == 0 { + sqlite3.Xsqlite3_close(tls, g.db) + } + crt.Xexit(tls, rc) + } else + + // --testcase NAME + // + // Begin a new test case. Announce in the log that the test case + // has begun. + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1283 /* "testcase" */) == 0 { + if g.iTrace == 1 { + logMessage(tls, ts+1267 /* "%.*s" */, crt.VaList(bp+32, (len-1), (zScript+uintptr(ii)))) + } + stringReset(tls, bp+360 /* &sResult */) + } else + + // --finish + // + // Mark the current task as having finished, even if it is not. + // This can be used in conjunction with --exit to simulate a crash. + if (crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1292 /* "finish" */) == 0) && (iClient > 0) { + finishScript(tls, iClient, taskId, 1) + } else + + // --reset + // + // Reset accumulated results back to an empty string + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1299 /* "reset" */) == 0 { + stringReset(tls, bp+360 /* &sResult */) + } else + + // --match ANSWER... + // + // Check to see if output matches ANSWER. Report an error if not. + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1305 /* "match" */) == 0 { + var jj int32 + var zAns uintptr = (zScript + uintptr(ii)) + for jj = 7; (jj < (len - 1)) && ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(zAns + uintptr(jj))))))*2))) & int32(uint16(8192))) != 0); jj++ { + } + zAns += uintptr(jj) + if (((len - jj) - 1) != (*String)(unsafe.Pointer(bp+360 /* &sResult */)).n) || (crt.Xstrncmp(tls, (*String)(unsafe.Pointer(bp+360 /* &sResult */)).z, zAns, (uint64((len-jj)-1))) != 0) { + errorMessage(tls, ts+1311, /* "line %d of %s:\nE..." */ + crt.VaList(bp+48, prevLine, zFilename, ((len-jj)-1), zAns, (*String)(unsafe.Pointer(bp+360 /* &sResult */)).z)) + } + g.nTest++ + stringReset(tls, bp+360 /* &sResult */) + } else + + // --glob ANSWER... + // --notglob ANSWER.... + // + // Check to see if output does or does not match the glob pattern + // ANSWER. + if (crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1356 /* "glob" */) == 0) || (crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1361 /* "notglob" */) == 0) { + var jj int32 + var zAns uintptr = (zScript + uintptr(ii)) + var zCopy uintptr + var isGlob int32 = (crt.Bool32(int32(*(*int8)(unsafe.Pointer(bp + 380 /* &zCmd[0] */ + uintptr(0)))) == 'g')) + for jj = (9 - (3 * isGlob)); (jj < (len - 1)) && ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(zAns + uintptr(jj))))))*2))) & int32(uint16(8192))) != 0); jj++ { + } + zAns += uintptr(jj) + zCopy = sqlite3.Xsqlite3_mprintf(tls, ts+1267 /* "%.*s" */, crt.VaList(bp+88, ((len-jj)-1), zAns)) + if ((crt.Bool32(sqlite3.Xsqlite3_strglob(tls, zCopy, (*String)(unsafe.Pointer(bp+360 /* &sResult */)).z) == 0)) ^ isGlob) != 0 { + errorMessage(tls, ts+1369, /* "line %d of %s:\nE..." */ + crt.VaList(bp+104, prevLine, zFilename, zCopy, (*String)(unsafe.Pointer(bp+360 /* &sResult */)).z)) + } + sqlite3.Xsqlite3_free(tls, zCopy) + g.nTest++ + stringReset(tls, bp+360 /* &sResult */) + } else + + // --output + // + // Output the result of the previous SQL. + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1412 /* "output" */) == 0 { + logMessage(tls, ts+503 /* "%s" */, crt.VaList(bp+136, (*String)(unsafe.Pointer(bp+360 /* &sResult */)).z)) + } else + + // --source FILENAME + // + // Run a subscript from a separate file. + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1419 /* "source" */) == 0 { + var zNewFile uintptr + var zNewScript uintptr + var zToDel uintptr = uintptr(0) + zNewFile = (bp + 410 /* &azArg[0] */ + uintptr(0)*100) + if !((int32(*(*int8)(unsafe.Pointer(zNewFile + uintptr(0))))) == '/') { + var k int32 + for k = (int32(crt.Xstrlen(tls, zFilename)) - 1); (k >= 0) && !((int32(*(*int8)(unsafe.Pointer(zFilename + uintptr(k))))) == '/'); k-- { + } + if k > 0 { + zNewFile = crt.AssignUintptr(&zToDel, sqlite3.Xsqlite3_mprintf(tls, ts+1426 /* "%.*s/%s" */, crt.VaList(bp+144, k, zFilename, zNewFile))) + } + } + zNewScript = readFile(tls, zNewFile) + if g.iTrace != 0 { + logMessage(tls, ts+1434 /* "begin script [%s..." */, crt.VaList(bp+168, zNewFile)) + } + runScript(tls, 0, 0, zNewScript, zNewFile) + sqlite3.Xsqlite3_free(tls, zNewScript) + if g.iTrace != 0 { + logMessage(tls, ts+1453 /* "end script [%s]\n" */, crt.VaList(bp+176, zNewFile)) + } + sqlite3.Xsqlite3_free(tls, zToDel) + } else + + // --print MESSAGE.... + // + // Output the remainder of the line to the log file + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1470 /* "print" */) == 0 { + var jj int32 + for jj = 7; (jj < len) && ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(zScript + uintptr((ii + jj)))))))*2))) & int32(uint16(8192))) != 0); jj++ { + } + logMessage(tls, ts+1267 /* "%.*s" */, crt.VaList(bp+184, (len-jj), ((zScript+uintptr(ii))+uintptr(jj)))) + } else + + // --if EXPR + // + // Skip forward to the next matching --endif or --else if EXPR is false. + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1476 /* "if" */) == 0 { + var jj int32 + var rc int32 + var pStmt uintptr + for jj = 4; (jj < len) && ((int32(*(*uint16)(unsafe.Pointer((*(*uintptr)(unsafe.Pointer(crt.X__ctype_b_loc(tls)))) + uintptr(int32(uint8(*(*int8)(unsafe.Pointer(zScript + uintptr((ii + jj)))))))*2))) & int32(uint16(8192))) != 0); jj++ { + } + pStmt = prepareSql(tls, ts+1479 /* "SELECT %.*s" */, crt.VaList(bp+200, (len-jj), ((zScript+uintptr(ii))+uintptr(jj)))) + rc = sqlite3.Xsqlite3_step(tls, pStmt) + if (rc != 100) || (sqlite3.Xsqlite3_column_int(tls, pStmt, 0) == 0) { + ii = ii + (findEndif(tls, ((zScript + uintptr(ii)) + uintptr(len)), 1, bp+376 /* &lineno */)) + } + sqlite3.Xsqlite3_finalize(tls, pStmt) + } else + + // --else + // + // This command can only be encountered if currently inside an --if that + // is true. Skip forward to the next matching --endif. + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1491 /* "else" */) == 0 { + ii = ii + (findEndif(tls, ((zScript + uintptr(ii)) + uintptr(len)), 0, bp+376 /* &lineno */)) + } else + + // --endif + // + // This command can only be encountered if currently inside an --if that + // is true or an --else of a false if. This is a no-op. + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1496 /* "endif" */) == 0 { + } else + + // --start CLIENT + // + // Start up the given client. + if (crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1502 /* "start" */) == 0) && (iClient == 0) { + var iNewClient int32 = crt.Xatoi(tls, (bp + 410 /* &azArg[0] */ + uintptr(0)*100)) + if iNewClient > 0 { + startClient(tls, iNewClient) + } + } else + + // --wait CLIENT TIMEOUT + // + // Wait until all tasks complete for the given client. If CLIENT is + // "all" then wait for all clients to complete. Wait no longer than + // TIMEOUT milliseconds (default 10,000) + if (crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1508 /* "wait" */) == 0) && (iClient == 0) { + var iTimeout int32 + if nArg >= 2 { + iTimeout = crt.Xatoi(tls, (bp + 410 /* &azArg[0] */ + uintptr(1)*100)) + } else { + iTimeout = 10000 + } + sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([1000]int8{})), bp+610 /* &zError[0] */, ts+1513, /* "line %d of %s\n" */ + crt.VaList(bp+216, prevLine, zFilename)) + waitForClient(tls, crt.Xatoi(tls, (bp+410 /* &azArg[0] */ +uintptr(0)*100)), iTimeout, bp+610 /* &zError[0] */) + } else + + // --task CLIENT + // <task-content-here> + // --end + // + // Assign work to a client. Start the client if it is not running + // already. + if (crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1528 /* "task" */) == 0) && (iClient == 0) { + var iTarget int32 = crt.Xatoi(tls, (bp + 410 /* &azArg[0] */ + uintptr(0)*100)) + var iEnd int32 + var zTask uintptr + var zTName uintptr + iEnd = findEnd(tls, ((zScript + uintptr(ii)) + uintptr(len)), bp+376 /* &lineno */) + if iTarget < 0 { + errorMessage(tls, ts+1533, /* "line %d of %s: b..." */ + crt.VaList(bp+232, prevLine, zFilename, iTarget)) + } else { + zTask = sqlite3.Xsqlite3_mprintf(tls, ts+1267 /* "%.*s" */, crt.VaList(bp+256, iEnd, ((zScript+uintptr(ii))+uintptr(len)))) + if nArg > 1 { + zTName = sqlite3.Xsqlite3_mprintf(tls, ts+503 /* "%s" */, crt.VaList(bp+272, (bp+410 /* &azArg[0] */ +uintptr(1)*100))) + } else { + zTName = sqlite3.Xsqlite3_mprintf(tls, ts+1570 /* "%s:%d" */, crt.VaList(bp+280, filenameTail(tls, zFilename), prevLine)) + } + startClient(tls, iTarget) + runSql(tls, + ts+1576 /* "INSERT INTO task..." */, crt.VaList(bp+296, iTarget, zTask, zTName)) + sqlite3.Xsqlite3_free(tls, zTask) + sqlite3.Xsqlite3_free(tls, zTName) + } + iEnd = iEnd + (tokenLength(tls, (((zScript + uintptr(ii)) + uintptr(len)) + uintptr(iEnd)), bp+376 /* &lineno */)) + len = len + (iEnd) + iBegin = (ii + len) + } else + + // --breakpoint + // + // This command calls "test_breakpoint()" which is a routine provided + // as a convenient place to set a debugger breakpoint. + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1632 /* "breakpoint" */) == 0 { + test_breakpoint(tls) + } else + + // --show-sql-errors BOOLEAN + // + // Turn display of SQL errors on and off. + if crt.Xstrcmp(tls, bp+380 /* &zCmd[0] */, ts+1643 /* "show-sql-errors" */) == 0 { + g.bIgnoreSqlErrors = func() int32 { + if nArg >= 1 { + return crt.BoolInt32(!(booleanValue(tls, (bp+410 /* &azArg[0] */ +uintptr(0)*100)) != 0)) + } + return 1 + }() + } else { + errorMessage(tls, ts+1659, /* "line %d of %s: u..." */ + crt.VaList(bp+320, prevLine, zFilename, bp+380 /* &zCmd[0] */)) + } + ii = ii + (len) + } + if iBegin < ii { + var zSql uintptr = sqlite3.Xsqlite3_mprintf(tls, ts+1267 /* "%.*s" */, crt.VaList(bp+344, (ii-iBegin), (zScript+uintptr(iBegin)))) + runSql(tls, zSql, 0) + sqlite3.Xsqlite3_free(tls, zSql) + } + stringFree(tls, bp+360 /* &sResult */) } -var s__175 = [28]byte{ - 0x62, 0x65, 0x67, 0x69, 0x6e, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x5b, 0x25, 0x73, - 0x5d, 0x20, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x20, 0x25, 0x64, 0x0a, +// Look for a command-line option. If present, return a pointer. +// Return NULL if missing. +// +// hasArg==0 means the option is a flag. It is either present or not. +// hasArg==1 means the option has an argument. Return a pointer to the +// argument. +func findOption(tls *crt.TLS, azArg uintptr, pnArg uintptr, zOption uintptr, hasArg int32) uintptr { /* mptest.c:1201:13: */ + bp := tls.Alloc(8) + defer tls.Free(8) + + var i int32 + var j int32 + var zReturn uintptr = uintptr(0) + var nArg int32 = *(*int32)(unsafe.Pointer(pnArg)) + + if !((hasArg == 0) || (hasArg == 1)) { + crt.X__assert_fail(tls, ts+1695 /* "hasArg==0 || has..." */, ts+164 /* "testdata/sqlite-..." */, uint32(1211), uintptr(unsafe.Pointer(&__func__1))) + } + for i = 0; i < nArg; i++ { + var z uintptr + if (i + hasArg) >= nArg { + break + } + z = *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*8)) + if int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) != '-' { + continue + } + z++ + if int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '-' { + if int32(*(*int8)(unsafe.Pointer(z + uintptr(1)))) == 0 { + break + } + z++ + } + if crt.Xstrcmp(tls, z, zOption) == 0 { + if (hasArg != 0) && (i == (nArg - 1)) { + fatalError(tls, ts+1718 /* "command-line opt..." */, crt.VaList(bp, z)) + } + if hasArg != 0 { + zReturn = *(*uintptr)(unsafe.Pointer(azArg + uintptr((i+1))*8)) + } else { + zReturn = *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*8)) + } + j = ((i + 1) + (crt.Bool32(hasArg != 0))) + for j < nArg { + *(*uintptr)(unsafe.Pointer(azArg + uintptr(crt.PostIncInt32(&i, 1))*8)) = *(*uintptr)(unsafe.Pointer(azArg + uintptr(crt.PostIncInt32(&j, 1))*8)) + } + *(*int32)(unsafe.Pointer(pnArg)) = i + return zReturn + } + } + return zReturn } -var s__176 = [26]byte{ - 0x65, 0x6e, 0x64, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x5b, 0x25, 0x73, 0x5d, 0x20, - 0x63, 0x79, 0x63, 0x6c, 0x65, 0x20, 0x25, 0x64, 0x0a, -} +var __func__1 = *(*[11]int8)(unsafe.Pointer(ts + 1766 /* "findOption" */)) /* mptest.c:1206:2 */ -var s__177 = [20]byte{ - 0x64, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x2e, - 0x2e, 0x2e, 0x0a, -} +// Print a usage message for the program and exit +func usage(tls *crt.TLS, argv0 uintptr) { /* mptest.c:1241:13: */ + bp := tls.Alloc(8) + defer tls.Free(8) -var s__178 = [29]byte{ - 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x53, 0x45, - 0x54, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x48, 0x61, 0x6c, 0x74, 0x3d, 0x31, -} + var i int32 + var zTail uintptr = argv0 + for i = 0; *(*int8)(unsafe.Pointer(argv0 + uintptr(i))) != 0; i++ { + if (int32(*(*int8)(unsafe.Pointer(argv0 + uintptr(i))))) == '/' { + zTail = ((argv0 + uintptr(i)) + uintptr(1)) + } + } + crt.Xfprintf(tls, crt.Xstderr, ts+1777 /* "Usage: %s DATABA..." */, crt.VaList(bp, zTail)) + crt.Xfprintf(tls, crt.Xstderr, -var s__179 = [21]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x31, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, + ts+1816 /* "Options:\n --er..." */, 0) + crt.Xexit(tls, 1) } -var s__180 = [35]byte{ - 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x20, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x2c, 0x20, 0x6e, - 0x54, 0x65, 0x73, 0x74, 0x20, 0x46, 0x52, 0x4f, 0x4d, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, - 0x72, 0x73, +// Report on unrecognized arguments +func unrecognizedArguments(tls *crt.TLS, argv0 uintptr, nArg int32, azArg uintptr) { /* mptest.c:1265:13: */ + bp := tls.Alloc(16) + defer tls.Free(16) + + var i int32 + crt.Xfprintf(tls, crt.Xstderr, ts+2388 /* "%s: unrecognized..." */, crt.VaList(bp, argv0)) + for i = 0; i < nArg; i++ { + crt.Xfprintf(tls, crt.Xstderr, ts+2416 /* " %s" */, crt.VaList(bp+8, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*8)))) + } + crt.Xfprintf(tls, crt.Xstderr, ts+2420 /* "\n" */, 0) + crt.Xexit(tls, 1) } -var s__181 = [36]byte{ - 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x3a, 0x20, 0x25, 0x64, 0x20, 0x65, 0x72, 0x72, 0x6f, - 0x72, 0x73, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x25, 0x64, 0x20, 0x74, 0x65, 0x73, - 0x74, 0x73, 0x0a, +func main1(tls *crt.TLS, argc int32, argv uintptr) int32 { /* mptest.c:1279:18: */ + bp := tls.Alloc(264) + defer tls.Free(264) + + var zClient uintptr + var iClient int32 + // var n int32 at bp+232, 4 + + var i int32 + var openFlags int32 = 0x00000002 + var rc int32 + // var zScript uintptr at bp+240, 8 + + // var taskId int32 at bp+248, 4 + + var zTrace uintptr + var zCOption uintptr + var zJMode uintptr + var zNRep uintptr + var nRep int32 = 1 + var iRep int32 + var iTmout int32 = 0 // Default: no timeout + var zTmout uintptr + + g.argv0 = *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*8)) + g.iTrace = 1 + if argc < 2 { + usage(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*8))) + } + g.zDbFile = *(*uintptr)(unsafe.Pointer(argv + uintptr(1)*8)) + if strglob(tls, ts+2422 /* "*.test" */, g.zDbFile) != 0 { + usage(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*8))) + } + if crt.Xstrcmp(tls, sqlite3.Xsqlite3_sourceid(tls), ts+2429 /* "2020-06-18 14:00..." */) != 0 { + crt.Xfprintf(tls, crt.Xstderr, + + ts+2514, /* "SQLite library a..." */ + crt.VaList(bp, sqlite3.Xsqlite3_sourceid(tls), ts+2429 /* "2020-06-18 14:00..." */)) + crt.Xexit(tls, 1) + } + *(*int32)(unsafe.Pointer(bp + 232 /* n */)) = (argc - 2) + sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([32]int8{})), uintptr(unsafe.Pointer(&g))+64 /* &.zName */, ts+2574 /* "%05d.mptest" */, crt.VaList(bp+16, crt.Xgetpid(tls))) + zJMode = findOption(tls, (argv + uintptr(2)*8), bp+232 /* &n */, ts+2586 /* "journalmode" */, 1) + zNRep = findOption(tls, (argv + uintptr(2)*8), bp+232 /* &n */, ts+2598 /* "repeat" */, 1) + if zNRep != 0 { + nRep = crt.Xatoi(tls, zNRep) + } + if nRep < 1 { + nRep = 1 + } + g.zVfs = findOption(tls, (argv + uintptr(2)*8), bp+232 /* &n */, ts+2605 /* "vfs" */, 1) + zClient = findOption(tls, (argv + uintptr(2)*8), bp+232 /* &n */, ts+2609 /* "client" */, 1) + g.zErrLog = findOption(tls, (argv + uintptr(2)*8), bp+232 /* &n */, ts+2616 /* "errlog" */, 1) + g.zLog = findOption(tls, (argv + uintptr(2)*8), bp+232 /* &n */, ts+2623 /* "log" */, 1) + zTrace = findOption(tls, (argv + uintptr(2)*8), bp+232 /* &n */, ts+2627 /* "trace" */, 1) + if zTrace != 0 { + g.iTrace = crt.Xatoi(tls, zTrace) + } + if findOption(tls, (argv+uintptr(2)*8), bp+232 /* &n */, ts+2633 /* "quiet" */, 0) != uintptr(0) { + g.iTrace = 0 + } + zTmout = findOption(tls, (argv + uintptr(2)*8), bp+232 /* &n */, ts+2639 /* "timeout" */, 1) + if zTmout != 0 { + iTmout = crt.Xatoi(tls, zTmout) + } + g.bSqlTrace = (crt.Bool32(findOption(tls, (argv+uintptr(2)*8), bp+232 /* &n */, ts+2647 /* "sqltrace" */, 0) != uintptr(0))) + g.bSync = (crt.Bool32(findOption(tls, (argv+uintptr(2)*8), bp+232 /* &n */, ts+2656 /* "sync" */, 0) != uintptr(0))) + if g.zErrLog != 0 { + g.pErrLog = crt.Xfopen(tls, g.zErrLog, ts+2661 /* "a" */) + } else { + g.pErrLog = crt.Xstderr + } + if g.zLog != 0 { + g.pLog = crt.Xfopen(tls, g.zLog, ts+2661 /* "a" */) + } else { + g.pLog = crt.Xstdout + } + + sqlite3.Xsqlite3_config(tls, 16, crt.VaList(bp+24, *(*uintptr)(unsafe.Pointer(&struct { + f func(*crt.TLS, uintptr, int32, uintptr) + }{sqlErrorCallback})), 0)) + if zClient != 0 { + iClient = crt.Xatoi(tls, zClient) + if iClient < 1 { + fatalError(tls, ts+2663 /* "illegal client n..." */, crt.VaList(bp+40, iClient)) + } + sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([32]int8{})), uintptr(unsafe.Pointer(&g))+64 /* &.zName */, ts+2690, /* "%05d.client%02d" */ + crt.VaList(bp+48, crt.Xgetpid(tls), iClient)) + } else { + var nTry int32 = 0 + if g.iTrace > 0 { + crt.Xprintf(tls, ts+2706 /* "BEGIN: %s" */, crt.VaList(bp+64, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*8)))) + for i = 1; i < argc; i++ { + crt.Xprintf(tls, ts+2416 /* " %s" */, crt.VaList(bp+72, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) + } + crt.Xprintf(tls, ts+2420 /* "\n" */, 0) + crt.Xprintf(tls, ts+2716 /* "With SQLite 3.32..." */, 0) + for i = 0; (crt.AssignUintptr(&zCOption, sqlite3.Xsqlite3_compileoption_get(tls, i))) != uintptr(0); i++ { + crt.Xprintf(tls, ts+2821 /* "-DSQLITE_%s\n" */, crt.VaList(bp+80, zCOption)) + } + crt.Xfflush(tls, crt.Xstdout) + } + iClient = 0 + for ok := true; ok; ok = (((rc != 0) && ((crt.PreIncInt32(&nTry, 1)) < 60)) && (sqlite3.Xsqlite3_sleep(tls, 1000) > 0)) { + if (nTry % 5) == 4 { + crt.Xprintf(tls, ts+2834, /* "... %strying to ..." */ + crt.VaList(bp+88, func() uintptr { + if nTry > 5 { + return ts + 2863 /* "still " */ + } + return ts + 1164 /* "" */ + }(), g.zDbFile)) + } + rc = crt.Xunlink(tls, g.zDbFile) + if (rc != 0) && ((*(*int32)(unsafe.Pointer(crt.X__errno_location(tls)))) == 2) { + rc = 0 + } + } + if rc != 0 { + fatalError(tls, ts+2870, /* "unable to unlink..." */ + crt.VaList(bp+104, g.zDbFile, nTry)) + } + openFlags = openFlags | (0x00000004) + } + rc = sqlite3.Xsqlite3_open_v2(tls, g.zDbFile, (uintptr(unsafe.Pointer(&g)) + 24 /* &.db */), openFlags, g.zVfs) + if rc != 0 { + fatalError(tls, ts+2911 /* "cannot open [%s]" */, crt.VaList(bp+120, g.zDbFile)) + } + if iTmout > 0 { + sqlite3.Xsqlite3_busy_timeout(tls, g.db, iTmout) + } + + if zJMode != 0 { + runSql(tls, ts+2928 /* "PRAGMA journal_m..." */, crt.VaList(bp+128, zJMode)) + } + if !(g.bSync != 0) { + trySql(tls, ts+2952 /* "PRAGMA synchrono..." */, 0) + } + sqlite3.Xsqlite3_enable_load_extension(tls, g.db, 1) + sqlite3.Xsqlite3_busy_handler(tls, g.db, *(*uintptr)(unsafe.Pointer(&struct { + f func(*crt.TLS, uintptr, int32) int32 + }{busyHandler})), uintptr(0)) + sqlite3.Xsqlite3_create_function(tls, g.db, ts+2975 /* "vfsname" */, 0, 1, uintptr(0), + *(*uintptr)(unsafe.Pointer(&struct { + f func(*crt.TLS, uintptr, int32, uintptr) + }{vfsNameFunc})), uintptr(0), uintptr(0)) + sqlite3.Xsqlite3_create_function(tls, g.db, ts+2983 /* "eval" */, 1, 1, uintptr(0), + *(*uintptr)(unsafe.Pointer(&struct { + f func(*crt.TLS, uintptr, int32, uintptr) + }{evalFunc})), uintptr(0), uintptr(0)) + g.iTimeout = 10000 + if g.bSqlTrace != 0 { + sqlite3.Xsqlite3_trace(tls, g.db, *(*uintptr)(unsafe.Pointer(&struct { + f func(*crt.TLS, uintptr, uintptr) + }{sqlTraceCallback})), uintptr(0)) + } + if iClient > 0 { + if *(*int32)(unsafe.Pointer(bp + 232 /* n */)) > 0 { + unrecognizedArguments(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*8)), *(*int32)(unsafe.Pointer(bp + 232 /* n */)), (argv + uintptr(2)*8)) + } + if g.iTrace != 0 { + logMessage(tls, ts+2988 /* "start-client" */, 0) + } + for 1 != 0 { + *(*uintptr)(unsafe.Pointer(bp + 256 /* zTaskName */)) = uintptr(0) + rc = startScript(tls, iClient, bp+240 /* &zScript */, bp+248 /* &taskId */, bp+256 /* &zTaskName */) + if rc == 101 { + break + } + if g.iTrace != 0 { + logMessage(tls, ts+3001 /* "begin %s (%d)" */, crt.VaList(bp+136, *(*uintptr)(unsafe.Pointer(bp + 256 /* zTaskName */)), *(*int32)(unsafe.Pointer(bp + 248 /* taskId */)))) + } + runScript(tls, iClient, *(*int32)(unsafe.Pointer(bp + 248 /* taskId */)), *(*uintptr)(unsafe.Pointer(bp + 240 /* zScript */)), *(*uintptr)(unsafe.Pointer(bp + 256 /* zTaskName */))) + if g.iTrace != 0 { + logMessage(tls, ts+3015 /* "end %s (%d)" */, crt.VaList(bp+152, *(*uintptr)(unsafe.Pointer(bp + 256 /* zTaskName */)), *(*int32)(unsafe.Pointer(bp + 248 /* taskId */)))) + } + finishScript(tls, iClient, *(*int32)(unsafe.Pointer(bp + 248 /* taskId */)), 0) + sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 256 /* zTaskName */))) + sqlite3.Xsqlite3_sleep(tls, 10) + } + if g.iTrace != 0 { + logMessage(tls, ts+3027 /* "end-client" */, 0) + } + } else { + var pStmt uintptr + var iTimeout int32 + if *(*int32)(unsafe.Pointer(bp + 232 /* n */)) == 0 { + fatalError(tls, ts+3038 /* "missing script f..." */, 0) + } + if *(*int32)(unsafe.Pointer(bp + 232 /* n */)) > 1 { + unrecognizedArguments(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*8)), *(*int32)(unsafe.Pointer(bp + 232 /* n */)), (argv + uintptr(2)*8)) + } + runSql(tls, + + ts+3062 /* "DROP TABLE IF EX..." */, 0) + *(*uintptr)(unsafe.Pointer(bp + 240 /* zScript */)) = readFile(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(2)*8))) + for iRep = 1; iRep <= nRep; iRep++ { + if g.iTrace != 0 { + logMessage(tls, ts+3498 /* "begin script [%s..." */, crt.VaList(bp+168, *(*uintptr)(unsafe.Pointer(argv + uintptr(2)*8)), iRep)) + } + runScript(tls, 0, 0, *(*uintptr)(unsafe.Pointer(bp + 240 /* zScript */)), *(*uintptr)(unsafe.Pointer(argv + uintptr(2)*8))) + if g.iTrace != 0 { + logMessage(tls, ts+3526 /* "end script [%s] ..." */, crt.VaList(bp+184, *(*uintptr)(unsafe.Pointer(argv + uintptr(2)*8)), iRep)) + } + } + sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 240 /* zScript */))) + waitForClient(tls, 0, 2000, ts+3552 /* "during shutdown...." */) + trySql(tls, ts+3572 /* "UPDATE client SE..." */, 0) + sqlite3.Xsqlite3_sleep(tls, 10) + g.iTimeout = 0 + iTimeout = 1000 + for (((crt.AssignInt32(&rc, trySql(tls, ts+3601 /* "SELECT 1 FROM cl..." */, 0))) == 5) || + (rc == 100)) && (iTimeout > 0) { + sqlite3.Xsqlite3_sleep(tls, 10) + iTimeout = iTimeout - (10) + } + sqlite3.Xsqlite3_sleep(tls, 100) + pStmt = prepareSql(tls, ts+3622 /* "SELECT nError, n..." */, 0) + iTimeout = 1000 + for ((crt.AssignInt32(&rc, sqlite3.Xsqlite3_step(tls, pStmt))) == 5) && (iTimeout > 0) { + sqlite3.Xsqlite3_sleep(tls, 10) + iTimeout = iTimeout - (10) + } + if rc == 100 { + *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 112 /* &.nError */)) += (sqlite3.Xsqlite3_column_int(tls, pStmt, 0)) + *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 116 /* &.nTest */)) += (sqlite3.Xsqlite3_column_int(tls, pStmt, 1)) + } + sqlite3.Xsqlite3_finalize(tls, pStmt) + } + sqlite3.Xsqlite3_close(tls, g.db) + maybeClose(tls, g.pLog) + maybeClose(tls, g.pErrLog) + if iClient == 0 { + crt.Xprintf(tls, ts+3657 /* "Summary: %d erro..." */, crt.VaList(bp+200, g.nError, g.nTest)) + crt.Xprintf(tls, ts+3693 /* "END: %s" */, crt.VaList(bp+216, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*8)))) + for i = 1; i < argc; i++ { + crt.Xprintf(tls, ts+2416 /* " %s" */, crt.VaList(bp+224, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))) + } + crt.Xprintf(tls, ts+2420 /* "\n" */, 0) + } + return (crt.Bool32(g.nError > 0)) } -var s__182 = [8]byte{0x45, 0x4e, 0x44, 0x3a, 0x20, 0x25, 0x73} +var ts1 = "%s%.*s\n\x00%s:ERROR: \x00%s:FATAL: \x00UPDATE client SET wantHalt=1;\x00%s: \x00main\x00timeout after %dms\x00[%.*s]\x00(info) %s\x00(errcode=%d) %s\x00%s\n%s\n\x00out of memory\x00 \x00nil\x00'\x00g.iTimeout>0\x00testdata/sqlite-src-3320300/mptest/mptest.c\x00error(%d)\x00evalSql\x00BEGIN IMMEDIATE\x00in startScript: %s\x00UPDATE counters SET nError=nError+%d, nTest=nTest+%d\x00SELECT 1 FROM client WHERE id=%d AND wantHalt\x00DELETE FROM client WHERE id=%d\x00COMMIT TRANSACTION;\x00SELECT script, id, name FROM task WHERE client=%d AND starttime IS NULL ORDER BY id LIMIT 1\x00%s\x00UPDATE task SET starttime=strftime('%%Y-%%m-%%d %%H:%%M:%%f','now') WHERE id=%d;\x00Waited over 30 seconds with no work. Giving up.\x00DELETE FROM client WHERE id=%d; COMMIT;\x00COMMIT\x00UPDATE task SET endtime=strftime('%%Y-%%m-%%d %%H:%%M:%%f','now') WHERE id=%d;\x00INSERT OR IGNORE INTO client VALUES(%d,0)\x00%s \"%s\" --client %d --trace %d\x00%z --sqltrace\x00%z --sync\x00%z --vfs \"%s\"\x00system('%q')\x00%z &\x00system() fails with error code %d\x00rb\x00cannot open \"%s\" for reading\x00--end\x00--endif\x00--else\x00--if\x00SELECT 1 FROM task WHERE client=%d AND client IN (SELECT id FROM client) AND endtime IS NULL\x00SELECT 1 FROM task WHERE client IN (SELECT id FROM client) AND endtime IS NULL\x00\x00%stimeout waiting for client %d\x00%stimeout waiting for all clients\x00on\x00yes\x00off\x00no\x00unknown boolean: [%s]\x00%.*s\x00sleep\x00exit\x00testcase\x00finish\x00reset\x00match\x00line %d of %s:\nExpected [%.*s]\n Got [%s]\x00glob\x00notglob\x00line %d of %s:\nExpected [%s]\n Got [%s]\x00output\x00source\x00%.*s/%s\x00begin script [%s]\n\x00end script [%s]\n\x00print\x00if\x00SELECT %.*s\x00else\x00endif\x00start\x00wait\x00line %d of %s\n\x00task\x00line %d of %s: bad client number: %d\x00%s:%d\x00INSERT INTO task(client,script,name) VALUES(%d,'%q',%Q)\x00breakpoint\x00show-sql-errors\x00line %d of %s: unknown command --%s\x00hasArg==0 || hasArg==1\x00command-line option \"--%s\" requires an argument\x00findOption\x00Usage: %s DATABASE ?OPTIONS? ?SCRIPT?\n\x00Options:\n --errlog FILENAME Write errors to FILENAME\n --journalmode MODE Use MODE as the journal_mode\n --log FILENAME Log messages to FILENAME\n --quiet Suppress unnecessary output\n --vfs NAME Use NAME as the VFS\n --repeat N Repeat the test N times\n --sqltrace Enable SQL tracing\n --sync Enable synchronous disk writes\n --timeout MILLISEC Busy timeout is MILLISEC\n --trace BOOLEAN Enable or disable tracing\n\x00%s: unrecognized arguments:\x00 %s\x00\n\x00*.test\x002020-06-18 14:00:33 7ebdfa80be8e8e73324b8d66b3460222eb74c7e9dfd655b48d6ca7e1933cc8fd\x00SQLite library and header mismatch\nLibrary: %s\nHeader: %s\n\x00%05d.mptest\x00journalmode\x00repeat\x00vfs\x00client\x00errlog\x00log\x00trace\x00quiet\x00timeout\x00sqltrace\x00sync\x00a\x00illegal client number: %d\n\x00%05d.client%02d\x00BEGIN: %s\x00With SQLite 3.32.3 2020-06-18 14:00:33 7ebdfa80be8e8e73324b8d66b3460222eb74c7e9dfd655b48d6ca7e1933cc8fd\n\x00-DSQLITE_%s\n\x00... %strying to unlink '%s'\n\x00still \x00unable to unlink '%s' after %d attempts\n\x00cannot open [%s]\x00PRAGMA journal_mode=%Q;\x00PRAGMA synchronous=OFF\x00vfsname\x00eval\x00start-client\x00begin %s (%d)\x00end %s (%d)\x00end-client\x00missing script filename\x00DROP TABLE IF EXISTS task;\nDROP TABLE IF EXISTS counters;\nDROP TABLE IF EXISTS client;\nCREATE TABLE task(\n id INTEGER PRIMARY KEY,\n name TEXT,\n client INTEGER,\n starttime DATE,\n endtime DATE,\n script TEXT\n);CREATE INDEX task_i1 ON task(client, starttime);\nCREATE INDEX task_i2 ON task(client, endtime);\nCREATE TABLE counters(nError,nTest);\nINSERT INTO counters VALUES(0,0);\nCREATE TABLE client(id INTEGER PRIMARY KEY, wantHalt);\n\x00begin script [%s] cycle %d\n\x00end script [%s] cycle %d\n\x00during shutdown...\n\x00UPDATE client SET wantHalt=1\x00SELECT 1 FROM client\x00SELECT nError, nTest FROM counters\x00Summary: %d errors out of %d tests\n\x00END: %s\x00" +var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data |