|
Classes |
| struct | keyword |
| struct | instr |
Defines |
| #define | I_HASARG 1 |
| #define | I_POINTER 2 |
| #define | I_JUMP 4 |
| #define | I__DATA 8 |
| #define | I_HASARG2 16 |
| #define | I_HASPOINTER 32 |
| #define | I_BRANCH 128 |
| #define | I_UPDATE_SP 256 |
| #define | I_UPDATE_FP 512 |
| #define | I_UPDATE_M_SP 1024 |
| #define | I_TWO_ARGS (I_HASARG | I_HASARG2) |
| #define | I_DATA (I_HASARG | I__DATA) |
| #define | I_ISPOINTER (I_HASARG | I_POINTER) |
| #define | I_ISJUMP (I_JUMP) |
| #define | I_ISJUMPARG (I_HASARG | I_JUMP) |
| #define | I_ISJUMPARGS (I_TWO_ARGS | I_JUMP) |
| #define | I_ISPTRJUMP (I_HASARG | I_POINTER | I_JUMP) |
| #define | I_ISPTRJUMPARG (I_HASARG | I_HASPOINTER | I_JUMP) |
| #define | I_ISPTRJUMPARGS (I_TWO_ARGS | I_HASPOINTER | I_JUMP) |
| #define | I_ISBRANCH (I_HASARG | I_POINTER | I_JUMP | I_BRANCH) |
| #define | I_ISBRANCHARG (I_HASARG | I_HASPOINTER | I_JUMP | I_BRANCH) |
| #define | I_ISBRANCHARGS (I_TWO_ARGS | I_HASPOINTER | I_JUMP | I_BRANCH) |
| #define | I_IS_MASK (I_TWO_ARGS | I_POINTER | I_HASPOINTER | I_JUMP) |
| #define | I_UPDATE_ALL (I_UPDATE_SP | I_UPDATE_FP | I_UPDATE_M_SP) |
| #define | ADD_COMPILED(X) |
| #define | ADD_RUNNED(X) |
| #define | OPCODE0(X, Y, F) X, |
| #define | OPCODE1(X, Y, F) X, |
| #define | OPCODE2(X, Y, F) X, |
| #define | OPCODE0_TAIL(X, Y, F) X, |
| #define | OPCODE1_TAIL(X, Y, F) X, |
| #define | OPCODE2_TAIL(X, Y, F) X, |
| #define | OPCODE0_JUMP(X, Y, F) X, |
| #define | OPCODE1_JUMP(X, Y, F) X, |
| #define | OPCODE2_JUMP(X, Y, F) X, |
| #define | OPCODE0_TAILJUMP(X, Y, F) X, |
| #define | OPCODE1_TAILJUMP(X, Y, F) X, |
| #define | OPCODE2_TAILJUMP(X, Y, F) X, |
| #define | OPCODE0_PTRJUMP(X, Y, F) X, |
| #define | OPCODE1_PTRJUMP(X, Y, F) X, |
| #define | OPCODE2_PTRJUMP(X, Y, F) X, |
| #define | OPCODE0_TAILPTRJUMP(X, Y, F) X, |
| #define | OPCODE1_TAILPTRJUMP(X, Y, F) X, |
| #define | OPCODE2_TAILPTRJUMP(X, Y, F) X, |
| #define | OPCODE0_RETURN(X, Y, F) X, |
| #define | OPCODE1_RETURN(X, Y, F) X, |
| #define | OPCODE2_RETURN(X, Y, F) X, |
| #define | OPCODE0_TAILRETURN(X, Y, F) X, |
| #define | OPCODE1_TAILRETURN(X, Y, F) X, |
| #define | OPCODE2_TAILRETURN(X, Y, F) X, |
| #define | OPCODE0_BRANCH(X, Y, F) X, |
| #define | OPCODE1_BRANCH(X, Y, F) X, |
| #define | OPCODE2_BRANCH(X, Y, F) X, |
| #define | OPCODE0_TAILBRANCH(X, Y, F) X, |
| #define | OPCODE1_TAILBRANCH(X, Y, F) X, |
| #define | OPCODE2_TAILBRANCH(X, Y, F) X, |
| #define | OPCODE0_ALIAS(X, Y, F, A) X, |
| #define | OPCODE1_ALIAS(X, Y, F, A) X, |
| #define | OPCODE2_ALIAS(X, Y, F, A) X, |
| #define | get_opcode_name(n) get_f_name(n + F_OFFSET) |
Enumerations |
| enum | Pike_opcodes {
F_OFFSET = 257,
F_PREFIX_256,
F_PREFIX_512,
F_PREFIX_768,
F_PREFIX_1024,
F_PREFIX_CHARX256,
F_PREFIX_WORDX256,
F_PREFIX_24BITX256,
F_PREFIX2_256,
F_PREFIX2_512,
F_PREFIX2_768,
F_PREFIX2_1024,
F_PREFIX2_CHARX256,
F_PREFIX2_WORDX256,
F_PREFIX2_24BITX256,
F_MARK_AND_STRING,
string,
F_STRING,
string,
F_MARK_AND_GLOBAL,
global,
F_GLOBAL,
global,
F_MARK_AND_EXTERNAL,
external,
F_EXTERNAL,
external,
F_MARK2,
mark,
F_SYNCH_MARK,
mark,
F_MARK,
mark,
F_CLEANUP_SYNCH_MARK,
mark,
F_POP_SYNCH_MARK,
mark,
F_BRANCH_IF_NOT_LOCAL_ARROW,
x,
F_BRANCH_WHEN_ZERO,
zero,
F_CALL_LFUN,
lfun,
F_CALL_LFUN_AND_POP,
pop,
F_CALL_LFUN_AND_RETURN,
return,
F_MARK_CALL_LFUN,
mark,
lfun,
F_MARK_CALL_LFUN_AND_POP,
mark,
pop,
F_MARK_CALL_LFUN_AND_RETURN,
mark,
return,
F_APPLY,
apply,
F_APPLY_AND_POP,
pop,
F_APPLY_AND_RETURN,
return,
F_MARK_APPLY,
mark,
apply,
F_MARK_APPLY_AND_POP,
mark,
pop,
F_MARK_APPLY_AND_RETURN,
mark,
return,
F_CALL_FUNCTION,
function,
F_CALL_FUNCTION_AND_POP,
pop,
F_CALL_FUNCTION_AND_RETURN,
return,
F_COND_RECUR,
overloaded,
F_RECUR,
recur,
F_ENTRY,
F_MAX_OPCODE,
F_ADD_EQ,
F_AND_EQ,
F_ARG_LIST,
F_COMMA_EXPR,
F_BREAK,
F_CASE,
F_CASE_RANGE,
F_CONTINUE,
F_DEFAULT,
F_DIV_EQ,
F_DO,
F_EFUN_CALL,
F_FOR,
F_IDENTIFIER,
F_LSH_EQ,
F_LVALUE_LIST,
F_MOD_EQ,
F_MULT_EQ,
F_OR_EQ,
F_RSH_EQ,
F_SUB_EQ,
F_VAL_LVAL,
F_XOR_EQ,
F_NOP,
F_RANGE_FROM_BEG,
F_RANGE_FROM_END,
F_RANGE_OPEN,
F_ALIGN,
F_POINTER,
F_LABEL,
F_NORMAL_STMT_LABEL,
F_CUSTOM_STMT_LABEL,
F_DATA,
F_START_FUNCTION,
F_BYTE,
F_NOTREACHED,
F_AUTO_MAP_MARKER,
F_AUTO_MAP,
F_VOLATILE_RETURN,
F_MAX_INSTR,
F_FILENAME,
F_LINE
} |
Functions |
| const char * | low_get_f_name (int n, struct program *p) |
| const char * | get_f_name (int n) |
| const char * | get_token_name (int n) |
| void | init_opcodes (void) |
| void | exit_opcodes (void) |
Variables |
| instr | instrs [] |