mirror of
https://github.com/luau-lang/luau.git
synced 2025-05-04 10:33:46 +01:00
* Reoptimized math.min/max/bit32 builtins assuming at least 2 arguments are used (1-2% lift on some benchmarks) * Type errors that mention function types no longer have redundant parenthesis around return type * Luau REPL now supports --compile=remarks which displays the source code with optimization remarks embedded as comments * Builtin calls are slightly faster when called with 1-2 arguments (~1% improvement in some benchmarks)
28 lines
603 B
C++
28 lines
603 B
C++
// This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details
|
|
#pragma once
|
|
|
|
namespace Luau
|
|
{
|
|
namespace CodeGen
|
|
{
|
|
|
|
class AssemblyBuilderX64;
|
|
struct Label;
|
|
struct OperandX64;
|
|
|
|
enum class BuiltinImplType
|
|
{
|
|
None,
|
|
UsesFallback, // Uses fallback for unsupported cases
|
|
};
|
|
|
|
struct BuiltinImplResult
|
|
{
|
|
BuiltinImplType type;
|
|
int actualResultCount;
|
|
};
|
|
|
|
BuiltinImplResult emitBuiltin(AssemblyBuilderX64& build, int bfid, int nparams, int ra, int arg, OperandX64 args, int nresults, Label& fallback);
|
|
|
|
} // namespace CodeGen
|
|
} // namespace Luau
|