Skip to content

Releases: TheLuaOSProject/LuaJITMT

b1.0.12

b1.0.12 Pre-release
Pre-release

Choose a tag to compare

@Frityet Frityet released this 06 Jul 23:46
  • Fix native Windows CI smoke
  • Stabilize GC/JIT MT edge cases
  • cover local-cell call and secondary side exits
  • cover local-cell closure side exits
  • fix JIT local-cell loop snapshots
  • clean up GC2 counters and idle rescan cleanup
  • stabilize GC2 root rescans and aborted handoffs
  • Relax VM safepoint call-unroll epoch check
  • Clarify GC2 worker weak-drain fixture
  • Trace active-MT local-cell loop roots
  • Restore stock error locations
  • Stabilize GC stack scans and JIT loop substitution
  • Split traced table resize stress
  • Deduplicate callback parse-token fixture
  • Harden JIT trace diagnostics
  • Stabilize shared MT JIT table traversal
  • Fix trace GC lifetime semantics
  • Stabilize concurrent GC root traversal
  • Use shared sleep helper in safepoint fixture
  • Deduplicate test helper scaffolding
  • Drop unused harness line capture helper
  • Tighten recursive trace retention coverage
  • Cover bridge-active FNEW publication
  • Stabilize GC2 pacing and root repair
  • Centralize harness build profiles
  • Avoid redundant M6 profile cleans
  • Deduplicate table helper test flags
  • Preserve retiring array store edges
  • Route table freetop through helpers
  • Tighten x64 TSETS direct-store coverage
  • Centralize string intern state atomics
  • Publish string table mask mirror atomically
  • Share ccall parser-token wait fixture
  • Share remaining FFI parser-token waits
  • Clarify GC2 worker owner token
  • Share FFI parser-token fixture waits
  • Lock Lua test launcher before runner exec
  • Deduplicate FFI enum snapshot lookup
  • Forward assisted table array slots
  • Acquire-load default ccall struct returns
  • Acquire-load cparser expression ctypes
  • Acquire-load cparser layout fields
  • Publish parser CType rows through helpers
  • Tighten FFI ctype rollback coverage
  • Copy grown CType tables through helpers
  • Share optional test artifact reader
  • Route CType rollback copies through helpers
  • Publish cparser layout updates from snapshots
  • Add JIT table publication regressions
  • Stabilize active-MT GC publication paths
  • Keep table.insert owner waits non-throwing
  • Share mutex native wait helper
  • Share table store barrier helper
  • Assist retiring array store migration
  • Share threading native futex waits
  • Share active TG thread resolver
  • Tighten recursive trace retention coverage
  • Centralize TG JIT active checks
  • Share native STOPREQ fixture helpers
  • Share FFI STOPREQ fixture helpers
  • Deduplicate test helper counters
  • Refresh FFI direct string notes
  • Cover named ctype new cast waits
  • Share ctype rawref wait helper
  • Snapshot recorder VLA ctype sizing
  • Abort recorder on named ctype waits
  • Reject self stock benchmark baselines
  • Rename output assertion helpers
  • Tighten recursive JIT retention guard
  • Share GC root next-link setup
  • Cover after-main pending root cycles
  • Yield on non-futex ctype parser waits
  • Use shared sleep helper in table fixtures
  • Share C fixture sleep helper
  • Share GC2 worker owner helpers
  • Share STOPREQ helpers in OS and table waits
  • Share fresh STOPREQ helpers in CType and PRNG
  • Share GC root slot prepend helper
  • Share GC root chain prepend helper
  • Share safepoint helpers in threading waits
  • Share safepoint helpers in ffi callbacks
  • Share safepoint helpers in channels
  • Deduplicate table retire helpers
  • Share safepoint helpers in io library
  • Use shared safepoint helpers for native calls
  • Deduplicate native STOPREQ checks
  • Wrap Windows package loader in native state
  • Deduplicate platform CI smoke checks
  • Run Windows CI smoke through release harness
  • Cover grown arena-owned TNEW sweep
  • Mark arena-owned empty TNEW bodies for sweep
  • Enforce warning-clean M0 matrix
  • Clean no-JIT build warnings
  • Mark arena-owned FNEW bodies for sweep
  • Remove semantic GC root scan caps
  • Expose pending-root GC telemetry
  • Deduplicate closure and safepoint helpers
  • Expose GC hard-check stats
  • Fast-path x64 TSETS nil slots
  • Invalidate test build cache on source edits
  • Inline active-black traced FNEW allocation
  • Isolate filtered benchmark fixtures
  • Scan private table chains before shared newkey
  • Recheck table resize snapshots before allocation
  • Make strtab resize a single-bit claim
  • Elide active-black empty table root publish
  • Retire unused recursive return traces
  • Stabilize recursive JIT trace count probe
  • Document recursive return trace retention
  • Extract table resize array copy helper
  • Extract table resize hash copy helper
  • Hint pending roots only on stack transitions
  • Avoid empty pending-root flush exchanges
  • Apply Windows checkout NTFS override in CI
  • Allow Windows sparse checkout past NTFS guards

