mirror of
https://github.com/luau-lang/luau.git
synced 2025-04-05 11:20:54 +01:00
### What's new? * Removed new `table.move` optimization because of correctness problems. ### New Type Solver * Improved error messages for type families to describe what's wrong in more detail, and ideally without using the term `type family` at all. * Change `boolean` and `string` singletons in type checking to report errors to the user when they've gotten an impossible type (indicating a type error from their context). * Split debugging flags for type family reduction (`DebugLuauLogTypeFamilies`) from general solver logging (`DebugLuauLogSolver`). * Improve type simplification to support patterns like `(number | string) | (string | number)` becoming `number | string`. ### Native Code Generation * Use templated `luaV_doarith` to speedup vector operation fallbacks. * Various small changes to better support arm64 on Windows. ### Internal Contributors Co-authored-by: Aaron Weiss <aaronweiss@roblox.com> Co-authored-by: Andy Friesen <afriesen@roblox.com> Co-authored-by: James McNellis <jmcnellis@roblox.com> Co-authored-by: Vighnesh Vijay <vvijay@roblox.com> Co-authored-by: Vyacheslav Egorov <vegorov@roblox.com> --------- Co-authored-by: Alexander McCord <amccord@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 |