aboutsummaryrefslogtreecommitdiff
path: root/lparser.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Removed extra information from RCS keyword stringsRoberto Ierusalimschy2018-08-231-1/+1
| | | | | Version numbers and dates (mostly wrong) from RCS keyword strings removed from all source files; only the file name are kept.
* in generational mode, an emergency collection can turn any object blackRoberto Ierusalimschy2018-06-181-2/+2
| | | | during any memory allocation.
* no more nil-in-tableRoberto Ierusalimschy2018-04-041-15/+1
|
* new experimental syntax using reserved word 'undef'Roberto Ierusalimschy2018-03-071-11/+18
|
* correct way to check stack space for vararg functionsRoberto Ierusalimschy2018-02-171-3/+1
|
* vararg back to '...' (but with another implementation)Roberto Ierusalimschy2018-02-091-16/+6
| | | | new implementation should have zero overhead for non-vararg functions
* new opcode 'PREPVARARG'Roberto Ierusalimschy2018-02-071-6/+16
| | | | (avoids test for vararg function in all function calls)
* new macros 'isOT'/'isIT'Roberto Ierusalimschy2017-12-221-2/+2
| | | | | (plus exchanged parameters of OP_VARARG to make it similar to other 'isOT' instructions)
* new opcodes 'FORLOOP1'/'FORPREP1' for "basic for" (integer variableRoberto Ierusalimschy2017-12-181-15/+36
| | | | with increment of 1)
* details (cleaning uses of 'exp1')Roberto Ierusalimschy2017-12-181-8/+5
|
* 'Proto->numparams' does not include vararg parameterRoberto Ierusalimschy2017-12-151-5/+4
| | | | (one less subtraction when calling functions...)
* 'VRELOCABLE' -> 'VRELOC'Roberto Ierusalimschy2017-12-141-3/+3
|
* avoid using one function for different tasks (malloc, free, etc.)Roberto Ierusalimschy2017-12-061-16/+9
|
* small peephole optimizationsRoberto Ierusalimschy2017-11-301-2/+2
|
* no more 'stackless' implementation; 'luaV_execute' calls itselfRoberto Ierusalimschy2017-11-231-8/+4
| | | | | recursively to execute function calls. 'unroll' continues all executions suspended by an yield (through a long jump)
* detailRoberto Ierusalimschy2017-10-041-2/+3
|
* no more 'getBMode'-'getCMode' (imprecise + we will need more spaceRoberto Ierusalimschy2017-09-281-2/+2
| | | | for op mode) + better control of op modes
* jumps do not close upvalues (to be faster and simpler);Roberto Ierusalimschy2017-09-131-46/+81
| | | | | | explicit instruction to close upvalues; command 'break' not handled like a 'goto' (to optimize removal of uneeded 'close' instructions)
* jumps in 'for' loops don't need to be signedRoberto Ierusalimschy2017-08-141-6/+24
|
* commentRoberto Ierusalimschy2017-08-121-2/+2
|
* 'OP_VARARG' has the vararg parameter as an operandRoberto Ierusalimschy2017-06-291-2/+3
|
* new type 'StackValue' for stack elementsRoberto Ierusalimschy2017-06-291-3/+3
| | | | (we may want to put extra info there in the future)
* 'lineinfo' in prototypes saved as differences instead of absoluteRoberto Ierusalimschy2017-06-271-4/+9
| | | | | | values, so that the array can use bytes instead of ints, reducing its size. (A new array 'abslineinfo' is used when line differences do not fit in a byte.)
* back to old-style vararg system (with vararg table collecting extraRoberto Ierusalimschy2017-05-131-1/+10
| | | | arguments)
* bug: cannot "skip" labels after if-goto before the jump over theRoberto Ierusalimschy2017-04-291-2/+2
| | | | 'then' part
* new opcodes for table access with constant keys (strings and integers)Roberto Ierusalimschy2017-04-281-16/+24
|
* new opcode LOADI (for loading immediate integers)Roberto Ierusalimschy2017-04-201-2/+2
|
* do not eliminate varargs from functions that do not use varargsRoberto Ierusalimschy2016-08-011-4/+3
| | | | (confuses the debug lib and gains very little in performance)
* bug: expression list with four or more expressions inRoberto Ierusalimschy2016-06-221-5/+4
| | | | | a 'for' loop can crash the interpreter. ('adjust_assign' must remove extra expresssions from its registers.)
* 'singlevaraux' returns result only in 'var->k'Roberto Ierusalimschy2016-05-131-10/+10
|
* bug: label between local definitions can mix-up their initializationsRoberto Ierusalimschy2016-03-071-2/+2
|
* 'getcode' -> 'getinstruction'Roberto Ierusalimschy2016-01-051-4/+4
|
* detail (moving bodies of 'while' to a separate line)Roberto Ierusalimschy2015-12-091-5/+9
|
* macro 'incr_top' replaced by function 'luaD_inctop'. (It is not usedRoberto Ierusalimschy2015-11-021-3/+3
| | | | in critical time pathes, can save a few bytes without the macro)
* function prepares vararg only if it really uses them (chunksRoberto Ierusalimschy2015-10-281-3/+4
| | | | are always declared vararg but seldom uses them)
* detailsRoberto Ierusalimschy2014-12-271-4/+4
|
* removed unneeded barrier ('from' must be white)Roberto Ierusalimschy2014-11-271-2/+2
|
* added include for 'lprefix.h', for stuff that must be added beforeRoberto Ierusalimschy2014-11-021-4/+6
| | | | any other header file
* `name' in comments changed to 'name'Roberto Ierusalimschy2014-10-251-31/+31
|
* macros 'LUA_QL'/'LUA_QL' deprecatedRoberto Ierusalimschy2014-10-171-7/+7
|
* 'iswhite' and related macros now can work directly on any objectRoberto Ierusalimschy2014-07-211-4/+4
| | | | (no need to convert to 'GCObject')
* type 'TString' refers directly to the structure inside the unionRoberto Ierusalimschy2014-07-181-4/+4
| | | | (union used only for size purposes)
* added check for conversion 'obj2gco' (and corrections for smallRoberto Ierusalimschy2014-07-181-4/+4
| | | | problems detected by this check)
* more precision between closure types ('LClosure' x 'CClosure')Roberto Ierusalimschy2014-06-191-5/+5
|
* first implementation of '<<', '>>', and '~' (bitwise not)Roberto Ierusalimschy2013-12-301-7/+11
|
* first implementation of bitwise operators '&' (band), '|' (bor),Roberto Ierusalimschy2013-12-181-7/+11
| | | | and '~' (bxor)
* new order for binary operations (grouping them by type of result)Roberto Ierusalimschy2013-12-161-9/+11
|
* bug (GC can collect long identifier during parser) + change (usingRoberto Ierusalimschy2013-08-301-28/+17
| | | | a single constant table for all functions in a chunk)
* added 'local' bit (true => object is only refered by local variables)Roberto Ierusalimschy2013-08-161-1/+2
|
* new operation '//' (integer division)Roberto Ierusalimschy2013-04-261-2/+4
|