1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// 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
{
struct IrBuilder;
struct IrOp;
enum class BuiltinImplType
{
None,
UsesFallback, // Uses fallback for unsupported cases
Full, // Is either implemented in full, or exits to VM
};
struct BuiltinImplResult
{
BuiltinImplType type;
int actualResultCount;
};
BuiltinImplResult translateBuiltin(
IrBuilder& build,
int bfid,
int ra,
int arg,
IrOp args,
IrOp arg3,
int nparams,
int nresults,
IrOp fallback,
int pcpos
);
} // namespace CodeGen
} // namespace Luau