summaryrefslogtreecommitdiff
path: root/src/lj_ir.h
Commit message (Collapse)AuthorAgeFilesLines
* Bump copyright date.Mike Pall2022-01-151-1/+1
|
* Bump copyright date.Mike Pall2021-01-021-1/+1
|
* Ensure full init of IR_NOP instructions.Mike Pall2020-10-121-0/+8
|
* Mark CONV as non-weak, to prevent elimination of its side-effect.Mike Pall2020-09-221-1/+1
| | | | An unused guarded CONV int.num cannot be omitted in general.
* Bump copyright date.Mike Pall2020-01-201-1/+1
|
* Bump copyright date to 2017.Mike Pall2017-01-171-1/+1
|
* Bump copyright date to 2016.Mike Pall2016-03-031-1/+1
|
* Bump copyright date to 2015.Mike Pall2015-01-051-1/+1
|
* Bump copyright date to 2014.Mike Pall2014-01-161-1/+1
|
* Bump copyright date to 2013.Mike Pall2013-02-111-1/+1
|
* Add table of IR type sizes.Mike Pall2012-08-271-5/+12
|
* Don't treat all constified cdata content as constant.Mike Pall2012-07-241-0/+1
|
* Avoid pesky compiler warnings about C++ keywords (eh?).Mike Pall2012-07-031-1/+1
|
* Add IR_PVAL instruction for non-slot parent links.Mike Pall2012-07-021-0/+1
|
* Add explicit IR_GCSTEP instruction.Mike Pall2012-07-021-0/+1
|
* FFI: Use CNEWI/FLOAD to box/access ffi.new("int", x) (for varargs).Mike Pall2012-06-041-0/+1
|
* Bump copyright date to 2012.Mike Pall2012-01-231-1/+1
|
* Specialize to prototype for non-monomorphic functions.Mike Pall2011-11-201-0/+1
| | | | Solves the trace-explosion problem with closure-heavy programming.
* 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
|