Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync to upstream/release/600 #1076

Merged
merged 193 commits into from Oct 21, 2023
Merged

Sync to upstream/release/600 #1076

merged 193 commits into from Oct 21, 2023

Conversation

Vighnesh-V
Copy link
Collaborator

@Vighnesh-V Vighnesh-V commented Oct 20, 2023

What's Changed

  • Improve readability of unions and intersections by limiting the number of elements of those types that can be presented on a single line (gated under FFlag::LuauToStringSimpleCompositeTypesSingleLine)
  • Adds a new option to the compiler --record-stats to record and output compilation statistics
  • if...then...else expressions are now optimized into AND/OR form when possible.

VM

  • Add a new buffer type to Luau based on the buffer RFC and additional C API functions to work with it; this release does not include the library.
  • Internal C API to work with string buffers has been updated to align with Lua version more closely

Native Codegen

  • Added support for new X64 instruction (rev) and new A64 instruction (bswap) in the assembler
  • Simplified the way numerical loop condition is translated to IR

New Type Solver

  • Operator inference now handled by type families
  • Created a new system called Type Paths to explain why subtyping tests fail in order to improve the quality of error messages.
  • Systematic changes to implement Data Flow analysis in the new solver (Breadcrumb removed and replaced with RefinementKey)

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: Aviral Goel agoel@roblox.com
Co-authored-by: Lily Brown lbrown@roblox.com
Co-authored-by: Vighnesh Vijay vvijay@roblox.com
Co-authored-by: Vyacheslav Egorov vegorov@roblox.com

@Vighnesh-V Vighnesh-V merged commit fd6250c into master Oct 21, 2023
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants