diff options
| author | Mike Pall <mike> | 2010-02-17 00:47:55 +0100 |
|---|---|---|
| committer | Mike Pall <mike> | 2010-02-17 00:47:55 +0100 |
| commit | 4a7ee2cb66daf4d146d645e167a3645ae2692d5d (patch) | |
| tree | fe5ff20190a74d183caa2fe55d0e641909c79956 | |
| parent | 8060f5b53145b977c04bddf414aa541cb73ec536 (diff) | |
| download | luajit-4a7ee2cb66daf4d146d645e167a3645ae2692d5d.tar.gz luajit-4a7ee2cb66daf4d146d645e167a3645ae2692d5d.tar.bz2 luajit-4a7ee2cb66daf4d146d645e167a3645ae2692d5d.zip | |
Update docs and changelog.
| -rw-r--r-- | doc/changes.html | 45 | ||||
| -rw-r--r-- | doc/luajit.html | 6 | ||||
| -rw-r--r-- | doc/status.html | 6 |
3 files changed, 39 insertions, 18 deletions
diff --git a/doc/changes.html b/doc/changes.html index c650139e..7f2da0a8 100644 --- a/doc/changes.html +++ b/doc/changes.html | |||
| @@ -55,21 +55,48 @@ to see whether newer versions are available. | |||
| 55 | <div class="major" style="background: #d0d0d0;"> | 55 | <div class="major" style="background: #d0d0d0;"> |
| 56 | <h2 id="snap">Development Snapshot</h2> | 56 | <h2 id="snap">Development Snapshot</h2> |
| 57 | <ul> | 57 | <ul> |
| 58 | <li>Build of preliminary x64 interpreter works on Linux/x64 or WIN64.</li> | 58 | <li>CPU support: |
| 59 | <ul> | ||
| 60 | <li>Port integrated memory allocator to Linux/x64 and Windows/x64.</li> | ||
| 61 | <li>Port the interpreter to x64.</li> | ||
| 62 | <li>Port DynASM to x64.</li> | ||
| 63 | <li>Many 32/64 bit cleanups in the VM.</li> | ||
| 64 | <li>Allow building the interpreter with either x87 or SSE2 arithmetics.</li> | ||
| 65 | <li>Disable JIT compiler on older non-SSE2 CPUs instead of aborting.</li> | ||
| 66 | </ul></li> | ||
| 67 | <li>Correctness and completeness: | ||
| 68 | <ul> | ||
| 69 | <li>Fix constructor bytecode generation for certain conditional values.</li> | ||
| 70 | <li>Fix some cases of ordered string comparisons.</li> | ||
| 71 | <li>Fix <tt>lua_tocfunction()</tt>.</li> | ||
| 72 | <li>Fix cutoff register in JMP bytecode for some conditional expressions.</li> | ||
| 73 | <li>Fix PHI marking algorithm for references from variant slots.</li> | ||
| 74 | <li>Fix <tt>package.cpath</tt> for non-default PREFIX.</li> | ||
| 75 | <li>Fix DWARF2 frame unwind information for interpreter on OSX.</li> | ||
| 76 | <li>Drive the GC forward on string allocations in the parser.</li> | ||
| 59 | <li>Implement call/return hooks (zero-cost if disabled).</li> | 77 | <li>Implement call/return hooks (zero-cost if disabled).</li> |
| 60 | <li>Major redesign of internal function call handling.</li> | ||
| 61 | <li>Implement yield from C hooks.</li> | 78 | <li>Implement yield from C hooks.</li> |
| 62 | <li>Add abstract C call handling to IR.</li> | 79 | <li>Add external unwinding and C++ exception interop (default on x64).</li> |
| 80 | </ul></li> | ||
| 81 | <li>Structural and performance enhancements: | ||
| 82 | <ul> | ||
| 83 | <li>Split CALL/FUNC recording and clean up fast function call semantics.</li> | ||
| 84 | <li>Major redesign of internal function call handling.</li> | ||
| 85 | <li>Improve FOR loop const specialization and integerness checks.</li> | ||
| 86 | <li>Switch to pre-initialized stacks. Avoid frame-clearing.</li> | ||
| 87 | <li>Colocation of prototypes and related data: bytecode, constants, debug info.</li> | ||
| 88 | <li>Cleanup parser and streamline bytecode generation.</li> | ||
| 89 | <li>Add support for weak IR references to register allocator.</li> | ||
| 90 | <li>Switch to compressed, extensible snapshots.</li> | ||
| 91 | <li>Compile returns to frames below the start frame.</li> | ||
| 92 | <li>Improve alias analysis of upvalues using a disambiguation hash value.</li> | ||
| 93 | <li>Compile floor/ceil/trunc to SSE2 helper calls or SSE4.1 instructions.</li> | ||
| 94 | <li>Add generic C call handling to IR and backend.</li> | ||
| 63 | <li>Improve KNUM fuse vs. load heuristics.</li> | 95 | <li>Improve KNUM fuse vs. load heuristics.</li> |
| 64 | <li>Drive the GC forward on string allocations in the parser.</li> | ||
| 65 | <li>Compile various <tt>io.*()</tt> functions.</li> | 96 | <li>Compile various <tt>io.*()</tt> functions.</li> |
| 66 | <li>Compile <tt>math.sinh()</tt>, <tt>math.cosh()</tt>, <tt>math.tanh()</tt> | 97 | <li>Compile <tt>math.sinh()</tt>, <tt>math.cosh()</tt>, <tt>math.tanh()</tt> |
| 67 | and <tt>math.random()</tt>.</li> | 98 | and <tt>math.random()</tt>.</li> |
| 68 | <li>Fix <tt>lua_tocfunction()</tt>.</li> | 99 | </ul></li> |
| 69 | <li>Fix cutoff register in JMP bytecode for some conditional expressions.</li> | ||
| 70 | <li>Fix PHI marking algorithm for references from variant slots.</li> | ||
| 71 | <li>Fix <tt>package.cpath</tt> for non-default PREFIX.</li> | ||
| 72 | <li>Fix DWARF2 frame unwind information for interpreter on OSX.</li> | ||
| 73 | </ul> | 100 | </ul> |
| 74 | </div> | 101 | </div> |
| 75 | 102 | ||
diff --git a/doc/luajit.html b/doc/luajit.html index 7c3779d4..58dfa32e 100644 --- a/doc/luajit.html +++ b/doc/luajit.html | |||
| @@ -44,7 +44,7 @@ LuaJIT is a <b>Just-In-Time Compiler</b> for the Lua<sup>*</sup> | |||
| 44 | programming language. | 44 | programming language. |
| 45 | </p> | 45 | </p> |
| 46 | <p> | 46 | <p> |
| 47 | LuaJIT is Copyright © 2005-2008 Mike Pall. | 47 | LuaJIT is Copyright © 2005-2010 Mike Pall. |
| 48 | LuaJIT is open source software, released under the | 48 | LuaJIT is open source software, released under the |
| 49 | <a href="http://www.opensource.org/licenses/mit-license.php"><span class="ext">»</span> MIT/X license</a>. | 49 | <a href="http://www.opensource.org/licenses/mit-license.php"><span class="ext">»</span> MIT/X license</a>. |
| 50 | </p> | 50 | </p> |
| @@ -82,8 +82,8 @@ LuaJIT has been in continuous development since 2005. It's widely | |||
| 82 | considered to be <b>one of the fastest dynamic language | 82 | considered to be <b>one of the fastest dynamic language |
| 83 | implementations</b>. It has outperfomed other dynamic languages on many | 83 | implementations</b>. It has outperfomed other dynamic languages on many |
| 84 | cross-language benchmarks since its first release — often by a | 84 | cross-language benchmarks since its first release — often by a |
| 85 | substantial margin. Only now, in 2009, other dynamic language VMs are | 85 | substantial margin. In 2009 other dynamic language VMs started to catch up |
| 86 | starting to catch up with the performance of LuaJIT 1.x … | 86 | with the performance of LuaJIT 1.x. Well, I couldn't let that slide. ;-) |
| 87 | </p> | 87 | </p> |
| 88 | <p> | 88 | <p> |
| 89 | 2009 also marks the first release of the long-awaited <b>LuaJIT 2.0</b>. | 89 | 2009 also marks the first release of the long-awaited <b>LuaJIT 2.0</b>. |
diff --git a/doc/status.html b/doc/status.html index ba62625e..23847da9 100644 --- a/doc/status.html +++ b/doc/status.html | |||
| @@ -206,12 +206,6 @@ interested in sponsoring a port to a particular architecture, please | |||
| 206 | use the given contact address. | 206 | use the given contact address. |
| 207 | </li> | 207 | </li> |
| 208 | <li> | 208 | <li> |
| 209 | There are some planned <b>structural improvements</b> to the compiler, | ||
| 210 | like compressed snapshot maps or generic handling of calls to helper | ||
| 211 | methods. These are of lesser importance, unless other developments | ||
| 212 | elevate their priority. | ||
| 213 | </li> | ||
| 214 | <li> | ||
| 215 | <b>Documentation</b> about the <b>internals</b> of LuaJIT is still sorely | 209 | <b>Documentation</b> about the <b>internals</b> of LuaJIT is still sorely |
| 216 | missing. Although the source code is included and is IMHO well | 210 | missing. Although the source code is included and is IMHO well |
| 217 | commented, many basic design decisions are in need of an explanation. | 211 | commented, many basic design decisions are in need of an explanation. |
