summaryrefslogtreecommitdiff
path: root/lparser.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* 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
|
* default increment for 'for' loop is an integer (1, not 1.0)Roberto Ierusalimschy2013-04-251-2/+2
|
* first implementation of literal integers (no constant folding yet)Roberto Ierusalimschy2013-04-161-4/+9
|
* commentsRoberto Ierusalimschy2013-02-061-3/+6
|
* detail (avoid being picky about conversion from 'unsigned char'Roberto Ierusalimschy2012-08-061-2/+2
| | | | to 'int')
* extend optimization of 'if a then break end' for the caseRoberto Ierusalimschy2012-05-201-4/+10
| | | | 'if a then break; end'
* no more 'Proto' objects on the stack. Protos are anchored on outerRoberto Ierusalimschy2012-05-081-45/+52
| | | | Protos or on a Closure, which must be created before the Proto.
* primaryexp -> suffixedexp; prefixexp -> primaryexp + more 'syntactical'Roberto Ierusalimschy2012-04-201-15/+17
| | | | way to distinguish between function calls and assignments
* 'eqstr' -> 'luaS_eqstr'Roberto Ierusalimschy2012-01-231-8/+8
|
* old error messages may be misleadingRoberto Ierusalimschy2011-12-021-4/+4
|
* more uses of 'l_noret'Roberto Ierusalimschy2011-11-301-7/+5
|
* detail (avoid applying macro 'getstr' with a function-call argument)Roberto Ierusalimschy2011-10-311-2/+3
|
* silly bug in 5.2 beta: assignment conflict code did not test to checkRoberto Ierusalimschy2011-10-241-17/+20
| | | | whether variable was a table element
* lint (unreachable code)Roberto Ierusalimschy2011-09-301-2/+2
|
* small bug in if-goto optimization: block must be closed ('leaveblock')Roberto Ierusalimschy2011-09-141-5/+8
| | | | *before* the jump out ('escapelist')
* optimization for |if cond then goto|Roberto Ierusalimschy2011-08-301-18/+37
|
* cleaner code for 'if' constructRoberto Ierusalimschy2011-08-251-20/+14
|
* 'nCcalls' should be local to each thread, as each thread may have itsRoberto Ierusalimschy2011-08-231-6/+6
| | | | own C stack (with LuaThreads or something similar)
* reducing even more use of C stack by the parser: struct 'FuncState'Roberto Ierusalimschy2011-07-271-12/+12
| | | | | does not need field 'L' + number of labels/gotos in a chunk may be limited to SHRT_MAX. (Also removed some non-needed 'unsigned's.)