Split out float slightly better.
This commit is contained in:
@ -33,4 +33,4 @@
|
|||||||
X("1/F", FINVERSE, *fp = 1.0 / *fp) \
|
X("1/F", FINVERSE, *fp = 1.0 / *fp) \
|
||||||
X("S>F", STOF, *++fp = (float) tos; DROP) \
|
X("S>F", STOF, *++fp = (float) tos; DROP) \
|
||||||
X("F>S", FTOS, DUP; tos = (cell_t) *fp--) \
|
X("F>S", FTOS, DUP; tos = (cell_t) *fp--) \
|
||||||
|
X("F>NUMBER?", FCONVERT, tos = fconvert((const char *) *sp, tos, fp); --sp)
|
||||||
|
|||||||
@ -216,7 +216,6 @@ e: check-core-opcodes
|
|||||||
out: IMMEDIATE
|
out: IMMEDIATE
|
||||||
out: DOES>
|
out: DOES>
|
||||||
out: CREATE
|
out: CREATE
|
||||||
out: F>NUMBER?
|
|
||||||
out: S>NUMBER?
|
out: S>NUMBER?
|
||||||
out: PARSE
|
out: PARSE
|
||||||
out: FIND
|
out: FIND
|
||||||
@ -254,6 +253,7 @@ e: check-core-opcodes
|
|||||||
;e
|
;e
|
||||||
|
|
||||||
e: check-float-opcodes
|
e: check-float-opcodes
|
||||||
|
out: F>NUMBER?
|
||||||
out: F>S
|
out: F>S
|
||||||
out: S>F
|
out: S>F
|
||||||
out: 1/F
|
out: 1/F
|
||||||
|
|||||||
@ -90,7 +90,6 @@ typedef int64_t dcell_t;
|
|||||||
Y(PARSE, DUP; tos = parse(tos, sp)) \
|
Y(PARSE, DUP; tos = parse(tos, sp)) \
|
||||||
X("S>NUMBER?", CONVERT, tos = convert((const char *) *sp, tos, g_sys.base, sp); \
|
X("S>NUMBER?", CONVERT, tos = convert((const char *) *sp, tos, g_sys.base, sp); \
|
||||||
if (!tos) --sp) \
|
if (!tos) --sp) \
|
||||||
X("F>NUMBER?", FCONVERT, tos = fconvert((const char *) *sp, tos, fp); --sp) \
|
|
||||||
Y(CREATE, DUP; DUP; tos = parse(32, sp); \
|
Y(CREATE, DUP; DUP; tos = parse(32, sp); \
|
||||||
create((const char *) *sp, tos, 0, ADDR_DOCREATE); \
|
create((const char *) *sp, tos, 0, ADDR_DOCREATE); \
|
||||||
COMMA(0); DROPn(2)) \
|
COMMA(0); DROPn(2)) \
|
||||||
|
|||||||
Reference in New Issue
Block a user