aboutsummaryrefslogtreecommitdiff
path: root/src/lj_ir.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup various endianess issues in assembler backend.Mike Pall2011-10-221-1/+1
|
* FFI/ARM: Ensure invocation of SPLIT pass for float conversions.Mike Pall2011-10-141-0/+1
|
* Split up FP IR instructions with SPLIT pass for soft-float targets.Mike Pall2011-05-221-1/+1
|
* Move IR_CALL* definitions to lj_ircall.h.Mike Pall2011-05-221-85/+0
|
* FFI: Fix cdata finalization.Mike Pall2011-04-131-0/+1
|
* DUALNUM: Handle integer type in JIT compiler.Mike Pall2011-03-101-9/+21
|
* DUALNUM: Make overflow guards weak. Add IR_USE and IR_MULOV.Mike Pall2011-03-071-2/+5
|
* FFI: Fix compiled ffi.string() semantics.Mike Pall2011-02-281-0/+1
|
* FFI: Record ffi.copy() and ffi.fill().Mike Pall2011-02-071-1/+3
|
* Add IR_XBAR, a barrier against XLOAD/XSTORE optimizations.Mike Pall2011-02-071-1/+2
|
* Improve static assertion macro.Mike Pall2011-02-071-1/+2
|
* FFI: Record simple C function calls.Mike Pall2011-02-051-2/+2
| | | | | | Only handles cdecl and fixarg C functions. Doesn't handle pass-by-value aggregates. Doesn't handle 64 bit args/returns on 32 bit CPUs.
* FFI: Record ffi.string().Mike Pall2011-02-051-1/+2
|
* FFI: Rename IR_CNEWP to IR_CNEWI and use it to box 64 bit integers.Mike Pall2011-02-031-4/+6
| | | | | Generates smaller IR and DCE eliminates many intermediate boxes. Needs allocation sinking to eliminate the boxes kept alive by PHIs.
* Rename IR_POWI to IR_POW.Mike Pall2011-02-021-1/+1
|
* FFI: Record 64 bit integer divide and modulo.Mike Pall2011-02-021-7/+11
|
* Add SPLIT pass to split 64 bit IR instructions for 32 bit CPUs.Mike Pall2011-02-021-5/+16
| | | | | | | Add generic HIOP instruction for extra backend functionality. Add support for HIOP to x86 backend. Use POWI for 64 bit integer x^k, too. POWI is lowered to a call by SPLIT or the x64 backend.
* FFI: Split up 64 bit x^k helper into signed/unsigned.Mike Pall2011-01-281-1/+3
|
* FFI: Move code for cdata arithmetic to lj_carith.c.Mike Pall2011-01-261-1/+1
|
* Add volatile XLOADs.Mike Pall2011-01-191-1/+2
|
* Differentiate between IR_KPTR and IR_KKPTR.Mike Pall2011-01-191-1/+3
| | | | | | | IR_KPTR holds a const pointer to possibly non-const content. IR_KKPTR holds a const pointer to definitely const content. Note that only content known by the VM to be const qualifies. Content tagged as const by users (e.g. const char *) doesn't.
* Bump copyright date to 2011.Mike Pall2011-01-091-1/+1
|
* Fix handling of floats in x86/x64 backend.Mike Pall2011-01-051-0/+1
|
* FFI: Record 64 bit integer arithmetic.Mike Pall2011-01-031-0/+7
| | | | Currently NYI in the x86 backend.
* Use cdata to pass IR_KINT64 to -jdump.Mike Pall2011-01-021-0/+1
|
* Refactoring of conversion ops, part 5: drop TOINT/TOI64/TONUM.Mike Pall2010-12-311-13/+0
|
* Refactoring of conversion ops, part 4: use CONV instead of TOINT/TONUM.Mike Pall2010-12-311-0/+4
| | | | Also narrow CONV.int.num and CONV.i64.num.
* Copy destination type for CONV from ir->t to op2, too.Mike Pall2010-12-311-5/+7
|
* Refactoring of conversion ops, part 2: cleanup cdata conversions.Mike Pall2010-12-301-0/+2
|
* Refactoring of conversion ops, part 1: add IR_CONV.Mike Pall2010-12-301-0/+11
|
* Use macro-map for IRT_* enum. Add IRT_FLOAT.Mike Pall2010-12-281-30/+19
|
* FFI: Drop IR_CNEWI. Add IR_CNEWP only for pointers/refs.Mike Pall2010-12-171-4/+2
|
* FFI: Add IR_CNEW/IR_CNEWI to allocate/init cdata objects.Mike Pall2010-12-111-2/+8
|
* FFI: Record cdata index operations (preliminary, lots of NYI cases).Mike Pall2010-12-081-2/+6
|
* Add IR_TOI64.Mike Pall2010-12-061-2/+6
|
* Use native IRT_PTR instead of IRT_LIGHTUD workaround for FILE*.Mike Pall2010-12-061-0/+3
|
* Add IR_XSTORE.Mike Pall2010-12-061-0/+2
|
* Add support for 64 bit integer arithmetic to x64 backend.Mike Pall2010-12-061-2/+7
|
* Add IR_KINT64.Mike Pall2010-12-051-18/+22
|
* Cleanup 64 bit IR type handling.Mike Pall2010-12-051-6/+15
|
* Rename IRT_PTR to IRT_P32.Mike Pall2010-12-051-2/+2
|
* Make sure to use irt_toitype() macro everywhere.Mike Pall2010-12-051-1/+0
|
* FFI: Add cdata object type.Mike Pall2010-11-261-1/+2
|
* Decouple SLOAD type and optional conversion.Mike Pall2010-10-111-5/+6
|
* Add IR_VLOAD for vararg loads.Mike Pall2010-09-141-1/+2
| | | | Also fixes the broken AA improvement in the last commit.
* Record vararg expressions with varargs defined off-trace.Mike Pall2010-09-131-4/+5
| | | | Add SLOAD variant to access the frame type/size.
* Add weak guards. Emit TNEW/TDUP with a guard bit.Mike Pall2010-05-081-37/+40
|
* Treat the tag of a TValue as unsigned everywhere.Mike Pall2010-04-251-2/+2
|
* 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-1/+1
| | | | | | | | 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).