b1.0.9

b1.0.9 Pre-release
Pre-release

Choose a tag to compare

@Frityet Frityet released this 04 Jul 20:05
  • Stabilize GC2 JIT roots and FFI harness gates
  • Fix GC2 weak-key stability
  • Remove recursive JIT transcript guard
  • Skip ownership for no-op table resizes
  • Remove closed-upvalue JIT shape guard
  • Guard required main thread root scans
  • Let standalone active FNEW skip pending roots
  • Skip marked FNEW constructor barriers
  • Coalesce active table GC2 rescans
  • Document rejected string intern private path
  • Add private table new-key publication path
  • Make pre-owner table rehash waits L-aware
  • Document unsafe GC2 barrier filter
  • Fix x64 FNEW fallback L argument
  • Bound active GC2 automatic pacing
  • Decouple idle finalizer drain owner
  • Fix M7 ccall aggregate fixture env
  • Fix GC gray-list self cycles
  • Scrub stale arena bin heads
  • Narrow fresh-key GC barriers
  • Fix table FLOAD forwarding and GC-defer exits
  • Fix JIT flush full-GC active stack roots
  • Refill FNEW bump window from free runs
  • Fix GC2 legacy publication bridge holes
  • tab: batch pending-root flush for retire reclaim
  • tab: use L-aware waits for resize retries
  • docs: refresh x64 allocation fast path status
  • gc: skip empty pending root scans
  • docs: clarify table owner wait policy
  • x64: let empty tnew use active bump window

b1.0.8

b1.0.8 Pre-release
Pre-release

Choose a tag to compare

@Frityet Frityet released this 04 Jul 04:55
  • x64: guard primitive upvalue inline helpers
  • x64: inline primitive upvalue stores
  • x64: skip table barrier for non-gc stores

b1.0.7

b1.0.7 Pre-release
Pre-release

Choose a tag to compare

@Frityet Frityet released this 04 Jul 04:32
  • ffi: wait on ctype repr diagnostics

b1.0.6

b1.0.6 Pre-release
Pre-release

Choose a tag to compare

@Frityet Frityet released this 04 Jul 04:18
  • ffi: align istype rawref snapshots
  • ffi: validate ctype name miss snapshots
  • ffi: snapshot cdata source rawrefs in aggregate init

b1.0.5

b1.0.5 Pre-release
Pre-release

Choose a tag to compare

@Frityet Frityet released this 04 Jul 03:57
  • gc: keep arena reset at sweep boundary

b1.0.4

b1.0.4 Pre-release
Pre-release

Choose a tag to compare

