Commit Graph
100 Commits
Author SHA1 Message Date
Roberto Ierusalimschy 84790bb953 "conceptual" bug 2000-04-26 10:43:10 -03:00
Roberto Ierusalimschy 534c3a64d3 small optimizations for table access 2000-04-25 13:55:09 -03:00
Roberto Ierusalimschy b9c98cd4d9 entry for new version (4.0a) 2000-04-25 13:45:39 -03:00
Roberto Ierusalimschy 0e8855e171 final version (by lhf) 2000-04-25 13:44:31 -03:00
Roberto Ierusalimschy 2ae9c856cf more uniform names 2000-04-24 18:05:11 -03:00
Roberto Ierusalimschy c4409f69ab details 2000-04-19 10:41:37 -03:00
Roberto Ierusalimschy 89a9c36281 no more `register' declarations: leave it to the compiler. 2000-04-19 10:36:25 -03:00
Roberto Ierusalimschy 8f2fba5877 using new constructs (for & break) in the examples and code fragments 2000-04-17 16:23:48 -03:00
Roberto Ierusalimschy 62824137d6 no more `seterrormethod' function 2000-04-17 16:23:12 -03:00
Roberto Ierusalimschy 71219ccc39 simpler version of `luaK_tostack' 2000-04-17 11:05:34 -03:00
Roberto Ierusalimschy 870f61d299 code redistribution 2000-04-14 15:12:35 -03:00
Roberto Ierusalimschy c845ec777a new order for modules (better locality??) 2000-04-14 14:52:09 -03:00
Roberto Ierusalimschy e408cf61a2 new version number 2000-04-14 14:48:20 -03:00
Roberto Ierusalimschy 4e90768635 lots of changes (almost ready for 4.0) 2000-04-14 14:47:55 -03:00
Roberto Ierusalimschy c1666a13e3 better code organization 2000-04-14 14:47:24 -03:00
Roberto Ierusalimschy e02750ec60 new type for CFunction (for "pure" C) 2000-04-14 14:46:37 -03:00
Roberto Ierusalimschy 0b56646baf new function `getargs' 2000-04-14 14:46:29 -03:00
Roberto Ierusalimschy 634c3d57e9 optimization for SETLOCAL was too specific. 2000-04-14 14:46:15 -03:00
Roberto Ierusalimschy 4aa9ad6514 functions must return explicit `nil' on failure 2000-04-14 14:44:20 -03:00
Roberto Ierusalimschy d76b1a0eef base' for tonumber' must be >= 2. 2000-04-13 15:08:18 -03:00
Roberto Ierusalimschy e7c8393682 optimization INCLOCAL is not necessary, with `for' 2000-04-13 13:51:01 -03:00
Roberto Ierusalimschy ceaa97ff5b tonumber must return `nil' when convertion fails. 2000-04-13 13:46:43 -03:00
Roberto Ierusalimschy 2bb77cdaed keep opcodes in the right order 2000-04-12 16:56:50 -03:00
Roberto Ierusalimschy f9cf402fbd first implementation of FOR 2000-04-12 15:57:19 -03:00
Roberto Ierusalimschy 0c3fe2c44b comment 2000-04-12 15:47:03 -03:00
Roberto Ierusalimschy 0433e42023 no more repeat ... end. 2000-04-11 15:37:18 -03:00
Roberto Ierusalimschy 0810bc707f new syntax: |label| 2000-04-10 16:21:14 -03:00
Roberto Ierusalimschy c3b73cbeb8 comments (detail) 2000-04-10 16:20:24 -03:00
Roberto Ierusalimschy 1eabd0549e comments 2000-04-07 16:35:31 -03:00
Roberto Ierusalimschy 54dd5cc7fd reorganization of lcode.c 2000-04-07 16:35:20 -03:00
Roberto Ierusalimschy 031978798c more optimizations 2000-04-07 10:13:11 -03:00
Roberto Ierusalimschy 14251c5a56 name changes + new operation - old operation 2000-04-07 10:12:50 -03:00
Roberto Ierusalimschy 42130ed712 name changes 2000-04-07 10:11:49 -03:00
Roberto Ierusalimschy d615e78e08 new optimization: jumps to jumps 2000-04-06 14:36:52 -03:00
Roberto Ierusalimschy c6965ce551 new functions: disassembler and get limit. 2000-04-06 14:35:23 -03:00
Roberto Ierusalimschy 22329e4cdf implementation of BREAK 2000-04-05 14:51:58 -03:00
Roberto Ierusalimschy 9f734094f9 `nil' is optional for next and nextvar (and is not for tonumber & tag). 2000-04-04 17:49:32 -03:00
Roberto Ierusalimschy 4e7e9e8de5 new opcode INCLOCAL. 2000-04-04 17:48:44 -03:00
Roberto Ierusalimschy 3e45496295 syntactical details 2000-04-03 10:44:55 -03:00
Roberto Ierusalimschy e30327728c BUG: tostring() without arguments gives seg. fault. 2000-04-03 10:20:33 -03:00
Roberto Ierusalimschy 36e1390631 details. 2000-03-31 13:28:45 -03:00
Roberto Ierusalimschy 8f0f54ec38 name change 2000-03-30 17:55:50 -03:00
Roberto Ierusalimschy 556a89e537 new names for debug types 2000-03-30 14:19:48 -03:00
Roberto Ierusalimschy e2c60eda16 `luaT_validevent' is exported, because compatibility module for fallbacks
uses it.
2000-03-30 13:41:51 -03:00
Roberto Ierusalimschy a69356e9e0 no more special cases for closures with 0 upvalues (performance is the same,
memory use a little higher, code much simpler).
2000-03-29 17:19:20 -03:00
Roberto Ierusalimschy b53dc0c485 TAG_ARRAY -> TAG_TABLE 2000-03-27 17:10:21 -03:00
Roberto Ierusalimschy 63e230a16b comments 2000-03-27 17:08:33 -03:00
Roberto Ierusalimschy 102a1be615 no more support for gc TM for tables 2000-03-27 17:08:02 -03:00
Roberto Ierusalimschy 4c03196697 lua_setstate makes no sense with explicit multiple states 2000-03-27 11:00:35 -03:00
Roberto Ierusalimschy 54633d7c7d new name for llimits.h 2000-03-24 16:49:23 -03:00
Roberto Ierusalimschy 13578517c7 new file to keep all limits and instalation-dependent definitions 2000-03-24 14:26:08 -03:00
Roberto Ierusalimschy 213e9febc8 limits now are in `llims.n' 2000-03-24 14:26:08 -03:00
Roberto Ierusalimschy 47b4bf5964 small refactoring. 2000-03-24 09:18:30 -03:00
Roberto Ierusalimschy 415ee1a24f SETLINEs for reserved words, too. 2000-03-24 09:17:53 -03:00
Roberto Ierusalimschy 5f3c5ace95 message detail 2000-03-22 13:24:13 -03:00
Roberto Ierusalimschy 441469f803 new option `-s' + argv ends with NULL (so we don't need argc). 2000-03-20 17:27:32 -03:00
Roberto Ierusalimschy 1157c2a7e4 better(?) treatment for SETLINE + while optimization is too complex for
only 3% of maximum improvement.
2000-03-20 16:15:37 -03:00
Roberto Ierusalimschy 374cc888f4 better(?) treatment for SETLINE 2000-03-20 16:15:37 -03:00
Roberto Ierusalimschy bb9605bbc9 tags can be positive values 2000-03-20 16:14:54 -03:00
Roberto Ierusalimschy 6759299880 new implementation for handling I/O tags + setglobal TM for tracing
changes in _INPUT/_OUTPUT
2000-03-20 16:13:45 -03:00
Roberto Ierusalimschy da7eb34cd6 optimization for "while 1" and "repeat until nil" 2000-03-17 11:46:04 -03:00
Roberto Ierusalimschy 2c8e28d75a small changes 2000-03-17 10:09:46 -03:00
Roberto Ierusalimschy 4fb8e93c36 small optimization for i..'' 2000-03-17 10:09:12 -03:00
Roberto Ierusalimschy 7f77431950 detail 2000-03-16 18:06:16 -03:00
Roberto Ierusalimschy 87367e97f3 more information about memory use 2000-03-16 17:35:07 -03:00
Roberto Ierusalimschy 06f08f5634 small problems with limits and jumps 2000-03-16 15:03:09 -03:00
Roberto Ierusalimschy 3860c5934e details. 2000-03-15 17:50:33 -03:00
Roberto Ierusalimschy f0b697e01c details 2000-03-13 17:37:16 -03:00
Roberto Ierusalimschy 73aa465a8e some name changes 2000-03-10 15:37:44 -03:00
Roberto Ierusalimschy 3d0577f4b9 small optimizations. 2000-03-10 11:38:10 -03:00
Roberto Ierusalimschy 977b8f65f0 comment detail. 2000-03-10 11:01:05 -03:00
Roberto Ierusalimschy e3cf93ddb6 first implementation of "threaded code" for boolean operations 2000-03-09 10:57:37 -03:00
Roberto Ierusalimschy 88b306f495 some optimizations 2000-03-08 21:19:22 -03:00
Roberto Ierusalimschy 563de491be a better way to control optimizations. 2000-03-04 17:18:15 -03:00
Roberto Ierusalimschy 29e0193425 details 2000-03-03 17:30:47 -03:00
Roberto Ierusalimschy 61f97a8ace maybe a concat right associative allows some optimizations... 2000-03-03 17:29:25 -03:00
Roberto Ierusalimschy d1ea38580a change of code generation design (independent functions for each opcode) 2000-03-03 15:53:17 -03:00
Roberto Ierusalimschy 3c9d999424 many details (most by lhf). 2000-03-03 11:58:26 -03:00
Roberto Ierusalimschy f7840a3e0b new algorithm to parse expressions + distribution of code between lparser
and lcode.
2000-03-03 09:33:59 -03:00
Roberto Ierusalimschy 1780e2c977 lua_settable should check stack space (it could call a T.M.) 2000-03-02 09:44:29 -03:00
Roberto Ierusalimschy fa14cbf8e8 comments 2000-03-02 09:32:53 -03:00
Roberto Ierusalimschy 4d4e6f07c0 all order operators use a single tag method (<) 2000-02-22 16:12:46 -02:00
Roberto Ierusalimschy 5cecf0ea9f it is better to control stack space where it is needed. 2000-02-22 15:54:16 -02:00
Roberto Ierusalimschy 3bc925138e first version of code optimizer 2000-02-22 11:31:43 -02:00
Roberto Ierusalimschy 39e1f079bd code generator (and optimizer) for Lua 2000-02-22 11:31:19 -02:00
Roberto Ierusalimschy 075da266e5 there is no need to use shorts... 2000-02-21 16:33:26 -02:00
Roberto Ierusalimschy 228a62f799 details 2000-02-21 16:30:42 -02:00
Roberto Ierusalimschy 7c2fb15bec need "string.h" to use "strchr". 2000-02-21 16:30:06 -02:00
Roberto Ierusalimschy 1f01998516 nobody uses memmove any more. 2000-02-17 16:30:36 -02:00
Roberto Ierusalimschy c929376d59 must include a definition for NULL 2000-02-17 16:30:36 -02:00
Roberto Ierusalimschy 3afe85b2ce new version for INSTRUCTION formats 2000-02-14 14:51:08 -02:00
Roberto Ierusalimschy 52aad0ab59 removing implementation for better error messages (must rethink it...) 2000-02-11 14:52:54 -02:00
Roberto Ierusalimschy 74f1c3d025 small changes for "clean C" 2000-02-08 14:39:42 -02:00
Roberto Ierusalimschy 1f691a4fcd renaming of some opcodes and fields 2000-01-28 14:53:00 -02:00
Roberto Ierusalimschy d6b9f49aaf only need to reset buffer for strings, numbers, and names. 2000-01-26 16:51:49 -02:00
Roberto Ierusalimschy d83c2a8455 performance details. 2000-01-25 16:44:21 -02:00
Roberto Ierusalimschy d11e5adf55 `const' array in protos breaked in 3 arrays (for strings, numbers, and
prototypes).
2000-01-25 11:57:18 -02:00
Roberto Ierusalimschy 99e340b2ba keep `top' in registers when running basic tasks (settable, getglobal, ...) 2000-01-24 18:14:07 -02:00
Roberto Ierusalimschy 9744255ae9 error in call must be propagated 2000-01-24 18:11:26 -02:00
Roberto Ierusalimschy 512b15b601 small optimizations (relational operators) 2000-01-19 14:50:30 -02:00