Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Remove OP_Int64 and OP_Real. OP_Num is now used instead. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | sqlite4-num |
Files: | files | file ages | folders |
SHA1: |
860695f9be77e7658f41f3fa95d84dd0 |
User & Date: | dan 2013-05-31 19:34:06.730 |
Context
2013-05-31
| ||
19:37 | Merge sqlite4-num branch with trunk. check-in: 7b0d1cf7f4 user: dan tags: trunk | |
19:34 | Remove OP_Int64 and OP_Real. OP_Num is now used instead. Leaf check-in: 860695f9be user: dan tags: sqlite4-num | |
19:19 | Remove uses of type 'double' from the vdbe. check-in: e018823162 user: dan tags: sqlite4-num | |
Changes
Changes to src/expr.c.
︙ | ︙ | |||
1908 1909 1910 1911 1912 1913 1914 | if( p ){ *p = sqlite4_num_from_text(z, -1, 0, 0); assert( p->sign==0 ); assert( negateFlag==0 || negateFlag==1 ); p->sign = negateFlag; sqlite4VdbeAddOp4(v, OP_Num, 0, iMem, 0, (const char *)p, P4_NUM); } | < < < < < < < < < | 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 | if( p ){ *p = sqlite4_num_from_text(z, -1, 0, 0); assert( p->sign==0 ); assert( negateFlag==0 || negateFlag==1 ); p->sign = negateFlag; sqlite4VdbeAddOp4(v, OP_Num, 0, iMem, 0, (const char *)p, P4_NUM); } } } #endif /* ** Generate an instruction that will put the integer describe by |
︙ | ︙ | |||
1947 1948 1949 1950 1951 1952 1953 | assert( z!=0 ); p = (sqlite4_num *)sqlite4DbMallocRaw(pParse->db, sizeof(sqlite4_num)); if( p ){ *p = sqlite4_num_from_text(z, -1, (negFlag ? SQLITE4_NEGATIVE : 0), 0); sqlite4VdbeAddOp4(v, OP_Num, p->e==0, iMem, 0, (const char *)p, P4_NUM); } | < < < < < < < < < < < < < < < < | 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 | assert( z!=0 ); p = (sqlite4_num *)sqlite4DbMallocRaw(pParse->db, sizeof(sqlite4_num)); if( p ){ *p = sqlite4_num_from_text(z, -1, (negFlag ? SQLITE4_NEGATIVE : 0), 0); sqlite4VdbeAddOp4(v, OP_Num, p->e==0, iMem, 0, (const char *)p, P4_NUM); } } } /* ** Clear a cache entry. */ static void cacheEntryClear(Parse *pParse, ParseYColCache *p){ |
︙ | ︙ |
Changes to src/pragma.c.
︙ | ︙ | |||
43 44 45 46 47 48 49 | /* ** Generate code to return a single integer value. */ static void returnSingleInt(Parse *pParse, const char *zLabel, i64 value){ Vdbe *v = sqlite4GetVdbe(pParse); int mem = ++pParse->nMem; | > > | | | | | 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | /* ** Generate code to return a single integer value. */ static void returnSingleInt(Parse *pParse, const char *zLabel, i64 value){ Vdbe *v = sqlite4GetVdbe(pParse); int mem = ++pParse->nMem; sqlite4_num *pNum; pNum = sqlite4DbMallocRaw(pParse->db, sizeof(value)); if( pNum ){ *pNum = sqlite4_num_from_int64(value); } sqlite4VdbeAddOp4(v, OP_Num, 1, mem, 0, (char *)pNum, P4_NUM); sqlite4VdbeSetNumCols(v, 1); sqlite4VdbeSetColName(v, 0, COLNAME_NAME, zLabel, SQLITE4_STATIC); sqlite4VdbeAddOp2(v, OP_ResultRow, mem, 1); } #ifndef SQLITE4_OMIT_FLAG_PRAGMAS /* |
︙ | ︙ |
Changes to src/vdbe.c.
︙ | ︙ | |||
846 847 848 849 850 851 852 | ** The 32-bit integer value P1 is written into register P2. */ case OP_Integer: { /* out2-prerelease */ pOut->u.num = sqlite4_num_from_int64((i64)pOp->p1); break; } | < < < < < < < < < < < < < < < < < < < < < < < < < | 846 847 848 849 850 851 852 853 854 855 856 857 858 859 | ** The 32-bit integer value P1 is written into register P2. */ case OP_Integer: { /* out2-prerelease */ pOut->u.num = sqlite4_num_from_int64((i64)pOp->p1); break; } /* Opcode: Num P1 P2 * P4 * ** ** P4 is a pointer to an sqlite4_num value. Write that value into ** register P2. Set the register flags to MEM_Int if P1 is non-zero, ** or MEM_Real otherwise. */ case OP_Num: { /* out2-prerelease */ |
︙ | ︙ |