@Frityet Frityet released this 04 Jul 03:05
  • tests: avoid pipe hangs in command capture
  • table: honor fresh stopreq during retry waits
  • ffi: share istype parser wait fallback
  • tests: force ctype growth without source anchors
  • threading: spin before channel park
  • docs: retire source guard artifacts
  • test: pin recursive jit trace stability
  • docs: replace source guards with invariants
  • test: cover shared pairs churn boundary
  • test: retire source text guard policy
  • jit: trace direct shared next under active mt
  • jit: predict next traversal types via helper snapshot
  • test: pin table traversal cursor helper contract
  • test: stabilize recursive jit and safepoint probes
  • docs: retire source-text guard language
  • gc: publish spawn roots without full collection
  • jit: inline immutable numeric fnew
  • jit: elide pre-activation loop polls
  • gc2: flush traces before worker activation
  • bench: split hash table write probes
  • docs: remove remaining source guard artifacts
  • docs: retire historical source inventories
  • jit: forward pre-mt tab meta across xpoll
  • docs: remove source guard terminology
  • docs: retire historical source guard wording
  • jit: skip nomm clear for tables without metatables
  • build: export stale trace helper for amalgam
  • gc: keep bump allocation across accounting flush
  • docs: retire source-text guard framing
  • gc: queue closed upvalue relinks per tg
  • docs: clarify no historical source checks
  • gc: batch-gate x64 hard assist checks
  • test: include weakfinjit resize stress in m5 aggregate
  • docs: remove remaining guard-check wording
  • jit: elide pre-mt href retiring guard
  • docs: retire historical source guard wording
  • docs: remove historical source guard artifacts
  • docs: align stale guard notes with behavior policy
  • test: make public-output assertions explicit
  • func: bump allocate local-cell CNEW upvalues
  • str: batch successful intern count accounting
  • docs: ban historical source guard suites
  • jit: pace local-cell CNEW as allocation
  • str: reserve string ids per thread group
  • test: narrow artifact assertion helpers
  • func: skip idle fresh FNEW edge barriers
  • func: skip primitive upvalue payload barriers
  • test: remove generic source guard hooks
  • jit: record no-upvalue FNEW bump
  • func: bump no-upvalue FNEW closures
  • tab: route exact empty tables through new0
  • tab: share empty-table bump fast path
  • func: link fresh upvalues after new closures
  • docs: remove source guard framing
  • func: batch generic one-upvalue FNEW roots
  • docs: retire historical source guards
  • test: remove source-shaped dump guards
  • test: stress string interning during GC
  • gc: claim string table during legacy sweep
  • test: pin KEYLOCK readers to no-wait path
  • docs: retire historical source guard wording
  • test: drop generated-shape JIT guards
  • docs: remove source-guard exceptions from notes
  • perf: fast-path interpreter numeric FNEW
  • test: remove source-shape guards
  • arena: summarize free-run bins for inline allocators
  • jit: inline numeric FNEW bump allocation on x64
  • test: decouple FNEW tracing from C fast counter
  • docs: remove remaining source-guard wording
  • jit: bump-allocate numeric FNEW pairs
  • docs: remove source-check guard framing
  • docs: remove source guard framing
  • tab: fast-path safe TSETM range stores
  • docs: remove source guard framing
  • jit: fast-path empty table allocation helper
  • test: cover L-aware table owner waits
  • docs: remove source guard remnants
  • str: drain tls-only active pins before resize
  • safepoint: avoid trace flush self-quiescence wait
  • docs: retire source guard language
  • gc: publish fnew closure pair as root chain
  • threading: avoid gcscan self-wait
  • test: capture child command status explicitly
  • jit: preserve numeric fnew upvalue identity
  • jit: trim same-trace numeric fnew calls
  • threading: bound join native wait slices
  • jit: preserve cget forl integer shape
  • docs: reject historical source guards
  • jit: direct pre-mt newref hash stores
  • jit: use direct array reads before mt
  • jit: elide key barrier for guarded href stores
  • docs: audit source predicate policy
  • notes: audit pre-mt fnew tracing policy
  • str: avoid redundant intern hash
  • buildvm: remove raw output mode
  • jit: direct primitive table stores before mt
  • docs: remove source guard wording
  • test active worker root gc stress
  • test heavy jit flush thread stress
  • test weak finalizer resize under jit
  • fix gc2 legacy bridge stability
  • notes: document source-invariant test policy audit
  • notes: update jit flush stress status
  • jit: publish gc object table stores through gc2
  • gc: mirror jit-native stack scan boundary
  • gc2: avoid jit-native frame walks during root scan
  • gc2: preserve string constants across traversal stress
  • tables: keep next keylock reads nonblocking
  • tests: rename cell-op artifact checks
  • stabilize trace flush retirement
  • docs: forbid source-text guard suites
  • notes: record JIT flush stress residual
  • Stabilize JIT flush trace retirement
  • Stabilize scoped JIT flush GC paths
  • notes: add recursive trace sample evidence
  • notes: capture current stability sweep
  • docs: replace source guard wording with invariant guidance
  • jit: route shared table stores while entering
  • func: snapshot legacy upvalues while entering
  • table: guard insert shifts while entering
  • tab: route clear through shared path while entering
  • tests: restore plain file enumeration helper
  • os: reject locale mutation while entering
  • gc: route entering explicit gc through gc2
  • tests: remove source-read harness guard
  • gc: gate pending-root fast path on entering
  • tests: harden source-read rejection
  • str: document cleanup-safe retry waits
  • tab: park no-state structural owner waits
  • ffi: broadcast parser token wakeups
  • docs: retire source-text guard references
  • jit: keep trace-local table stores direct under mt
  • docs: mark old source guards obsolete
  • tests: retire source guard harness paths

