Commit Graph

2578 Commits

Author SHA1 Message Date
Mike Pall
3a15e46b79 More calling convention cleanups for x64 interpreter. 2009-12-27 18:44:12 +01:00
Mike Pall
bc47063708 Use fastcall for remaining 1-arg/2-arg calls from interpreter.
Simplifies conversion to x64 calling conventions.
2009-12-27 17:42:41 +01:00
Mike Pall
690760aa38 Add SSE variant of pow/powi to interpreter.
Use SSE pow/powi helper functions from compiled code.
Cleanup use of helper functions.
Related cleanups of folding functions in x64 interpreter.
2009-12-25 23:12:30 +01:00
Mike Pall
6ce0c90ed6 Add build infrastructure for the SSE2-enabled interpreter.
Works on x86 now. Will be enabled by default on x64 (not ready, yet).
2009-12-22 20:27:20 +01:00
Mike Pall
a5faa29aa9 Fix last commit. 2009-12-22 06:23:22 +01:00
Mike Pall
c4e9dc0012 Miscellaneous cleanups for x64 interpreter. 2009-12-22 06:16:29 +01:00
Mike Pall
44a9d7b00c Use SSE variants for IRFPM_FLOOR/CEIL/TRUNC unless SSE4.1 available. 2009-12-22 05:40:49 +01:00
Mike Pall
298e3f5d54 Add SSE2 variants for all FP ops (except vm_pow*) in interpreter. 2009-12-22 05:04:21 +01:00
Mike Pall
ab02f069aa Add SSE2 variants of basic arithmetic ops in interpreter. 2009-12-21 20:11:02 +01:00
Mike Pall
34d716947c Properly compile on Debian kFreeBSD. 2009-12-20 18:41:55 +01:00
Mike Pall
a1d4d05f2c Adapt most outbound calls in interpreter to x64 calling conventions. 2009-12-19 17:25:54 +01:00
Mike Pall
ed8d86bf66 Better change the saved regs for the x64 interpreter, too. 2009-12-18 03:10:52 +01:00
Mike Pall
db29a8cb04 Change KBASE/PC regs for x64/POSIX to get shorter encodings. 2009-12-17 22:14:24 +01:00
Mike Pall
6adab430af Adapt primary inbound calls in x64 interpreter.
Change argument order for lj_vm_cpcall() to simplify x64 interpreter.
2009-12-17 22:08:20 +01:00
Mike Pall
1e7951ea7b Cleanup DynASM action list flushes. 2009-12-16 22:31:15 +01:00
Mike Pall
85d32aeb36 Change some misuses of esp in x64 interpreter. 2009-12-16 04:37:30 +01:00
Mike Pall
4cb357d30f Define x64 interpreter frame and cleanup use of stack temps. 2009-12-16 01:29:07 +01:00
Mike Pall
8df9603888 Unify interpreter reg saves/restores for WIN64 prolog/epilog req. 2009-12-15 21:36:42 +01:00
Mike Pall
1eedc6d2f1 First bunch of register definitions for x64 interpreter. 2009-12-15 05:40:44 +01:00
Mike Pall
547508f36f Fix off-by-one error in err_chunkid(). 2009-12-14 02:28:22 +01:00
Mike Pall
ec2442862f Reorg Makefile to allow more overrides on the make command line. 2009-12-08 22:27:14 +01:00
Mike Pall
6163a90d6d Remove asm auto-detection due to cross-compilation issues. 2009-12-08 21:28:49 +01:00
Mike Pall
699232f667 Add DynASM-built files to public repo. 2009-12-08 20:40:15 +01:00
Mike Pall
3f1f9e11f4 Fast forward to sync public repo.
Compile math.sinh(), math.cosh(), math.tanh() and math.random().
Compile various io.*() functions.
Drive the GC forward on string allocations in the parser.
Improve KNUM fuse vs. load heuristics.
Add abstract C call handling to IR.
2009-12-08 20:35:29 +01:00
Mike Pall
5287b93264 LuaJIT-2.0.0-beta2 hotfix #2
Fix lua_tocfunction().
Fix cutoff register in JMP bytecode for some conditional expressions.
Fix PHI marking algorithm for references from variant slots.
2009-12-08 19:52:28 +01:00
Mike Pall
2d0ef4522b LuaJIT 2.0.0-beta2 hotfix #1
Fix LUA_XCPATH.
Fix DWARF unwinding info for OSX.
2009-12-08 19:50:21 +01:00
Mike Pall
1d1fed48a0 RELEASE LuaJIT-2.0.0-beta2 2009-12-08 19:49:20 +01:00
Mike Pall
55b1695971 RELEASE LuaJIT-2.0.0-beta1 2009-12-08 19:46:35 +01:00