Mercurial
>
ljs
/ graph
Search:
summary
shortlog
changelog
graph
tags
bookmarks
branches
files
help
graph
The revision graph only works with JavaScript-enabled browsers.
Fix math.frexp() and add more tests (thanks Florob, Link Mauve, xnyhps)
default
tip
Sat, 21 Sep 2013 14:31:22 +0100
, by Matthew Wild
Add math.frexp() and tests (many thanks to Florob and Link Mauve!)
Sat, 21 Sep 2013 14:02:16 +0100
, by Matthew Wild
Implement basic string.format() supporting %d/%s
Wed, 24 Nov 2010 03:36:14 +0000
, by Matthew Wild
baselib: Implement basic message-only error()
Wed, 24 Nov 2010 03:35:40 +0000
, by Matthew Wild
Implement string.find (mostly) and string.sub
Wed, 24 Nov 2010 02:53:15 +0000
, by Matthew Wild
Replace error reporting code with calls to LVM.traceback()
Wed, 24 Nov 2010 02:52:37 +0000
, by Matthew Wild
Add LVM.traceback() function
Wed, 24 Nov 2010 02:52:01 +0000
, by Matthew Wild
OP_SETLIST: Implement support for B==0 (to top of stack)
Wed, 24 Nov 2010 02:51:38 +0000
, by Matthew Wild
OP_RETURN: Pad out results with nils if we get less results than expected
Wed, 24 Nov 2010 02:50:31 +0000
, by Matthew Wild
OP_TAILCALL: Fall through to OP_CALL for native functions
Wed, 24 Nov 2010 02:50:02 +0000
, by Matthew Wild
OP_VARARG: Fix off-by-one
Wed, 24 Nov 2010 02:49:40 +0000
, by Matthew Wild
OP_GETUPVALUE: Clone original LValue
Wed, 24 Nov 2010 02:48:56 +0000
, by Matthew Wild
Create local function to use as chunk prototype
Wed, 24 Nov 2010 02:48:27 +0000
, by Matthew Wild
Better verification of function validity in LVM.call()
Wed, 24 Nov 2010 02:47:47 +0000
, by Matthew Wild
Indentation fix
Mon, 22 Nov 2010 19:38:27 +0000
, by Matthew Wild
Change LVM.call() to take an LValue rather than the raw native/LFunction object. Also add LVM.loadstring(chunk, env) and use that for loading luac.out.
Mon, 22 Nov 2010 19:38:12 +0000
, by Matthew Wild
Implement OP_TAILCALL - the last opcode!
Mon, 22 Nov 2010 05:06:37 +0000
, by Matthew Wild
Add a whole bunch of tests I've been using for recent additions
Mon, 22 Nov 2010 04:56:38 +0000
, by Matthew Wild
Adjust pc down by 1 when calculating error lines, pc is always the /next/ instruction
Mon, 22 Nov 2010 04:54:59 +0000
, by Matthew Wild
Remove some debugging in the gmatch function
Mon, 22 Nov 2010 04:54:18 +0000
, by Matthew Wild
Implement OP_VARARG
Mon, 22 Nov 2010 04:53:09 +0000
, by Matthew Wild
OP_RETURN: Shrink stack on return
Mon, 22 Nov 2010 04:52:55 +0000
, by Matthew Wild
OP_CALL: Don't push varargs into called function's stack
Mon, 22 Nov 2010 04:52:29 +0000
, by Matthew Wild
Fix OP_CONCAT: missing break; and should supply empty separator to join()
Mon, 22 Nov 2010 04:13:28 +0000
, by Matthew Wild
assert(): Throw "assertion failed" message when none supplied
Mon, 22 Nov 2010 04:05:25 +0000
, by Matthew Wild
"Implement" OP_CLOSE
Mon, 22 Nov 2010 02:43:55 +0000
, by Matthew Wild
Fix OP_FORLOOP to set the loop counter variable properly
Mon, 22 Nov 2010 02:36:09 +0000
, by Matthew Wild
Implement LValue.len() and OP_LEN (no metamethod yet)
Mon, 22 Nov 2010 02:34:26 +0000
, by Matthew Wild
Switch to [] for representing tables (for now)
Mon, 22 Nov 2010 02:33:56 +0000
, by Matthew Wild
Don't use this.LValue() inside the VM - it's for JS types only
Mon, 22 Nov 2010 02:32:01 +0000
, by Matthew Wild
Fix OP_CALL to handle the case of B==1 (no parameters) and fix an off-by-one error that wouldn't fill the stack with nils properly
Mon, 22 Nov 2010 02:31:16 +0000
, by Matthew Wild
Implement OP_MOD, OP_POW, OP_UNM, OP_NOT (no metamethods yet)
Sun, 21 Nov 2010 21:37:07 +0000
, by Matthew Wild
New (passing) test, arithmetic.lua
Sun, 21 Nov 2010 21:36:26 +0000
, by Matthew Wild
Implement OP_MUL (no metamethod yet)
Sun, 21 Nov 2010 21:25:24 +0000
, by Matthew Wild
Fix FORPREP to not blat R(A+3) - not sure what that line thought it was doing
Sun, 21 Nov 2010 21:17:59 +0000
, by Matthew Wild
Add unimplemented OP_* codes as reference
Sun, 21 Nov 2010 16:50:39 +0000
, by Matthew Wild
Fix exception in stack printing for some tests when debug mode is enabled
Sun, 21 Nov 2010 16:35:08 +0000
, by Matthew Wild
Prettier stack printing in debugMode
Sun, 21 Nov 2010 16:29:29 +0000
, by Matthew Wild
Fix traceback in error handling...
Sun, 21 Nov 2010 16:28:40 +0000
, by Matthew Wild
Add string lib, with gmatch function only for now
Sun, 21 Nov 2010 16:28:17 +0000
, by Matthew Wild
Implement OP_SETLIST
Sun, 21 Nov 2010 16:27:41 +0000
, by Matthew Wild
Implement OP_TFORLOOP
Sun, 21 Nov 2010 16:27:18 +0000
, by Matthew Wild
Implement OP_CONCAT (no metamethod yet)
Sun, 21 Nov 2010 16:25:08 +0000
, by Matthew Wild
Remove some debugging in math.ldexp() accidentally committed
Sat, 20 Nov 2010 15:19:42 +0000
, by Matthew Wild
Implement OP_DIV (no metamethod yet)
Sat, 20 Nov 2010 15:19:19 +0000
, by Matthew Wild
Don't try and print current position in the Lua script with no valid frame
Sat, 20 Nov 2010 12:13:12 +0000
, by Matthew Wild
Rename default_environment to _G, use registerLib() for baselib and add math lib with 2 ldexp, floor
Sat, 20 Nov 2010 12:12:46 +0000
, by Matthew Wild
Add LVM().registerLib(env, name, lib) to register a table of native functions to an environment.
Sat, 20 Nov 2010 12:11:34 +0000
, by Matthew Wild
Fix OP_SUB to use RK() too...
Sat, 20 Nov 2010 12:10:53 +0000
, by Matthew Wild
Update basic_logic test
Sat, 20 Nov 2010 11:11:56 +0000
, by Matthew Wild
Print out location at which errors occur, yay!
Sat, 20 Nov 2010 11:11:17 +0000
, by Matthew Wild
Pass sourceName to child chunks (in binary files it's only set in the top-level chunk)
Sat, 20 Nov 2010 11:11:01 +0000
, by Matthew Wild
Disable debugMode, accidentally committed
Sat, 20 Nov 2010 11:07:24 +0000
, by Matthew Wild
Implement OP_LE (no metamethod yet)
Fri, 19 Nov 2010 21:06:50 +0000
, by Matthew Wild
Fix OP_LT to respect A, and move OP_EQ to live next to it in the switch() for readability
Fri, 19 Nov 2010 20:52:08 +0000
, by Matthew Wild
Fix OP_LT to use RK()
Fri, 19 Nov 2010 19:49:25 +0000
, by Matthew Wild
Add assert() to baselib, real tests possible at last
Fri, 19 Nov 2010 19:42:25 +0000
, by Matthew Wild
Add LValue.truth() to return whether a value is (not(false) and not(nil))
Fri, 19 Nov 2010 19:41:57 +0000
, by Matthew Wild
Fix OP_SETTABLE to use RK() helper
Fri, 19 Nov 2010 19:28:48 +0000
, by Matthew Wild
Add 2 new pass tests, add.lua and bool.lua
Fri, 19 Nov 2010 19:24:23 +0000
, by Matthew Wild
Fix type() in baselib to return an LValue
Fri, 19 Nov 2010 19:22:40 +0000
, by Matthew Wild
Fix for passing arguments to the entry call frame
Fri, 19 Nov 2010 19:22:20 +0000
, by Matthew Wild
Implement OP_EQ
Fri, 19 Nov 2010 19:21:48 +0000
, by Matthew Wild
Give LValue an equals() method, returns true/false if the value == the first argument (checks metamethod)
Fri, 19 Nov 2010 19:21:36 +0000
, by Matthew Wild
Fix native function return values for the new calling interface
Fri, 19 Nov 2010 16:57:32 +0000
, by Matthew Wild
Update all opcodes to use RK() that need it
Fri, 19 Nov 2010 16:08:51 +0000
, by Matthew Wild
Add new RK() helper and fix OP_ADD to use it (so it loads constants properly)
Fri, 19 Nov 2010 16:06:12 +0000
, by Matthew Wild
Fix OP_ADD code to use new LValue format
Fri, 19 Nov 2010 16:05:36 +0000
, by Matthew Wild
Support for __add metamethod
Fri, 19 Nov 2010 16:04:51 +0000
, by Matthew Wild
New Lua<->native function interface, simpler. Added type() to baselib.
Fri, 19 Nov 2010 16:04:30 +0000
, by Matthew Wild
Large overhaul - every LValue (and LBinaryChunk) now has a valid 'vm' property, so we know in which LVM to call it or its metamethods
Fri, 19 Nov 2010 16:02:55 +0000
, by Matthew Wild
Give LValue an add() method, to eventually respect metamethods
Fri, 19 Nov 2010 13:09:25 +0000
, by Matthew Wild
Change some decimal constants to hex for consistency
Fri, 19 Nov 2010 04:05:19 +0000
, by Matthew Wild
Shorten loop test a little so I don't have to wait so long...
Fri, 19 Nov 2010 03:51:13 +0000
, by Matthew Wild
Move the demo_account.lua test from fail to pass - yay!
Fri, 19 Nov 2010 03:50:04 +0000
, by Matthew Wild
Switch to sys.puts for all output for now, leaving browser compatibility for the moment.
Fri, 19 Nov 2010 03:48:41 +0000
, by Matthew Wild
Formalise the beginnings of a baselib, add setmetatable.
Fri, 19 Nov 2010 03:48:04 +0000
, by Matthew Wild
Add FIXME for something that works, but shouldn't...
Fri, 19 Nov 2010 03:47:22 +0000
, by Matthew Wild
splice != slice. Dear Javascript, this is only one reason for why I don't like you.
Fri, 19 Nov 2010 03:43:47 +0000
, by Matthew Wild
Correct off-by-one in return value limits
Fri, 19 Nov 2010 03:43:03 +0000
, by Matthew Wild
New interface for native Javascript functions called from Lua
Fri, 19 Nov 2010 03:42:17 +0000
, by Matthew Wild
Support for numbers in LValueFromValue()
Fri, 19 Nov 2010 03:39:40 +0000
, by Matthew Wild
Add LValue.toString()
Fri, 19 Nov 2010 03:39:00 +0000
, by Matthew Wild
Support for tables in __index
Fri, 19 Nov 2010 03:38:41 +0000
, by Matthew Wild
Implement OP_TESTSET
Fri, 19 Nov 2010 03:38:18 +0000
, by Matthew Wild
Implement OP_ADD, OP_SUB, OP_LT
Fri, 19 Nov 2010 03:37:51 +0000
, by Matthew Wild
Add tests/ to the repo
Tue, 26 Oct 2010 10:43:56 +0100
, by Matthew Wild
Move try {} block so it covers more of the VM initialization
Fri, 28 May 2010 02:23:39 +0100
, by Matthew Wild
Add test __index handler to catch use of nil globals
Fri, 28 May 2010 02:23:00 +0100
, by Matthew Wild
Support for __index metamethod
Fri, 28 May 2010 02:21:54 +0100
, by Matthew Wild
Add LValue.setMetatable()
Fri, 28 May 2010 02:21:30 +0100
, by Matthew Wild
Pass vm as 'this' to native functions
Fri, 28 May 2010 02:20:58 +0100
, by Matthew Wild
More reliable detection of when we're at a native/Lua call boundary
Fri, 28 May 2010 02:20:35 +0100
, by Matthew Wild
LValueFromValue handles undefined and objects/arrays
Fri, 28 May 2010 02:19:34 +0100
, by Matthew Wild
Give LValue precall() and call() methods, give functions a vm property.
Fri, 28 May 2010 02:18:53 +0100
, by Matthew Wild
Show return values on exit
Mon, 24 May 2010 15:22:45 +0100
, by Matthew Wild
Support for return values from LVM.call()
Mon, 24 May 2010 15:22:29 +0100
, by Matthew Wild
Merge backout
Mon, 24 May 2010 14:12:14 +0100
, by Matthew Wild
Backed out changeset 741b953fcc5f (premature optimisations == bad)
Mon, 24 May 2010 14:08:50 +0100
, by Matthew Wild
Exit with failure code on error
Mon, 24 May 2010 13:42:34 +0100
, by Matthew Wild
Give LFunctions a vm property
Mon, 24 May 2010 12:55:03 +0100
, by Matthew Wild
Localize instructions and reg from frame
Mon, 24 May 2010 12:54:20 +0100
, by Matthew Wild
Split LVM.run() into LVM.call()/LVM.run()
Sun, 23 May 2010 19:54:45 +0100
, by Matthew Wild
Implement OP_TEST and OP_JMP
Sun, 23 May 2010 17:31:57 +0100
, by Matthew Wild
Implement OP_LOADBOOL
Sun, 23 May 2010 17:31:41 +0100
, by Matthew Wild
Initialise all stack slots to nil when calling a chunk
Sun, 23 May 2010 17:31:15 +0100
, by Matthew Wild
Allow LValues with a value of 'false' to be create (it was converted to 'null')
Sun, 23 May 2010 17:30:43 +0100
, by Matthew Wild
Implement OP_SELF
Sun, 23 May 2010 13:48:39 +0100
, by Matthew Wild
Fix for error handling to handle string exceptions
Sun, 23 May 2010 13:48:29 +0100
, by Matthew Wild
OP_FORPREP, OP_FORLOOP: Support for numerical for loops
Sun, 23 May 2010 13:28:45 +0100
, by Matthew Wild
Instantiate a new LValue in OP_LOADK, otherwise "constants" aren't so constant...
Sun, 23 May 2010 13:28:23 +0100
, by Matthew Wild
Fix off-by-one in calculating the value of sBx
Sun, 23 May 2010 13:27:36 +0100
, by Matthew Wild
Print sBx field in bytecode dump (for debugging)
Sun, 23 May 2010 13:26:51 +0100
, by Matthew Wild
Couple of fixes for last commit
Sun, 23 May 2010 12:46:56 +0100
, by Matthew Wild
Remove rawExceptions flag, always print exception's stack trace if it has one
Sun, 23 May 2010 12:46:02 +0100
, by Matthew Wild
Support for OP_NEWTABLE, OP_GETTABLE, OP_SETTABLE
Sun, 23 May 2010 02:38:45 +0100
, by Matthew Wild
New LValueFromValue() to convert from any Javascript value (almost) to a LValue
Sun, 23 May 2010 02:29:04 +0100
, by Matthew Wild
Implement OP_SETUPVALUE \o/
Sat, 22 May 2010 20:14:33 +0100
, by Matthew Wild
Add new debug option - rawExceptions - to prevent catching exceptions thrown by the VM, use for debugging the VM.
Sat, 22 May 2010 20:08:03 +0100
, by Matthew Wild
It's required to insert the new function into the stack before processing its upvalue instructions, in case it refers to itself.
Sat, 22 May 2010 20:07:05 +0100
, by Matthew Wild
Remove some, hmm, "debugging" code :)
Sat, 22 May 2010 20:05:58 +0100
, by Matthew Wild
Remove some accidentally-committed debug output
Sat, 22 May 2010 17:41:17 +0100
, by Matthew Wild
Switch from JSON.stringify for debug output to sys.inspect which doesn't bail out on circular references
Sat, 22 May 2010 17:37:02 +0100
, by Matthew Wild
Support for upvalues in functions \o/ implemented OP_GETUPVAL, and a stub for OP_SETUPVAL.
Sat, 22 May 2010 17:33:43 +0100
, by Matthew Wild
OP_RETURN: Support for return values from Lua functions \o/
Wed, 07 Apr 2010 04:15:59 +0100
, by Matthew Wild
Support for B==0 in OP_CALL (signifies params are to top of the stack)
Wed, 07 Apr 2010 04:15:23 +0100
, by Matthew Wild
Fix OP_RETURN to update this.frame
Wed, 07 Apr 2010 03:07:10 +0100
, by Matthew Wild
Implement OP_CALL for Lua functions (no return values yet)
Wed, 07 Apr 2010 03:06:46 +0100
, by Matthew Wild
Implement basic OP_CLOSURE (no support for upvalues yet)
Wed, 07 Apr 2010 03:05:52 +0100
, by Matthew Wild
Add chunk property to LFunction to show which chunk it came from
Wed, 07 Apr 2010 03:05:24 +0100
, by Matthew Wild
Support for reading all fields in the chunk (including function prototypes, required for OP_CLOSURE)
Wed, 07 Apr 2010 02:46:56 +0100
, by Matthew Wild
Initial stab at reading Number constants from bytecode
Tue, 06 Apr 2010 19:27:28 +0100
, by Matthew Wild
Throw error on unhandled opcodes
Tue, 06 Apr 2010 14:51:25 +0100
, by Matthew Wild
Use new notation for accessing instruction fields
Tue, 06 Apr 2010 14:51:06 +0100
, by Matthew Wild
Add a bytecode interpreter \o/
Tue, 06 Apr 2010 14:49:52 +0100
, by Matthew Wild
Add debugMode switch
Tue, 06 Apr 2010 14:47:21 +0100
, by Matthew Wild
Add errors for when trying to index non-tables
Tue, 06 Apr 2010 14:46:30 +0100
, by Matthew Wild
Implement OP_SETGLOBAL
Mon, 05 Apr 2010 17:23:18 +0100
, by Matthew Wild
Print error on error
Mon, 05 Apr 2010 17:14:58 +0100
, by Matthew Wild
Return nil for non-existent table keys
Mon, 05 Apr 2010 17:14:36 +0100
, by Matthew Wild
Throw an error if trying to call a non-function
Mon, 05 Apr 2010 17:14:09 +0100
, by Matthew Wild
Implement OP_MOVE, OP_LOADNIL and OP_RETURN. Also change the way OP_CALL is implemented, and update the test code with a more complicated (kind of) sample.
Mon, 05 Apr 2010 17:03:06 +0100
, by Matthew Wild
Style fix
Sun, 04 Apr 2010 21:08:23 +0100
, by Matthew Wild
Initial commit
Sun, 04 Apr 2010 21:02:16 +0100
, by Matthew Wild
less
more
|
(0)
tip