inst_xsb.h File Reference


Defines

#define A   1
#define V   2
#define R   3
#define S   4
#define C   5
#define L   6
#define G   7
#define N   8
#define I   9
#define P   10
#define X   11
#define PP   12
#define PPP   13
#define PPR   14
#define T   15
#define RRR   16
#define F   17
#define B   18
#define PRR   19
#define inst_name(C)   ((char *)inst_table[C][0])
#define cell_opcode(C)   (*(pb)(C))
#define cell_opregaddr1(C)   (rreg+((pb)(cell))[1])
#define cell_opregaddr2(C)   (rreg+((pb)(cell))[2])
#define cell_opregaddr3(C)   (rreg+((pb)(cell))[3])
#define cell_opregaddrn(C, N)   (rreg+((pb)(cell))[N])
#define cell_opreg1(C)   (cell(opregaddr1(C)))
#define cell_opreg2(C)   (cell(opregaddr2(C)))
#define cell_opreg3(C)   (cell(opregaddr3(C)))
#define cell_opregn(C)   (cell(opregaddrn(C,N)))
#define cell_operand1(C)   (((pb)(C))[1])
#define cell_operand2(C)   (((pb)(C))[2])
#define cell_operand3(C)   (((pb)(C))[3])
#define cell_operandn(C, N)   (((pb)(C))[N])
#define BUILTIN_TBL_SZ   256
#define getpvar   0x00
#define getpval   0x01
#define getstrv   0x02
#define gettval   0x03
#define getcon   0x04
#define getnil   0x05
#define getstr   0x06
#define getlist   0x07
#define unipvar   0x08
#define unipval   0x09
#define unitvar   0x0a
#define unitval   0x0b
#define unicon   0x0c
#define uninil   0x0d
#define getnumcon   0x0e
#define putnumcon   0x0f
#define putpvar   0x10
#define putpval   0x11
#define puttvar   0x12
#define putstrv   0x13
#define putcon   0x14
#define putnil   0x15
#define putstr   0x16
#define putlist   0x17
#define bldpvar   0x18
#define bldpval   0x19
#define bldtvar   0x1a
#define bldtval   0x1b
#define bldcon   0x1c
#define bldnil   0x1d
#define uninumcon   0x1e
#define bldnumcon   0x1f
#define no_inst   0x20
#define uniavar   0x21
#define bldavar   0x22
#define getattv   0x30
#define putattv   0x31
#define getlist_tvar_tvar   0x48
#define trie_no_cp_attv   0x5c
#define trie_trust_attv   0x5d
#define trie_try_attv   0x5e
#define trie_retry_attv   0x5f
#define trie_no_cp_str   0x60
#define trie_trust_str   0x61
#define trie_try_str   0x62
#define trie_retry_str   0x63
#define trie_no_cp_list   0x64
#define trie_trust_list   0x65
#define trie_try_list   0x66
#define trie_retry_list   0x67
#define trie_no_cp_var   0x68
#define trie_trust_var   0x69
#define trie_try_var   0x6a
#define trie_retry_var   0x6b
#define trie_no_cp_val   0x6c
#define trie_trust_val   0x6d
#define trie_try_val   0x6e
#define trie_retry_val   0x6f
#define trie_no_cp_numcon   0x70
#define trie_trust_numcon   0x71
#define trie_try_numcon   0x72
#define trie_retry_numcon   0x73
#define trie_no_cp_numcon_succ   0x74
#define trie_trust_numcon_succ   0x75
#define trie_try_numcon_succ   0x76
#define trie_retry_numcon_succ   0x77
#define trie_proceed   0x78
#define hash_opcode   0x79
#define hash_handle   0x7a
#define trie_assert_inst   0x7c
#define trie_root   0x7d
#define trie_no_cp_fail   0x90
#define trie_trust_fail   0x91
#define trie_try_fail   0x92
#define trie_retry_fail   0x93
#define trie_fail_unlock   0x94
#define getfloat   0x80
#define putfloat   0x81
#define unifloat   0x82
#define bldfloat   0x83
#define dynfail   0x9e
#define dyntrymeelse   0x9f
#define trymeelse   0xa0
#define retrymeelse   0xa1
#define trustmeelsefail   0xa2
#define try   0xa3
#define retry   0xa4
#define trust   0xa5
#define getpbreg   0xa6
#define gettbreg   0xa7
#define putpbreg   0xa8
#define puttbreg   0xa9
#define jumptbreg   0xaa
#define getVn   0xab
#define test_heap   0xac
#define switchonterm   0xb0
#define switchonbound   0xb3
#define switchon3bound   0xb4
#define switchonthread   0xb5
#define trymeorelse   0xb7
#define retrymeorelse   0xb8
#define trustmeorelsefail   0xb9
#define dyntrustmeelsefail   0xba
#define dynretrymeelse   0xbb
#define tabletrysingle   0xc0
#define tabletry   0xc1
#define tableretry   0xc2
#define tabletrust   0xc3
#define check_complete   0xc4
#define answer_return   0xc5
#define resume_compl_suspension   0xc6
#define check_interrupt   0xce
#define new_answer_dealloc   0xcf
#define term_comp   0xd0
#define movreg   0xd1
#define negate   0xd2
#define and   0xd3
#define or   0xd4
#define logshiftl   0xd5
#define logshiftr   0xd6
#define addreg   0xd7
#define subreg   0xd8
#define mulreg   0xd9
#define divreg   0xda
#define idivreg   0xdb
#define int_test_z   0xdc
#define int_test_nz   0xdd
#define fun_test_ne   0xde
#define putdval   0xe0
#define putuval   0xe1
#define minreg   0xe2
#define maxreg   0xe3
#define dynnoop   0xe4
#define call_forn   0xe5
#define load_pred   0xe6
#define allocate_gc   0xe7
#define call   0xe8
#define allocate   0xe9
#define deallocate   0xea
#define proceed   0xeb
#define xsb_execute   0xec
#define calld   0xef
#define jump   0xf0
#define jumpz   0xf1
#define jumpnz   0xf2
#define jumplt   0xf3
#define jumple   0xf4
#define jumpgt   0xf5
#define jumpge   0xf6
#define cases   0xf7
#define fail   0xf8
#define noop   0xf9
#define halt   0xfa
#define builtin   0xfb
#define unifunc   0xfc
#define jumpcof   0xfe
#define endfile   0xff

