luau/bench
Andy Friesen 36e0e64715
Sync to upstream/release/598 (#1063)
* Include `windows.h` rather than `Windows.h` to make things compile on
MinGW.
* Custom implementation of timegm/os.time for all platforms
* Disable builtin constant folding when getfenv/setfenv are used
* Fixes https://github.com/Roblox/luau/issues/1042
* Fixes https://github.com/Roblox/luau/issues/1043

New Type Checker

* Initial work toward type states.
* Rework most overloadable operators to use type families.
* Initial work toward our new nonstrict mode.


Native Codegen

* Fix native code generation for dead loops
* Annotate top-level functions as cold
* Slightly smaller/faster x64 Luau calls
* emitInstCall used to not set savedpc itself, but now it does for
consistency with all other implementations
* Implement cmov support for X64
* Fix assertion in luau-compile when module is empty
* Optimize A64 calls at some code size cost
* Inline constant array index offset into the load/store instruction
* Increase x64 spill slots from 5 to 13

---------

Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
Co-authored-by: Vyacheslav Egorov <vegorov@roblox.com>
Co-authored-by: Lily Brown <lbrown@roblox.com>
Co-authored-by: Aaron Weiss <aaronweiss@roblox.com>
Co-authored-by: Alexander McCord <amccord@roblox.com>
2023-10-06 12:02:32 -07:00
..
gc Sync to upstream/release/550 (#723) 2022-10-21 10:54:01 -07:00
micro_tests Sync to upstream/release/593 (#1024) 2023-09-01 10:58:27 -07:00
other Sync to upstream/release/598 (#1063) 2023-10-06 12:02:32 -07:00
tests Sync to upstream/release/576 (#928) 2023-05-12 10:50:47 -07:00
bench_support.lua Sync to upstream/release/581 (#958) 2023-06-16 10:35:18 -07:00
bench.py Sync to upstream/release/581 (#958) 2023-06-16 10:35:18 -07:00
color.py Sync to upstream/release/501 (#20) 2021-11-01 14:52:34 -07:00
influxbench.py Sync to upstream/release/540 (#635) 2022-08-11 14:01:33 -07:00
install.bat Sync to upstream/release/501 (#20) 2021-11-01 14:52:34 -07:00
install.sh Sync to upstream/release/501 (#20) 2021-11-01 14:52:34 -07:00
measure_time.py Added multi-os runners for benchmark & implemented luau analyze (#542) 2022-06-24 09:46:29 -07:00
tabulate.py Sync to upstream/release/593 (#1024) 2023-09-01 10:58:27 -07:00