OrcCompiler

OrcCompiler — Compile Orc programs

Functions

Types and Values

Description

OrcCompiler is the object used to convert Orc programs contained in an OrcProgram object into assembly code and object code.

The OrcCompileResult enum is used to indicate whether or not a compilation attempt was successful or not. The macros ORC_COMPILE_RESULT_IS_SUCCESSFUL() and ORC_COMPILE_RESULT_IS_FATAL() should be used instead of checking values directly.

When a program is compiled, the compiler calls the functions contained in various OrcRule structures. These functions generate assembly and object instructions by calling ORC_ASM_CODE() or functions that use ORC_ASM_CODE() internally.

Functions

ORC_COMPILER_ERROR()

#define             ORC_COMPILER_ERROR(compiler, ...)

ORC_COMPILE_RESULT_IS_FATAL()

#define ORC_COMPILE_RESULT_IS_FATAL(x) ((x) >= 0x200)

ORC_COMPILE_RESULT_IS_SUCCESSFUL()

#define ORC_COMPILE_RESULT_IS_SUCCESSFUL(x) ((x) < 0x100)

ORC_ASM_CODE()

#define ORC_ASM_CODE(compiler,...) orc_compiler_append_code(compiler, __VA_ARGS__)

Types and Values

enum OrcCompileResult

Members

ORC_COMPILE_RESULT_OK

   

ORC_COMPILE_RESULT_UNKNOWN_COMPILE

   

ORC_COMPILE_RESULT_MISSING_RULE

   

ORC_COMPILE_RESULT_UNKNOWN_PARSE

   

ORC_COMPILE_RESULT_PARSE

   

ORC_COMPILE_RESULT_VARIABLE

   

OrcCompiler

typedef struct {
} OrcCompiler;

The OrcCompiler structure has no public members


OrcConstant

typedef struct {
} OrcConstant;

The OrcConstant structure has no public members


ORC_ENABLE_ASM_CODE

#define ORC_ENABLE_ASM_CODE