Functions

void init_inst_table (void)

Variables

Cell inst_table [BUILTIN_TBL_SZ][5]

Define Documentation

#define A   1
 

#define addreg   0xd7
 

#define allocate   0xe9
 

#define allocate_gc   0xe7
 

#define and   0xd3
 

#define answer_return   0xc5
 

#define B   18
 

#define bldavar   0x22
 

#define bldcon   0x1c
 

#define bldfloat   0x83
 

#define bldnil   0x1d
 

#define bldnumcon   0x1f
 

#define bldpval   0x19
 

#define bldpvar   0x18
 

#define bldtval   0x1b
 

#define bldtvar   0x1a
 

#define builtin   0xfb
 

#define BUILTIN_TBL_SZ   256
 

#define C   5
 

debug_ctl _ _ load_pred from call   0xe8
 

#define call_forn   0xe5
 

#define calld   0xef
 

#define cases   0xf7
 

#define cell_opcode C   )     (*(pb)(C))
 

#define cell_operand1 C   )     (((pb)(C))[1])
 

#define cell_operand2 C   )     (((pb)(C))[2])
 

#define cell_operand3 C   )     (((pb)(C))[3])
 

#define cell_operandn C,
 )     (((pb)(C))[N])
 

#define cell_opreg1 C   )     (cell(opregaddr1(C)))
 

#define cell_opreg2 C   )     (cell(opregaddr2(C)))
 

#define cell_opreg3 C   )     (cell(opregaddr3(C)))
 

#define cell_opregaddr1 C   )     (rreg+((pb)(cell))[1])
 

#define cell_opregaddr2 C   )     (rreg+((pb)(cell))[2])
 

#define cell_opregaddr3 C   )     (rreg+((pb)(cell))[3])
 

#define cell_opregaddrn C,
 )     (rreg+((pb)(cell))[N])
 

#define cell_opregn C   )     (cell(opregaddrn(C,N)))
 

#define check_complete   0xc4
 

#define check_interrupt   0xce
 

#define deallocate   0xea
 

#define divreg   0xda
 

#define dynfail   0x9e
 

#define dynnoop   0xe4
 

#define dynretrymeelse   0xbb
 

#define dyntrustmeelsefail   0xba
 

#define dyntrymeelse   0x9f
 

#define endfile   0xff
 

#define F   17
 

#define fail   0xf8
 

#define fun_test_ne   0xde
 

#define G   7
 

#define getattv   0x30
 

#define getcon   0x04
 

#define getfloat   0x80
 

#define getlist   0x07
 

#define getlist_tvar_tvar   0x48
 

#define getnil   0x05
 

#define getnumcon   0x0e
 

#define getpbreg   0xa6
 

#define getpval   0x01
 

#define getpvar   0x00
 

#define getstr   0x06
 

#define getstrv   0x02
 

#define gettbreg   0xa7
 

#define gettval   0x03
 

#define getVn   0xab
 

#define halt   0xfa
 

#define hash_handle   0x7a
 

#define hash_opcode   0x79
 

#define I   9
 

#define idivreg   0xdb
 

#define inst_name C   )     ((char *)inst_table[C][0])
 

#define int_test_nz   0xdd
 

#define int_test_z   0xdc
 

#define jump   0xf0
 

#define jumpcof   0xfe
 

#define jumpge   0xf6
 

#define jumpgt   0xf5
 

#define jumple   0xf4
 

#define jumplt   0xf3
 

