aboutsummaryrefslogtreecommitdiff
path: root/src/lj_obj.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* From Lua 5.2: __len for tables. Needs -DLUAJIT_ENABLE_LUA52COMPAT.Mike Pall2011-06-201-3/+3
|
* Add support for bytecode loading/saving.Mike Pall2011-06-131-5/+5
|
* Cleanup prototype flags.Mike Pall2011-06-091-6/+9
|
* Flatten and compress in-memory debug info (saves ~70%).Mike Pall2011-06-091-19/+10
|
* ARM: Add LJ_SOFTFP define. Add support for soft-float slot handling.Mike Pall2011-05-161-4/+4
|
* Avoid name clash with Windows MM_MAX define.Mike Pall2011-05-081-3/+3
|
* Use lj_vm_tobit() on targets without FPU.Mike Pall2011-04-101-0/+8
|
* DUALNUM: Handle integer type in JIT compiler.Mike Pall2011-03-101-2/+0
|
* DUALNUM: Add integer type to core VM.Mike Pall2011-02-171-5/+58
|
* FFI: Add 64 bit integer comparisons and pointer comparisons.Mike Pall2011-01-131-1/+1
|
* FFI: Add ffi.load() and ffi.C default namespace.Mike Pall2011-01-101-0/+1
|
* Bump copyright date to 2011.Mike Pall2011-01-091-1/+1
|
* Add support for uint64_t <-> FP conversions to x64 backend.Mike Pall2011-01-021-2/+1
|
* Add lj_num2u64 for number to uint64_t conversion.Mike Pall2010-12-311-0/+11
|
* FFI: Add 64 bit integer arithmetic.Mike Pall2010-12-251-0/+2
|
* Undo ef8c2648.Mike Pall2010-12-031-7/+0
|
* FFI: Add macros for consistent number to integer truncation.Mike Pall2010-11-261-0/+7
|
* FFI: Add cdata object type.Mike Pall2010-11-261-4/+34
|
* Disable Lua 5.2 features by default. See -DLUAJIT_ENABLE_LUA52COMPAT.Mike Pall2010-11-191-1/+7
|
* Add support for __pairs and __ipairs metamethods (from Lua 5.2).Mike Pall2010-11-181-1/+1
|
* Cleanup architecture, ABI and OS definitions.Mike Pall2010-11-161-1/+1
|
* Turn some lua_State fields into 32 bit pointers.Mike Pall2010-09-091-2/+2
| | | | lua_State now fits into one cache line on x64.
* Minor tweaks to integration of assembler part.Mike Pall2010-08-291-1/+1
| | | | | | | Remove unneeded PC restore in vm_growstack_*. Don't declare symbols that are unused in interpreter-only builds. Don't embed lj_vm_foldfpm in interpreter-only builds. Add 2nd temporary TValue in lua_State.
* Switch to fast string hash.Mike Pall2010-07-211-1/+2
|
* Turn TValue setter macros into inline functions.Mike Pall2010-04-261-110/+119
|
* Treat the tag of a TValue as unsigned everywhere.Mike Pall2010-04-251-28/+26
|
* Make metamethod names proper GC roots.Mike Pall2010-04-251-4/+6
|
* Turn traces into true GC objects (GCtrace).Mike Pall2010-04-251-1/+1
|
* No longer let the GC replace dead keys with the LJ_TDEADKEY tag.Mike Pall2010-04-211-8/+33
| | | | | | | | Important: this changes the semantics of the write barrier! Carefully read the big comment block in lj_obj.h This helps HREFK key slot specialization and allows safely hoisting HREF/HREFK across GC steps, too (fix for a barely reproducible bug). Dead keys are only removed during a table resize (as before).
* Move free node pos to t->node[0].freetop. Saves 4 bytes in GCtab.Mike Pall2010-03-221-2/+1
|
* Reorder various structs to reduce padding (thanks to /usr/bin/pahole).Mike Pall2010-03-151-1/+1
|
* Major redesign of function call handling.Mike Pall2010-02-131-4/+5
| | | | | | | | | | | Drop call gates. Use function headers, dispatched like bytecodes. Emit BC_FUNCF/BC_FUNCV bytecode at PC 0 for all Lua functions. C functions and ASM fast functions get extra bytecodes. Modify internal calling convention: new base in BASE (formerly in RA). Can now use better C function wrapper semantics (dynamic on/off). Prerequisite for call hooks with zero-overhead if disabled. Prerequisite for compiling recursive calls. Prerequisite for efficient 32/64 bit prototype guards.
* Replace GCproto reference with bytecode PC in GCfuncL.Mike Pall2010-02-101-2/+3
|
* Drop bc field in GCproto since the bytecode is colocated.Mike Pall2010-02-081-6/+1
|
* Redesign of prototype generation, part 5: colocation of protoype arrays.Mike Pall2010-02-081-7/+7
|
* 32/64 bit memory ref cleanup, part 4: GCproto ->varinfo.Mike Pall2010-02-051-2/+3
|
* 32/64 bit memory ref cleanup, part 3: GCproto ->lineinfo.Mike Pall2010-02-051-1/+4
|
* 32/64 bit memory ref cleanup, part 2: GCproto ->uvname and ->chunkname.Mike Pall2010-02-051-3/+8
|
* 32/64 bit memory ref cleanup, part 1: GCproto ->bc and ->k.Mike Pall2010-02-051-8/+14
|
* Reduce non-numeric tag range by bumping up 64 bit lightud tag.Mike Pall2010-01-181-6/+6
|
* Improve alias analysis of upvalues using a disambiguation hash value.Mike Pall2010-01-091-1/+1
| | | | | | | | All upvalue objects hold a disambiguation hash value now. It's built from the parent prototype and the slot number. Different hash values imply the upvalues cannot alias. Same hash values don't imply anything (collision or different closures). Upvalue disambiguation makes use of a reduced hash due to IR contraints.
* Avoid int16_t widening for pt->uv elements.Mike Pall2010-01-091-1/+1
|
* Fix 32/64 bit portability issue with upval->v.Mike Pall2010-01-091-4/+3
|
* Bump all copyright dates to 2010.Mike Pall2010-01-091-1/+1
|
* Fix size calculation for closure structs.Mike Pall2009-12-281-2/+2
|
* Fast forward to sync public repo.Mike Pall2009-12-081-3/+20
| | | | | | | | 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.
* RELEASE LuaJIT-2.0.0-beta2v2.0.0-beta2Mike Pall2009-12-081-1/+2
|
* RELEASE LuaJIT-2.0.0-beta1v2.0.0-beta1Mike Pall2009-12-081-0/+676