b1.0.11

b1.0.11 Pre-release
Pre-release

Choose a tag to compare

@Frityet Frityet released this 04 Jul 23:34
  • Fix native Windows CI checkout
  • Bypass table resize owner for private mutations
  • Fast-path private empty-anchor table inserts

b1.0.10

b1.0.10 Pre-release
Pre-release

Choose a tag to compare

@Frityet Frityet released this 04 Jul 21:40
  • Fix release gate stability regressions
  • Use freetop for private table chain inserts
  • Skip inactive GC2 key barrier checks
  • Seed GC2 pause from legacy GC control

b1.0.3

b1.0.3 Pre-release
Pre-release

Choose a tag to compare

@Frityet Frityet released this 02 Jul 23:08
  • release: use host luajit for cross-target checks
  • tests: remove source-shape guard checks
  • jit: make keyed table barriers valid IR
  • tab: follow retiring array stores to successor
  • gc2: gate retired reclaim against root scans
  • tests: cover x64 iterator retiring arrays
  • x64: guard TGET over retiring arrays
  • debug: validate trace PCs against live slots
  • x64: validate saved stitch traces
  • x86: guard assembler tail trace links
  • tests: stabilize recursive trace guard
  • x64: require live traces for JLOOP entry
  • jit: require live traces for startins readers
  • jit: guard traceref vector bounds
  • jit: guard jit.util trace readers
  • jit: validate trace-exit JLOOP identity
  • bcdump: validate stale trace unpatching
  • jit: guard C-side stale trace slots
  • jit: guard stale x64 JLOOP trace slots
  • tab: use futex for structural owner waits
  • jit: guard recursive call-unroll unlink
  • x64: inline empty table allocation in interpreter
  • gc: flush pending roots when attaching tg
  • tests: require stable ffi typeinfo rollback reads
  • ffi: wait for stable typeinfo snapshots
  • tests: autodetect stock luajit benchmark binary
  • gc2: avoid strong key barriers for weak tables
  • stability: fix publication, tmpbuf, and jit barriers
  • vm: bypass array setter for nil slots without metatable
  • jit: gate gc2 table barriers on tbar entry
  • safepoint: poll pending fresh stopreqs
  • ffi: poll post-native stopreq requests
  • jit: record threading cpucount
  • notes: record post JIT boundary stability sweep
  • jit: narrow threading NYI hard stops
  • stability: preserve MT stack frames and FINREG roots
  • threading: inherit caller env for spawned states
  • tests: restore default build after profile switches
  • tests: stabilize gc2 alloc-account fixture
  • gc: gate root publication marks
  • gc: atomically publish pacing controls
  • jit: guard recursive trace stability
  • jit: claim setmode function targets
  • api: claim lua_isyieldable reads
  • api: claim WRAPCFUNC stack reads
  • api: release-publish C wrapper callback
  • api: atomically publish panic callback
  • api: claim luaL_where location snapshots
  • api: claim aux result tuple pushes
  • api: claim ownerless load and dump paths
  • api: claim ownerless metatable creation
  • api: claim ownerless upvalue joins
  • api: claim ownerless object setters
  • api: claim ownerless raw setters
  • api: claim ownerless formatted string pushes
  • api: claim ownerless C closure pushes
  • tests: avoid active mark stack publication in weak fixtures
  • api: claim ownerless thread creation
  • api: claim ownerless userdata creation
  • api: claim ownerless table creation
  • api: claim ownerless lightuserdata pushes
  • api: claim ownerless string pushes
  • api: claim ownerless primitive pushes
  • api: claim ownerless stack copy ops
  • api: claim ownerless string conversions
  • api: claim ownerless metafield lookup
  • api: claim ownerless userdata checks
  • api: claim ownerless upvalue introspection
  • api: claim ownerless raw object getters
  • api: claim ownerless auxiliary checks
  • api: claim ownerless stack getters
  • api: claim ownerless stack operations
  • api: claim ownerless metamethod entry
  • api: claim ownerless states for VM entry
  • debug: avoid foreign-state cpcall crashes
  • threading: clean up owner claims on errors
  • ffi: resolve finreg claims across errors
  • jit: close mt activation trace window
  • ffi: wrap windows clib lookups as native
  • tests: parameterize table resize stress timeout
  • str: avoid resize claim leak on OOM
  • jit: specialize numeric one-upvalue FNEW
  • stability: harden tg null fallback
  • test: cover tls-only pending root flush
  • test: serialize runner builds per worktree
  • jit: forward numeric uloads across pre-mt xpoll
  • jit: guard same-trace fnew calls by prototype
  • jit: shorten x64 exittab side exits
  • jit: use empty-table allocation helper
  • jit: inline primitive table stores
  • notes: record stability sweep
  • gc: fix active collect liveness
  • gc: preserve finalizer step and first-spawn flush
  • ci: run platform smoke on native hosts
  • vm: restore single-thread tset fast stores
  • tab: avoid yielding on read keylock retry
  • gc: batch trace hard assists
  • jit: inline numeric fnew slot sync
  • jit: skip duplicate traced fnew gc check
  • types: tighten threading annotations
  • jit: narrow xload poll aliasing
  • jit: inline numeric upvalue stores
  • jit: restore single-thread table stores
  • gc2: batch mutator pacing assists
  • safepoint: wake late poll waiters
  • package: wake claim waiters
  • thr: wake state owner waiters
  • tab: yield structural owner retries
  • thr: reduce control path sleep backoff
  • thr: reuse retry yield helper
  • ffi: yield runtime retry waits
  • jit: yield dispatch retry waits
  • gc: yield internal peer retry waits
  • str: yield string table retry waits
  • tab: yield table retry waits
  • tests: align ffi gc trace expectation
  • state: normalize internal arena close accounting
  • gc: publish userdata through pending roots
  • vm: inline x64 GC allocation predicate
  • vm: restore x64 string table store fast path
  • dynasm: teach x86 cmpxchg
  • jit: name x86 lock cmpxchg emitter
  • profile: drop nested timer callbacks
  • str: store active depth without xchg
  • profile: resume callback coroutine on caller tg
  • ci: raise stock bench scale
  • tab: park struct owner waiters
  • m6: fence shared next before keyindex
  • gc: avoid root CAS before MT activation
  • m5: make table structural owner per-table
  • Roll back unsafe x64 TSETB inline CAS
  • Restore guarded x64 TSETB CAS fast path
  • Batch fresh GC root publication per TG
  • fix release publish repository context