version 1.248, 2010/04/25 18:27:09
|
version 1.250, 2010/05/17 09:01:11
|
Line 2492 c_addr = "libltdl is not configured";
|
Line 2492 c_addr = "libltdl is not configured";
|
u = strlen(c_addr); |
u = strlen(c_addr); |
#endif |
#endif |
|
|
|
w!be ( w c_addr -- ) gforth w_store_be |
|
""Store the bottom 16 bits of @i{w} at @i{c_addr} in big endian format."" |
|
*(Wyde*)(c_addr) = htobe16(w); |
|
|
|
l!be ( w c_addr -- ) gforth l_store_be |
|
""Store the bottom 32 bits of @i{w} at @i{c_addr} in big endian format."" |
|
*(Tetrabyte*)(c_addr) = htobe32(w); |
|
|
|
x!be ( w c_addr -- ) gforth x_store_be |
|
""Store the bottom 64 bits of @i{w} at @i{c_addr} in big endian format."" |
|
*(Octabyte*)(c_addr) = htobe64(w); |
|
|
|
w!le ( w c_addr -- ) gforth w_store_le |
|
""Store the bottom 16 bits of @i{w} at @i{c_addr} in big endian format."" |
|
*(Wyde*)(c_addr) = htole16(w); |
|
|
|
l!le ( w c_addr -- ) gforth l_store_le |
|
""Store the bottom 32 bits of @i{w} at @i{c_addr} in big endian format."" |
|
*(Tetrabyte*)(c_addr) = htole32(w); |
|
|
|
x!le ( w c_addr -- ) gforth x_store_le |
|
""Store the bottom 64 bits of @i{w} at @i{c_addr} in big endian format."" |
|
*(Octabyte*)(c_addr) = htole64(w); |
|
|
|
w@be ( c_addr -- u ) gforth w_fetch_be |
|
""@i{u} is the zero-extended 16-bit big endian value stored at @i{c_addr}."" |
|
u = be16toh(*(UWyde*)(c_addr)); |
|
|
|
l@be ( c_addr -- u ) gforth l_fetch_be |
|
""@i{u} is the zero-extended 32-bit big endian value stored at @i{c_addr}."" |
|
u = be32toh(*(UTetrabyte*)(c_addr)); |
|
|
|
x@be ( c_addr -- u ) gforth x_fetch_be |
|
""@i{u} is the zero-extended 64-bit big endian value stored at @i{c_addr}."" |
|
u = be64toh(*(UOctabyte*)(c_addr)); |
|
|
|
w@le ( c_addr -- u ) gforth w_fetch_le |
|
""@i{u} is the zero-extended 16-bit little endian value stored at @i{c_addr}."" |
|
u = le16toh(*(UWyde*)(c_addr)); |
|
|
|
l@le ( c_addr -- u ) gforth l_fetch_le |
|
""@i{u} is the zero-extended 32-bit little endian value stored at @i{c_addr}."" |
|
u = le32toh(*(UTetrabyte*)(c_addr)); |
|
|
|
x@le ( c_addr -- u ) gforth x_fetch_le |
|
""@i{u} is the zero-extended 64-bit little endian value stored at @i{c_addr}."" |
|
u = le64toh(*(UOctabyte*)(c_addr)); |
|
|
\+ |
\+ |
\g peephole |
\g peephole |
|
|
Line 2559 Address body = (Address)PFA(a_cfa);
|
Line 2607 Address body = (Address)PFA(a_cfa);
|
sp = (*f)(sp, &fp_mem, body); |
sp = (*f)(sp, &fp_mem, body); |
fp = fp_mem; |
fp = fp_mem; |
|
|
;code-exec ( #a_cfa -- ) gforth-internal semi_code_exec |
lit-execute ( #a_addr -- ) new lit_execute |
/* routine for performing ;code-defined words */ |
/* for ;code and code words; a static superinstruction would be more general, |
|
but VM_JUMP is currently not supported there */ |
|
#ifndef NO_IP |
|
ip=IP; |
|
#endif |
SUPER_END; |
SUPER_END; |
VM_JUMP(EXEC1(a_cfa)); |
VM_JUMP(EXEC1((Xt)a_addr)); |
|
|
|
|
\g static_super |
\g static_super |