drh
6a288a33f9
Registerify the AUTOINCREMENT processing and the OP_IsNull and OP_NotNull
...
operators. (CVS 4692)
FossilOrigin-Name: aa48867cfa04da265b906e5b583bc7ac6b6a1157
2008-01-07 19:20:24 +00:00
drh
1013c9320d
Registerify the SRT_Subroutine destination for SELECT results. (CVS 4690)
...
FossilOrigin-Name: 8201f71729c3afbb41764cea3cda65b03150cb0c
2008-01-06 00:25:21 +00:00
drh
5b6afba924
Registerify binary operators. Add register tracing to debugging output. (CVS 4686)
...
FossilOrigin-Name: 66396d2f0289e36b5fc0af5078c08d1b17f342ae
2008-01-05 16:29:28 +00:00
drh
9de221dff5
Expression code generator takes advantage of recent opcode changes. (CVS 4685)
...
FossilOrigin-Name: 6c78d2a49a3e6ee8bc31f16488a430cba9eda59d
2008-01-05 06:51:30 +00:00
drh
8558cde1ab
Register-ify the OP_AddImm and all casting opcodes. Omit the
...
OP_MemIncr opcode. (CVS 4683)
FossilOrigin-Name: 3e8a07dd3cc9921ad39e379576abb0b485a42202
2008-01-05 05:20:10 +00:00
drh
b1fdb2adea
Get rid of OP_Dup, OP_MemStore, OP_MemLoad, and OP_MemMove. Replace
...
with OP_Copy, OP_SCopy, and OP_Move. Add the infrastructure for
operation properties in1, in2, in3, out2, and out3 but do not yet
use any of these. (CVS 4682)
FossilOrigin-Name: cc149eb9ca3c672cc6fea3528353234ac2ed5745
2008-01-05 04:06:03 +00:00
drh
4c583128bd
Implement the out2-prerelease opcode design pattern. (CVS 4681)
...
FossilOrigin-Name: fe057a88d0038ac349ea41883b979ceba6ae410a
2008-01-04 22:01:03 +00:00
drh
389a1adbd7
Change the sqlite3ExprCode() function so that callers can request that
...
the result of the expression be left on the stack or in a register. (CVS 4673)
FossilOrigin-Name: 61bfb77c4267b99ac8a8ef49355bcbc395a1a37b
2008-01-03 23:44:53 +00:00
drh
2133d82287
Update OP_Rowid, OP_Column and related opcodes to use registers. (CVS 4671)
...
FossilOrigin-Name: 4f3967073d2df9eae5a61b9770d5de2e1af47b4c
2008-01-03 18:44:59 +00:00
drh
0a07c107a6
Registers (aka memory cells) in the VM are now numbered starting with 1
...
instead of 0. A register number of 0 means "no such register". (CVS 4669)
FossilOrigin-Name: 0b849805c3a0f562d50623f406279b400d335639
2008-01-03 18:03:08 +00:00
danielk1977
207872a488
Change OP_OpenRead and OP_OpenWrite so that the database number is read from the P3 operand, not the stack. (CVS 4663)
...
FossilOrigin-Name: 35da261daf602b1e938f05bbad1ff99213d9f4b9
2008-01-03 07:54:23 +00:00
drh
66a5167b47
Refactoring the VM. The P3 parameter is changed to P4. A P5 parameter is
...
added (though not currently used.) Add routines sqlite3VdbeAddOpX() where
X is one of 0, 1, 2, 3, or 4. (CVS 4660)
FossilOrigin-Name: 027875e4d4c4bd7686dc880c6917a968049b2fec
2008-01-03 00:01:23 +00:00
danielk1977
6c8c8ce0e2
Combine the eDest and iParm arguments to sqlite3Select() into a single type - "SelectDest". (CVS 4657)
...
FossilOrigin-Name: 86dcdfe6d7d629618ccb3c3ff0ca09f2da2d06c7
2008-01-02 16:27:09 +00:00
drh
a2a49dc9df
Add opcodes OP_ResultRow and OP_RegMakeRec which are register-based
...
equivalents to OP_Callback and OP_MakeRecord. Use the new opcodes. (CVS 4656)
FossilOrigin-Name: 4c7f35da7751c61a9b61b1d95adddcc37fff3266
2008-01-02 14:28:13 +00:00
drh
d4e70ebd6f
Begin setting a foundation on which to convert the VM from a stack-based
...
to a register-based machine. Everything is still mostly stack based with
this check-in. This change merely begins adding infrastructure to support
a register-based architecture. (CVS 4652)
FossilOrigin-Name: 051ec01f2799e095516015f2ef0180e50fac387c
2008-01-02 00:34:36 +00:00
danielk1977
8f2c54e6e2
Optimize trigger compilation to avoid populating the OLD.* and NEW.* pseudo-tables with data that will never be used. Some testing to come. (CVS 4651)
...
FossilOrigin-Name: e08a33ed7255c22ce2805363f44a1d7770acb2dd
2008-01-01 19:02:09 +00:00
drh
49df6b749c
Fix an out-of-memory NULL pointer defer in the code generator. Ticket #2843 . (CVS 4630)
...
FossilOrigin-Name: b821b6ed176b4259e1d4b56c8eb548933b6f530a
2007-12-14 15:12:21 +00:00
drh
85b623f2f9
Change all instances of "it's" in comments to either "its" or "it is",
...
as appropriate, in case the comments are ever again read by a pedantic
grammarian. Ticket #2840 . (CVS 4629)
FossilOrigin-Name: 4e91a267febda572e7239f0f1cc66b3102558c36
2007-12-13 21:54:09 +00:00
danielk1977
284f4aca32
Fix compilation/testing with OMIT_SUBQUERY defined. Ticket #2828 . (CVS 4603)
...
FossilOrigin-Name: 0b34a18651764e650faba983be8593992ab2f4a9
2007-12-10 05:03:46 +00:00
danielk1977
9a96b66810
Optimisations for expressions of the form "<value> IN (SELECT <column> FROM <table>)". (CVS 4579)
...
FossilOrigin-Name: 56d0e32677744df8570b519fae1c04da4ea4984d
2007-11-29 17:05:18 +00:00
danielk1977
390025053e
Allow collation sequence names to be quoted. Ticket #2744 . (CVS 4537)
...
FossilOrigin-Name: 06749ac7afeea4adbdeb9315f3819d5224534c66
2007-11-12 09:50:26 +00:00
drh
0cf19ed817
Add comments, assertions, and test cases to demonstrate that the
...
problem described in ticket #2742 is not a real problem. (CVS 4510)
FossilOrigin-Name: c085d6dfc0f5849113986cb2a25e64d0c95b3dfb
2007-10-23 18:55:48 +00:00
drh
598f134020
Floating point and 64-bit integer constants store in the virtual
...
machine opcodes in binary, not as text. Performance improvement.
Ticket #2733 . (CVS 4507)
FossilOrigin-Name: 7e30fd6a09899842c922b044714dc66796e545d4
2007-10-23 15:39:45 +00:00
drh
728b577934
Remove unneeded pSchema field from the Expr structure. (CVS 4434)
...
FossilOrigin-Name: b2d605a2714245febb316a24edc7a076e21a3849
2007-09-18 15:55:07 +00:00
danielk1977
880c15beb9
Fix a bug in jrnlTruncate(). And other coverage improvements. (CVS 4367)
...
FossilOrigin-Name: 02b751fb9dbc683b1b77a2ed3cdeb4190f7339e0
2007-09-01 18:24:55 +00:00
danielk1977
e6a58a4e2a
Allow sqllimits1.test to be run from a regular build of testfixture. Add the 'amalgamation-testfixture' target to main.mk - to build testfixture via sqlite3.c. (CVS 4354)
...
FossilOrigin-Name: d119427314d27f291b605073d34826cdb89746c1
2007-08-31 17:42:48 +00:00
danielk1977
26783a58e2
Use the DbMalloc() and DbRealloc() functions more consistently. (CVS 4323)
...
FossilOrigin-Name: c790c234c369c6b7610e67dcaaa9eee347df729c
2007-08-29 14:06:22 +00:00
danielk1977
a1644fd863
Modifications to the malloc failure tests to test transient and persistent failures. (CVS 4321)
...
FossilOrigin-Name: e38ef81b85feb5bff2ad8448f3438ff0ab36571e
2007-08-29 12:31:25 +00:00
drh
f3a65f7e44
The malloc.test script now passes all tests with no errors. (CVS 4271)
...
FossilOrigin-Name: db818430e9ea4ef4a4af575784009d5acae785a3
2007-08-22 20:18:21 +00:00
drh
abb6fcabcb
Combine sqlite3DbOfVdbe() and sqlite3VdbeDb() into a single function. (CVS 4236)
...
FossilOrigin-Name: ba80ee59a72afe36817997de705ef81d876b6f35
2007-08-16 12:24:01 +00:00
danielk1977
31dad9da7e
Fix some more small problems introduced by recent refactoring. (CVS 4235)
...
FossilOrigin-Name: 5e2795d0eb8ea2a076b3014cfa9096aa7e8f69d7
2007-08-16 11:36:15 +00:00
danielk1977
1e5369531e
More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233)
...
FossilOrigin-Name: 77b1671351fe94b0ebc126a63140643deae2aa64
2007-08-16 10:09:01 +00:00
drh
174357527a
Half-way through a major refactoring of the memory allocation.
...
I have not even attempted to compile so I am certain there are
countless errors. (CVS 4231)
FossilOrigin-Name: deb7ecd65f7b83eaf0ba610eeef3b0ede61db1c3
2007-08-16 04:30:38 +00:00
drh
fd131daecd
Remove all tabs from source code files. Ticket #2556 . (CVS 4198)
...
FossilOrigin-Name: 7550dd1d5980a399fbb06b4ed69216700f879a0b
2007-08-07 17:13:03 +00:00
drh
0a0e131c7e
Revise the amalgamation so that all symbols have file scope except those
...
that begin with "sqlite3_". Ticket #2554 . (CVS 4197)
FossilOrigin-Name: 73db545289a1a99bd48b22895d2a3ee86540f107
2007-08-07 17:04:59 +00:00
drh
36379e973b
Detect nested aggregate functions even if the inner aggregate function is
...
aliased using an AS clause. Ticket #2526 . (CVS 4179)
FossilOrigin-Name: de000280c6d0b13440d2450eb6ba42073ad46c56
2007-07-23 22:51:15 +00:00
danielk1977
c9cf6e3d31
Fix for #2445 . A bug in the lookupName() logic that could cause a crash when a WHERE clause used an alias to refer to an expression in the result-set of the SELECT, and that expression was itself a reference to a table column. (CVS 4122)
...
FossilOrigin-Name: 044ca1c72a8f4632dc2e6a94690d164d3560ee38
2007-06-25 16:29:33 +00:00
drh
7e09fe0b81
A column name preceded by a unary "+" operator is considered to be
...
a column name when computing the collating sequence to be used by
a comparison operator or ORDER BY clause. (CVS 4104)
FossilOrigin-Name: 99a20f6a427b5e0e0a793f59ebca9d17bc633437
2007-06-20 16:13:23 +00:00
danielk1977
edaaec223c
Fix an obscure memory leak in the SQL compiler.. (CVS 4070)
...
FossilOrigin-Name: d4ab94288b1e3d3d069ccc75d0fc2fbe6c1383c5
2007-06-15 16:37:29 +00:00
drh
0a168377ad
Fix the query optimizer so that it correctly handles constant expressions
...
in the ON clause of a LEFT JOIN. Ticket #2403 . (CVS 4049)
FossilOrigin-Name: 46fdd195483787eef209a9b8ad108eba147be6fa
2007-06-08 00:20:47 +00:00
danielk1977
c9cf901d8c
Add some extra tests for malloc failure during expression parsing and execution using fuzzily generated SQL. (CVS 4043)
...
FossilOrigin-Name: 7522d2fb3204d107b8b4816d7f39c88741f20230
2007-05-30 10:36:47 +00:00
danielk1977
bcbb04e501
Consider explicit collate clauses when matching WHERE constraints to indices. Fix for #2391 . (CVS 4040)
...
FossilOrigin-Name: f9a95e92dfaaa61ec0a44b9b7017b07929c94d26
2007-05-29 12:11:29 +00:00
danielk1977
15d7982ad8
A fix for queries that used correlated, compound sub-queries in the HAVING clause. Also update fuzz.test some more. (CVS 4001)
...
FossilOrigin-Name: da0c1ab4deedd2b952a43b3af6962a9403f8c9ee
2007-05-15 07:00:34 +00:00
drh
4f07e5fbdf
Remove terms with operator TK_AS from the expression tree. Ticket #2356 . (CVS 3991)
...
FossilOrigin-Name: 5627ff74be9242418434a06fe5c104d1f9128cab
2007-05-14 11:34:46 +00:00
danielk1977
cdbd8eff21
Bugfixes for assert() failures found by fuzz.test. (CVS 3986)
...
FossilOrigin-Name: 2e80736d57fde55b112864d8b198a9a2fe0eaa38
2007-05-12 06:11:12 +00:00
drh
4e05c83bc3
Additional parsing bugs fixed. (CVS 3981)
...
FossilOrigin-Name: d12a8924c6083cdff14990b4fd036ca386c2e34a
2007-05-11 01:44:50 +00:00
drh
db83f8231f
Make sure that the REGISTER token generates a valid Expr. REGISTER will
...
cause the tokenizer to abort, but the parser might do several reduce
actions prior to that abort and those reduce actions sometimes need a
valid Expr. (CVS 3980)
FossilOrigin-Name: d146f01a02579339c5dc86bbe59f246bd6c05c63
2007-05-11 00:20:08 +00:00
danielk1977
fc9760654a
Add code to enforce the MAX_EXPR_DEPTH limit. (CVS 3968)
...
FossilOrigin-Name: 2c9c94a24d52a1c9f5d1b32cbdff794a2dd74126
2007-05-10 10:46:56 +00:00
danielk1977
832b2664e6
Add further test cases for compile time limits. (CVS 3963)
...
FossilOrigin-Name: 9bf2c594a48a4661700f0833562ee2b3ff7b761c
2007-05-09 11:37:22 +00:00
danielk1977
b4fc679463
Fix a null-pointer dereference that follows a malloc() failure introduced in (3954). (CVS 3956)
...
FossilOrigin-Name: 251ba1981e32fb80818965ffe1ef455069e88abd
2007-05-08 18:04:46 +00:00