<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/lua-github.git/lcode.h, branch temporary</title>
<subtitle>github.com: lua/lua.git
</subtitle>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/lua-github.git/'/>
<entry>
<title>Details</title>
<updated>2020-02-27T15:59:22+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2020-02-27T15:59:22+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/lua-github.git/commit/?id=6eb53b752617fae9e1329bfe2cfecdcbb593c398'/>
<id>6eb53b752617fae9e1329bfe2cfecdcbb593c398</id>
<content type='text'>
Several details in code (e.g., moving a variable to the most inner
scope that encloses its uses), comments, parameter names, extra tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Several details in code (e.g., moving a variable to the most inner
scope that encloses its uses), comments, parameter names, extra tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>Simplification in the call to 'constfolding'</title>
<updated>2019-09-11T13:20:10+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2019-09-11T13:20:10+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/lua-github.git/commit/?id=40d8832ee05096f9aea8eb54d1cdccf2646aecd0'/>
<id>40d8832ee05096f9aea8eb54d1cdccf2646aecd0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>New kind of expression VKSTR</title>
<updated>2019-07-17T17:26:56+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2019-07-17T17:26:56+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/lua-github.git/commit/?id=d6af81084df569bc8e3bd0949ad6fc0b40c8468d'/>
<id>d6af81084df569bc8e3bd0949ad6fc0b40c8468d</id>
<content type='text'>
String literal expressions have their own kind VKSTR, instead of the
generic VK. This allows strings to "cross" functions without entering
their constant tables (e.g., if they are used only by some nested
function).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
String literal expressions have their own kind VKSTR, instead of the
generic VK. This allows strings to "cross" functions without entering
their constant tables (e.g., if they are used only by some nested
function).
</pre>
</div>
</content>
</entry>
<entry>
<title>Unification of size representation in OP_NEWTABLE and OP_SETLIST</title>
<updated>2019-07-15T17:59:35+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2019-07-15T17:59:35+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/lua-github.git/commit/?id=758c1ef445ab27d89bace746111add04083a8e20'/>
<id>758c1ef445ab27d89bace746111add04083a8e20</id>
<content type='text'>
Opcodes OP_NEWTABLE and OP_SETLIST use the same representation to
store the size of the array part of a table. This new representation
can go up to 2^33 (8 + 25 bits).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Opcodes OP_NEWTABLE and OP_SETLIST use the same representation to
store the size of the array part of a table. This new representation
can go up to 2^33 (8 + 25 bits).
</pre>
</div>
</content>
</entry>
<entry>
<title>OP_NEWTABLE keeps exact size of arrays</title>
<updated>2019-07-12T19:13:50+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2019-07-12T19:13:50+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/lua-github.git/commit/?id=1fb4d539254b67e7e35ed698250c66d1edff0e08'/>
<id>1fb4d539254b67e7e35ed698250c66d1edff0e08</id>
<content type='text'>
OP_NEWTABLE is followed by an OP_EXTRAARG, so that it can keep
the exact size of the array part of the table to be created.
(Functions 'luaO_int2fb'/'luaO_fb2int' were removed.)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
OP_NEWTABLE is followed by an OP_EXTRAARG, so that it can keep
the exact size of the array part of the table to be created.
(Functions 'luaO_int2fb'/'luaO_fb2int' were removed.)
</pre>
</div>
</content>
</entry>
<entry>
<title>First implementation of constant propagation</title>
<updated>2019-07-12T14:38:42+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2019-07-12T14:38:42+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/lua-github.git/commit/?id=f6aab3ec1f111cd8d968bdcb7ca800e93b819d24'/>
<id>f6aab3ec1f111cd8d968bdcb7ca800e93b819d24</id>
<content type='text'>
Local constant variables initialized with compile-time constants
are optimized away from the code.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Local constant variables initialized with compile-time constants
are optimized away from the code.
</pre>
</div>
</content>
</entry>
<entry>
<title>New implementation for constants</title>
<updated>2019-07-09T13:43:17+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2019-07-09T13:43:17+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/lua-github.git/commit/?id=54f7b46c1e8a0188e1649046a3a72522f2d769f4'/>
<id>54f7b46c1e8a0188e1649046a3a72522f2d769f4</id>
<content type='text'>
VLOCAL expressions keep a reference to their corresponding 'Vardesc',
and 'Upvaldesc' (for upvalues) has a field 'ro' (read-only). So, it is
easier to check whether a variable is read-only. The decoupling in
VLOCAL between 'vidx' ('Vardesc' index) and 'sidx' (stack index)
should also help the forthcoming implementation of compile-time
constant propagation.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
VLOCAL expressions keep a reference to their corresponding 'Vardesc',
and 'Upvaldesc' (for upvalues) has a field 'ro' (read-only). So, it is
easier to check whether a variable is read-only. The decoupling in
VLOCAL between 'vidx' ('Vardesc' index) and 'sidx' (stack index)
should also help the forthcoming implementation of compile-time
constant propagation.
</pre>
</div>
</content>
</entry>
<entry>
<title>First take on constant propagation</title>
<updated>2019-07-01T15:42:31+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2019-07-01T15:42:31+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/lua-github.git/commit/?id=8eca21c2e85625390a2a3b08c231e75e315980b0'/>
<id>8eca21c2e85625390a2a3b08c231e75e315980b0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Big revamp in the implmentation of labels/gotos</title>
<updated>2018-10-29T17:26:48+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2018-10-29T17:26:48+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/lua-github.git/commit/?id=a006514ea138a29b6031058d9002b48a572b5dd6'/>
<id>a006514ea138a29b6031058d9002b48a572b5dd6</id>
<content type='text'>
Added restriction that, when a label is created, there cannot be
another label with the same name visible. That allows backward goto's
to be resolved when they are read. Backward goto's get a close if
they jump out of the scope of some variable; labels get a close only
if previous goto to it jumps out of the scope of some upvalue.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Added restriction that, when a label is created, there cannot be
another label with the same name visible. That allows backward goto's
to be resolved when they are read. Backward goto's get a close if
they jump out of the scope of some variable; labels get a close only
if previous goto to it jumps out of the scope of some upvalue.
</pre>
</div>
</content>
</entry>
<entry>
<title>Removed extra information from RCS keyword strings</title>
<updated>2018-08-23T17:26:12+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2018-08-23T17:26:12+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/lua-github.git/commit/?id=f99509581ee73c1c2dbddb3398e87c098771d31f'/>
<id>f99509581ee73c1c2dbddb3398e87c098771d31f</id>
<content type='text'>
Version numbers and dates (mostly wrong) from RCS keyword strings
removed from all source files; only the file name are kept.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Version numbers and dates (mostly wrong) from RCS keyword strings
removed from all source files; only the file name are kept.
</pre>
</div>
</content>
</entry>
</feed>
