mirror of
https://github.com/luau-lang/luau.git
synced 2025-04-05 03:10:54 +01:00
### What's new? * Remove a case of unsound `table.move` optimization * Add Luau stack slot reservations that were missing in REPL (fixes #1273) ### New Type Solver * Assignments have been completely reworked to fix a case of cyclic constraint dependency * When indexing, if the fresh type's upper bound already contains a compatible indexer, do not add another upper bound * Distribute type arguments over all type families sans `eq`, `keyof`, `rawkeyof`, and other internal type families * Fix a case where `buffers` component weren't read in two places (fixes #1267) * Fix a case where things that constitutes a strong ref were slightly incorrect * Fix a case where constraint dependencies weren't setup wrt `for ... in` statement ### Native Codegen * Fix an optimization that splits TValue store only when its value and its tag are compatible * Implement a system to plug additional type information for custom host userdata types --- ### Internal Contributors Co-authored-by: Aaron Weiss <aaronweiss@roblox.com> Co-authored-by: Alexander McCord <amccord@roblox.com> Co-authored-by: Andy Friesen <afriesen@roblox.com> Co-authored-by: Vighnesh Vijay <vvijay@roblox.com> Co-authored-by: Vyacheslav Egorov <vegorov@roblox.com> --------- Co-authored-by: Aaron Weiss <aaronweiss@roblox.com> Co-authored-by: Andy Friesen <afriesen@roblox.com> Co-authored-by: Vighnesh <vvijay@roblox.com> Co-authored-by: Aviral Goel <agoel@roblox.com> Co-authored-by: David Cope <dcope@roblox.com> Co-authored-by: Lily Brown <lbrown@roblox.com> Co-authored-by: Vyacheslav Egorov <vegorov@roblox.com> |
||
---|---|---|
.. | ||
AssemblyBuilderA64.cpp | ||
AssemblyBuilderX64.cpp | ||
BitUtils.h | ||
BytecodeAnalysis.cpp | ||
BytecodeSummary.cpp | ||
ByteUtils.h | ||
CodeAllocator.cpp | ||
CodeBlockUnwind.cpp | ||
CodeGen.cpp | ||
CodeGenA64.cpp | ||
CodeGenA64.h | ||
CodeGenAssembly.cpp | ||
CodeGenContext.cpp | ||
CodeGenContext.h | ||
CodeGenLower.h | ||
CodeGenUtils.cpp | ||
CodeGenUtils.h | ||
CodeGenX64.cpp | ||
CodeGenX64.h | ||
EmitBuiltinsX64.cpp | ||
EmitBuiltinsX64.h | ||
EmitCommon.h | ||
EmitCommonA64.h | ||
EmitCommonX64.cpp | ||
EmitCommonX64.h | ||
EmitInstructionX64.cpp | ||
EmitInstructionX64.h | ||
IrAnalysis.cpp | ||
IrBuilder.cpp | ||
IrCallWrapperX64.cpp | ||
IrDump.cpp | ||
IrLoweringA64.cpp | ||
IrLoweringA64.h | ||
IrLoweringX64.cpp | ||
IrLoweringX64.h | ||
IrRegAllocA64.cpp | ||
IrRegAllocA64.h | ||
IrRegAllocX64.cpp | ||
IrTranslateBuiltins.cpp | ||
IrTranslateBuiltins.h | ||
IrTranslation.cpp | ||
IrTranslation.h | ||
IrUtils.cpp | ||
IrValueLocationTracking.cpp | ||
IrValueLocationTracking.h | ||
lcodegen.cpp | ||
NativeProtoExecData.cpp | ||
NativeState.cpp | ||
NativeState.h | ||
OptimizeConstProp.cpp | ||
OptimizeDeadStore.cpp | ||
OptimizeFinalX64.cpp | ||
SharedCodeAllocator.cpp | ||
UnwindBuilderDwarf2.cpp | ||
UnwindBuilderWin.cpp |