Lines Matching refs:Bitmask
461 ** bitmask tests, testcase() can be used to make sure each bit
9929 ** The bitmask datatype defined below is used for various optimizations.
9935 typedef u64 Bitmask;
9938 ** The number of bits in a Bitmask. "BMS" means "BitMask Size".
9940 #define BMS ((int)(sizeof(Bitmask)*8))
9979 Bitmask colUsed; /* Bit N (1<<N) set if column N of pTab is used */
10320 u32 cookieMask; /* Bitmask of schema verified databases */
11303 ** the MEMTYPE_* macros defined below. The type must be a bitmask with
12301 int btreeMask; /* Bitmask of db->aDb[] entries referenced */
39062 ** The vfsFlags parameter is a bitmask to pass to the flags parameter
47047 ** The "flags" parameter is a bitmask that might contain bits
61762 ** P1 is a 32-bit bitmask indicating whether or not each argument to the
67966 ** this fact in the pSrcList.a[].colUsed bitmask. Column 0 causes
67968 ** column number is greater than the number of bits in the bitmask
67969 ** then set the high-order bit of the bitmask.
67978 pMatch->colUsed |= ((Bitmask)1)<<n;
68022 pItem->colUsed |= ((Bitmask)1)<<(iCol>=BMS ? BMS-1 : iCol);
93517 ** This function returns a 32-bit bitmask indicating which columns of the
95584 ** the <op> using a bitmask encoding defined by WO_xxx below. The
95585 ** use of a bitmask encoding for the operator allows us to search
95605 ** bits that will fit in a Bitmask. The VDBE cursor numbers might be
95610 ** bits in the Bitmask. So, in the example above, the cursor numbers
95631 Bitmask prereqRight; /* Bitmask of tables used by pExpr->pRight */
95632 Bitmask prereqAll; /* Bitmask of tables referenced by pExpr */
95653 Bitmask vmask; /* Bitmask identifying virtual table cursors */
95671 Bitmask indexable; /* Bitmask of all indexable tables in the clause */
95694 ** If WhereMaskSet.ix[A]==B it means that The A-th bit of a Bitmask
95695 ** corresponds VDBE cursor number B. The A-th bit of a bitmask is 1<<A.
95720 Bitmask used; /* Bitmask of cursors used by this plan */
95915 ** Return the bitmask for the given cursor number. Return 0 if
95918 static Bitmask getMask(WhereMaskSet *pMaskSet, int iCursor){
95920 assert( pMaskSet->n<=sizeof(Bitmask)*8 );
95923 return ((Bitmask)1)<<i;
95944 ** a bitmask indicating which tables are used in that expression
95953 ** translate the cursor numbers into bitmask values and OR all
95956 static Bitmask exprListTableUsage(WhereMaskSet*, ExprList*);
95957 static Bitmask exprSelectTableUsage(WhereMaskSet*, Select*);
95958 static Bitmask exprTableUsage(WhereMaskSet *pMaskSet, Expr *p){
95959 Bitmask mask = 0;
95974 static Bitmask exprListTableUsage(WhereMaskSet *pMaskSet, ExprList *pList){
95976 Bitmask mask = 0;
95984 static Bitmask exprSelectTableUsage(WhereMaskSet *pMaskSet, Select *pS){
95985 Bitmask mask = 0;
96055 ** Translate from TK_xx operator to WO_xx bitmask.
96088 Bitmask notReady, /* RHS must not overlap with this mask */
96375 Bitmask chngToIN; /* Tables that might satisfy case 1 */
96376 Bitmask indexable; /* Tables that are indexable, satisfying case 2 */
96398 indexable = ~(Bitmask)0;
96411 Bitmask b = 0;
96434 Bitmask b;
96621 Bitmask prereqLeft; /* Prerequesites of the pExpr->pLeft */
96622 Bitmask prereqAll; /* Prerequesites of pExpr */
96623 Bitmask extraRight = 0; /* Extra dependencies on LEFT JOIN */
96653 Bitmask x = getMask(pMaskSet, pExpr->iRightJoinTable);
96826 Bitmask prereqColumn, prereqExpr;
96868 Bitmask allowed = ~getMask(pMaskSet, iBase);
97085 Bitmask, Bitmask, ExprList*, WhereCost*);
97098 Bitmask notReady, /* Mask of cursors not available for indexing */
97099 Bitmask notValid, /* Cursors not available for any purpose */
97105 const Bitmask maskSrc = getMask(pWC->pMaskSet, iCur); /* Bitmask for pSrc */
97127 Bitmask used = 0;
97187 Bitmask notReady /* Tables in outer loops of the join */
97212 Bitmask notReady, /* Mask of cursors that are not available */
97275 Bitmask notReady, /* Mask of cursors that are not available */
97294 Bitmask idxCols; /* Bitmap of columns used for indexing */
97295 Bitmask extraCols; /* Bitmap of additional columns */
97314 Bitmask cMask = iCol>=BMS ? ((Bitmask)1)<<(BMS-1) : ((Bitmask)1)<<iCol;
97334 extraCols = pSrc->colUsed & (~idxCols | (((Bitmask)1)<<(BMS-1)));
97339 if( extraCols & (((Bitmask)1)<<i) ) nColumn++;
97341 if( pSrc->colUsed & (((Bitmask)1)<<(BMS-1)) ){
97365 Bitmask cMask = iCol>=BMS ? ((Bitmask)1)<<(BMS-1) : ((Bitmask)1)<<iCol;
97381 if( extraCols & (((Bitmask)1)<<i) ){
97387 if( pSrc->colUsed & (((Bitmask)1)<<(BMS-1)) ){
97591 Bitmask notReady, /* Mask of cursors not available for index */
97592 Bitmask notValid, /* Cursors not valid for any purpose */
98002 Bitmask notReady, /* Mask of cursors not available for indexing */
98003 Bitmask notValid, /* Cursors not available for any purpose */
98069 Bitmask used = 0;
98206 Bitmask m = pSrc->colUsed;
98211 m &= ~(((Bitmask)1)<<x);
98278 Bitmask thisTab; /* Bitmap for pSrc */
98380 Bitmask notReady, /* Mask of cursors not available for indexing */
98381 Bitmask notValid, /* Cursors not available for any purpose */
98589 Bitmask notReady, /* Which parts of FROM have not yet been coded */
98817 static Bitmask codeOneLoopStart(
98821 Bitmask notReady /* Which tables are currently available */
99600 Bitmask notReady; /* Cursors that are not yet positioned */
99610 ** bits in a Bitmask
99629 ** field (type Bitmask) it must be aligned on an 8-byte boundary on
99669 /* Assign a bit from the bitmask to every term in the FROM clause.
99671 ** When assigning bitmask values to FROM clause cursors, it must be
99672 ** the case that if X is the bitmask for the N-th FROM clause term then
99673 ** the bitmask for all FROM clause terms to the left of the N-th term
99675 ** its Expr.iRightJoinTable value to find the bitmask of the right table
99676 ** of the join. Subtracting one from the right table bitmask gives a
99677 ** bitmask for all tables to the left of the join. Knowing the bitmask
99695 pWC->vmask |= ((Bitmask)1 << i);
99701 Bitmask toTheLeft = 0;
99703 Bitmask m = getMask(pMaskSet, pTabList->a[i].iCursor);
99735 notReady = ~(Bitmask)0;
99745 Bitmask m; /* Bitmask value for j or bestJ */
99748 Bitmask notIndexed; /* Mask of tables that cannot use an index */
99800 Bitmask mask; /* Mask of tables not yet ready */
99949 notReady = ~(Bitmask)0;
99977 Bitmask b = pTabItem->colUsed;
100012 notReady = ~(Bitmask)0;
107368 ** argument N is a bitmask of optimizations to be disabled. For normal
117856 u64 mCovered, /* Bitmask of phrases already covered */
117859 u64 *pmCover, /* OUT: Bitmask of phrases covered */
117860 u64 *pmHighlight /* OUT: Bitmask of terms to highlight */
118828 u64 mCovered = 0; /* Bitmask of phrases covered by snippet */
118829 u64 mSeen = 0; /* Bitmask of phrases seen by BestSnippet() */