aboutsummaryrefslogtreecommitdiff
path: root/src/lj_record.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* | Ensure ITERN forward progress on interpreter bailout.Mike Pall2021-09-211-3/+6
| | | | | | | | Reported by Yichun Zhang and ExtReMLapin. #744
* | Don't bail out to interpreter to JLOOP originating from ITERN.Mike Pall2021-09-201-3/+5
| | | | | | | | | | Otherwise forward progress is not guaranteed. Reported by Yichun Zhang.
* | Compile table traversals: next(), pairs(), BC_ISNEXT/BC_ITERN.Mike Pall2021-09-191-5/+125
| | | | | | | | Sponsored by OpenResty Inc.
* | Refactor IR_VLOAD to take an offset.Mike Pall2021-09-191-6/+4
| |
* | String buffers, part 3d: Compile string buffer methods and functions.Mike Pall2021-07-191-0/+10
| | | | | | | | Sponsored by fmad.io.
* | String buffers, part 3a: Add IR_TMPREF for passing TValues to helpers.Mike Pall2021-07-191-5/+10
| | | | | | | | Sponsored by fmad.io.
* | Prevent compile of __concat with tailcall to fast function.Mike Pall2021-04-211-0/+3
| | | | | | | | | | E.g. __concat = function() return setmetatable(...) end Reported by Fezile Manana.
* | Handle on-trace OOM errors from helper functions.Mike Pall2021-03-231-1/+2
| |
* | Use weak guards for on-trace allocations.Mike Pall2021-03-231-2/+2
| |
* | Merge branch 'master' into v2.1Mike Pall2021-01-021-1/+1
|\|
| * Bump copyright date.Mike Pall2021-01-021-1/+1
| |
* | Merge branch 'master' into v2.1Mike Pall2020-10-121-4/+5
|\|
| * Fix snapshot PC when linking to BC_JLOOP that was a BC_RET*.Mike Pall2020-10-121-4/+5
| | | | | | | | | | Reported by Arseny Vakhrushev. Fix contributed by Peter Cawley.
* | LJ_GC64: Always snapshot functions for non-base frames.Mike Pall2020-08-271-0/+1
| | | | | | | | | | Reported by Arseny Vakhrushev. Analysis and fix contributed by Peter Cawley.
* | Use a securely seeded global PRNG for the VM.Mike Pall2020-06-151-1/+2
| | | | | | | | It's not 2005 anymore.
* | ARM: Implement FLOAD from GG_State.Mike Pall2020-06-131-5/+0
| |
* | Improve assertions.Mike Pall2020-06-151-64/+98
| |
* | Optimize table length computation with hinting.Mike Pall2020-05-271-2/+2
| | | | | | | | 10x faster on loop with t[#t+1] = x idiom. Also used by table.insert.
* | Merge branch 'master' into v2.1Mike Pall2020-01-201-1/+1
|\|
| * Bump copyright date.Mike Pall2020-01-201-1/+1
| |
* | Merge branch 'master' into v2.1Mike Pall2019-12-081-0/+2
|\|
| * Fix stack check when recording BC_VARG.Mike Pall2019-12-081-0/+2
| | | | | | | | Contributed by Yichun Zhang.
* | Actually implement maxirconst trace limit.Mike Pall2018-10-141-2/+3
| | | | | | | | Suggested by spacewander.
* | Merge branch 'master' into v2.1Mike Pall2017-05-171-0/+2
|\|
| * Add missing LJ_MAX_JSLOTS check.Mike Pall2017-05-171-0/+2
| | | | | | | | Thanks to Yichun Zhang.
* | Merge branch 'master' into v2.1Mike Pall2017-05-091-2/+2
|\|
| * Fix LJ_MAX_JSLOTS assertion in rec_check_slots().Mike Pall2017-05-091-2/+2
| | | | | | | | Thanks to Yichun Zhang.
* | Merge branch 'master' into v2.1Mike Pall2017-01-171-1/+1
|\|
| * Bump copyright date to 2017.Mike Pall2017-01-171-1/+1
| |
* | LJ_GC64: Various followup fixes.Mike Pall2016-10-201-0/+2
| | | | | | | | Contributed by Peter Cawley.
* | LJ_FR2: Fix slot 1 handling.Mike Pall2016-10-161-2/+2
| | | | | | | | Contributed by Peter Cawley.
* | LJ_GC64: Various fixes.Mike Pall2016-10-121-0/+2
| | | | | | | | Contributed by Peter Cawley.
* | Merge branch 'master' into v2.1Mike Pall2016-06-031-1/+1
|\|
| * Don't try to record outermost pcall() return to lower frame.Mike Pall2016-06-031-1/+1
| |
* | x64/LJ_GC64: Add missing backend support and enable JIT compilation.Mike Pall2016-05-231-0/+6
| | | | | | | | Contributed by Peter Cawley.
* | LJ_FR2: Add support for trace recording and snapshots.Mike Pall2016-05-231-82/+149
| | | | | | | | Contributed by Peter Cawley.
* | Embed 64 bit constants directly in the IR, using two slots.Mike Pall2016-05-231-1/+4
| | | | | | | | Contributed by Peter Cawley.
* | Always walk IR constants in ascending order.Mike Pall2016-05-221-1/+1
| | | | | | | | | | Prerequisite for embedding 64 bit constants directly in the IR. Contributed by Peter Cawley.
* | LJ_GC64: Introduce IRT_PGC.Mike Pall2016-05-201-28/+28
| | | | | | | | Contributed by Peter Cawley.
* | Merge branch 'master' into v2.1Mike Pall2016-05-201-2/+8
|\|
| * Add guard for obscure aliasing between open upvalues and SSA slots.Mike Pall2016-05-201-2/+8
| | | | | | | | Thanks to Peter Cawley.
* | Constrain value range of lj_ir_kptr() to unsigned 32 bit pointers.Mike Pall2016-04-241-6/+1
| | | | | | | | Thanks to Peter Cawley.
* | Merge branch 'master' into v2.1Mike Pall2016-04-211-2/+2
|\|
| * Fix handling of non-numeric strings in arithmetic coercions.Mike Pall2016-04-211-2/+2
| | | | | | | | Thanks to Vyacheslav Egorov.
* | Merge branch 'master' into v2.1Mike Pall2016-04-031-1/+4
|\|
| * Fix recording of select(n, ...) with off-trace varargsMike Pall2016-04-031-1/+4
| | | | | | | | Thanks to Peter Cawley.
* | Merge branch 'master' into v2.1Mike Pall2016-03-031-1/+1
|\|
| * Bump copyright date to 2016.Mike Pall2016-03-031-1/+1
| |
* | Rollback due to HREFK + load fwd must restore guardemit state.Mike Pall2016-01-181-4/+12
| | | | | | | | Thanks to Vyacheslav Egorov.
* | Disable table allocation bump optimization (for now).Mike Pall2015-06-131-0/+14
| |