luau/Compiler/src
vegorov-rbx 271c509046
Sync to upstream/release/578 (#939)
* Fixed gcc warning about uninitialized `std::optional`
* Fixed inlining of functions when they are used to compute their own
arguments

In the new type solver:
* Type families that are not part of a function signature cannot be
resolved at instantiation time and will now produce an error. This will
be relaxed in the future when we get constraint clauses on function
signatures (internally)
* `never` type is now comparable
* Improved typechecking of `for..in` statements
* Fixed checks for number type in `Add` type family
* Performance was improved, with particularly large gains on large
projects

And in native code generation (jit):
* We eliminated the call instruction overhead when native code support
is enabled in the VM
* Small optimizations to arm64 lowering
* Reworked LOP_GETIMPORT handling to reduce assembly code size
* Fixed non-deterministic binary output
* Fixed bad code generation caused by incorrect SSA to VM register links
invalidation

---------

Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
Co-authored-by: Andy Friesen <afriesen@roblox.com>
2023-05-25 14:36:34 -07:00
..
BuiltinFolding.cpp Sync to upstream/release/541 (#644) 2022-08-18 14:32:08 -07:00
BuiltinFolding.h Sync to upstream/release/536 (#592) 2022-07-14 15:52:26 -07:00
Builtins.cpp Sync to upstream/release/578 (#939) 2023-05-25 14:36:34 -07:00
Builtins.h Sync to upstream/release/566 (#853) 2023-03-03 12:21:14 -08:00
BytecodeBuilder.cpp Sync to upstream/release/575 (#919) 2023-05-05 14:52:49 -07:00
Compiler.cpp Sync to upstream/release/578 (#939) 2023-05-25 14:36:34 -07:00
ConstantFolding.cpp Sync to upstream/release/546 (#681) 2022-09-23 12:17:25 -07:00
ConstantFolding.h Sync to upstream/release/536 (#592) 2022-07-14 15:52:26 -07:00
CostModel.cpp String interpolation (#614) 2022-08-24 12:01:00 -07:00
CostModel.h Sync to upstream/release/536 (#592) 2022-07-14 15:52:26 -07:00
lcode.cpp Sync to upstream/release/505 (#216) 2021-11-19 08:10:07 -08:00
TableShape.cpp Sync to upstream/release/513 (#340) 2022-02-04 08:45:57 -08:00
TableShape.h Sync to upstream/release/510 (#313) 2022-01-14 08:20:09 -08:00
ValueTracking.cpp Sync to upstream/release/510 (#313) 2022-01-14 08:20:09 -08:00
ValueTracking.h Sync to upstream/release/510 (#313) 2022-01-14 08:20:09 -08:00