ArkScript
A small, fast, functional and scripting language for video games
Ark::internal::IR Namespace Reference

Classes

class  Entity
 

Typedefs

using label_t = std::size_t
 
using Block = std::vector<Entity>
 

Enumerations

enum class  Kind {
  Label , Goto , GotoIfTrue , GotoIfFalse ,
  Opcode , Opcode2Args
}
 

Variables

constexpr uint16_t MaxValueForDualArg = 0x0fff
 The maximum value an argument can have when an IR entity has two arguments.
 

Typedef Documentation

◆ Block

using Ark::internal::IR::Block = std::vector<Entity>

Definition at line 73 of file Entity.hpp.

◆ label_t

using Ark::internal::IR::label_t = std::size_t

Definition at line 33 of file Entity.hpp.

Enumeration Type Documentation

◆ Kind

enum class Ark::internal::IR::Kind
strong
Enumerator
Label 
Goto 
GotoIfTrue 
GotoIfFalse 
Opcode 
Opcode2Args 

Definition at line 23 of file Entity.hpp.

Variable Documentation

◆ MaxValueForDualArg

uint16_t Ark::internal::IR::MaxValueForDualArg = 0x0fff
constexpr

The maximum value an argument can have when an IR entity has two arguments.

Definition at line 36 of file Entity.hpp.

Referenced by Ark::internal::IROptimizer::compactEntities(), Ark::internal::IROptimizer::compactEntities(), and Ark::internal::IROptimizer::isPositiveNumberInlinable().