#define jumpnz   0xf2
 

#define jumptbreg   0xaa
 

#define jumpz   0xf1
 

#define L   6
 

#define load_pred   0xe6
 

#define logshiftl   0xd5
 

#define logshiftr   0xd6
 

#define maxreg   0xe3
 

#define minreg   0xe2
 

#define movreg   0xd1
 

#define mulreg   0xd9
 

#define N   8
 

#define negate   0xd2
 

#define new_answer_dealloc   0xcf
 

#define no_inst   0x20
 

#define noop   0xf9
 

#define or   0xd4
 

#define P   10
 

#define PP   12
 

#define PPP   13
 

#define PPR   14
 

#define proceed   0xeb
 

#define PRR   19
 

#define putattv   0x31
 

#define putcon   0x14
 

#define putdval   0xe0
 

#define putfloat   0x81
 

#define putlist   0x17
 

#define putnil   0x15
 

#define putnumcon   0x0f
 

#define putpbreg   0xa8
 

#define putpval   0x11
 

#define putpvar   0x10
 

#define putstr   0x16
 

#define putstrv   0x13
 

#define puttbreg   0xa9
 

#define puttvar   0x12
 

#define putuval   0xe1
 

#define R   3
 

#define resume_compl_suspension   0xc6
 

#define retry   0xa4
 

#define retrymeelse   0xa1
 

#define retrymeorelse   0xb8
 

#define RRR   16
 

#define S   4
 

#define subreg   0xd8
 

#define switchon3bound   0xb4
 

#define switchonbound   0xb3
 

#define switchonterm   0xb0
 

#define switchonthread   0xb5
 

#define T   15
 

#define tableretry   0xc2
 

#define tabletrust   0xc3
 

#define tabletry   0xc1
 

#define tabletrysingle   0xc0
 

#define term_comp   0xd0
 

n x8179bd0 n x81799a0 n x8179910 n x81797f0 n x8179750 x817bb40 x817bba0 x817b720 x817b528 _ x817b468 x817b0b0 x817bd18 x817baf0 x817b908 x817ba20 x817b948 x817b828 x817b3b8 x817b358 x817b2c8 x817b268 x817b208 x817b1d0 x817b140 x817b5e8 x817b3e8 x817af88 x817aef8 x817aeb0 x817ade0 x817ad38 unloaded n x8179b30 unloaded x8179aa8 n x8179a18 n x8179838 n x8179218 loaded test_heap   0xac
 

#define trie_assert_inst   0x7c
 

#define trie_fail_unlock   0x94
 

#define trie_no_cp_attv   0x5c
 

#define trie_no_cp_fail   0x90
 

#define trie_no_cp_list   0x64
 

#define trie_no_cp_numcon   0x70
 

#define trie_no_cp_numcon_succ   0x74
 

#define trie_no_cp_str   0x60
 

#define trie_no_cp_val   0x6c
 

#define trie_no_cp_var   0x68
 

#define trie_proceed   0x78
 

#define trie_retry_attv   0x5f
 

#define trie_retry_fail   0x93
 

#define trie_retry_list   0x67
 

#define trie_retry_numcon   0x73
 

#define trie_retry_numcon_succ   0x77
 

#define trie_retry_str   0x63
 

#define trie_retry_val   0x6f
 

#define trie_retry_var   0x6b
 

#define trie_root   0x7d
 

#define trie_trust_attv   0x5d
 

#define trie_trust_fail   0x91
 

#define trie_trust_list   0x65
 

#define trie_trust_numcon   0x71
 

#define trie_trust_numcon_succ   0x75
 

#define trie_trust_str   0x61
 

#define trie_trust_val   0x6d
 

#define trie_trust_var   0x69
 

#define trie_try_attv   0x5e
 

#define trie_try_fail   0x92
 

#define trie_try_list   0x66
 

#define trie_try_numcon   0x72
 

#define trie_try_numcon_succ   0x76
 

#define trie_try_str   0x62
 

#define trie_try_val   0x6e
 

#define trie_try_var   0x6a
 

#define trust   0xa5
 

#define trustmeelsefail   0xa2
 

#define trustmeorelsefail   0xb9
 

#define try   0xa3
 

#define trymeelse   0xa0
 

#define trymeorelse   0xb7
 

#define uniavar   0x21
 

#define unicon   0x0c
 

#define unifloat   0x82
 

#define unifunc   0xfc
 

#define uninil   0x0d
 

#define uninumcon   0x1e
 

#define unipval   0x09
 

#define unipvar   0x08
 

#define unitval   0x0b
 

#define unitvar   0x0a
 

#define V   2
 

#define X   11
 

#define xsb_execute   0xec
 


Function Documentation

void init_inst_table void   ) 
 


Variable Documentation

Cell inst_table[BUILTIN_TBL_SZ][5]
 


Generated on Wed Jul 26 13:26:53 2006 for XSB by  doxygen 1.4.5