mirror of
https://github.com/luau-lang/luau.git
synced 2025-04-05 11:20:54 +01:00
* Added a limit on how many instructions the Compiler can safely produce (reported by @TheGreatSageEqualToHeaven) C++ API Changes: * With work started on read-only and write-only properties, `Property::type` member variable has been replaced with `TypeId type()` and `setType(TypeId)` functions. * New `LazyType` unwrap callback now has a `void` return type, all that's required from the callback is to write into `unwrapped` field. In our work on the new type solver, the following issues were fixed: * Work has started to support https://github.com/Roblox/luau/pull/77 and https://github.com/Roblox/luau/pull/79 * Refinements are no longer applied on l-values, removing some false-positive errors * Improved overload resolution against expected result type * `Frontend::prepareModuleScope` now works in the new solver * Cofinite strings are now comparable And these are the changes in native code generation (JIT): * Fixed MIN_NUM and MAX_NUM constant fold when one of the arguments is NaN * Added constant folding for number conversions and bit operations * Value spilling and rematerialization is now supported on arm64 * Improved FASTCALL2K IR generation to support second argument constant * Added value numbering and load/store propagation optimizations * Added STORE_VECTOR on arm64, completing the IR lowering on this target |
||
---|---|---|
.. | ||
AssemblyBuilderA64.cpp | ||
AssemblyBuilderX64.cpp | ||
BitUtils.h | ||
ByteUtils.h | ||
CodeAllocator.cpp | ||
CodeBlockUnwind.cpp | ||
CodeGen.cpp | ||
CodeGenA64.cpp | ||
CodeGenA64.h | ||
CodeGenUtils.cpp | ||
CodeGenUtils.h | ||
CodeGenX64.cpp | ||
CodeGenX64.h | ||
CustomExecUtils.h | ||
EmitBuiltinsX64.cpp | ||
EmitBuiltinsX64.h | ||
EmitCommon.h | ||
EmitCommonA64.h | ||
EmitCommonX64.cpp | ||
EmitCommonX64.h | ||
EmitInstructionX64.cpp | ||
EmitInstructionX64.h | ||
Fallbacks.cpp | ||
Fallbacks.h | ||
FallbacksProlog.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 | ||
NativeState.cpp | ||
NativeState.h | ||
OptimizeConstProp.cpp | ||
OptimizeFinalX64.cpp | ||
UnwindBuilderDwarf2.cpp | ||
UnwindBuilderWin.cpp |