better GET
This commit is contained in:
parent
a1113c418e
commit
475fe269a8
@ -74,11 +74,11 @@ INS B i_FN1O(B f, B x, u32* bc) { POS_UPD;
|
|||||||
B r = isNothing(x)? x : c1(f, x);
|
B r = isNothing(x)? x : c1(f, x);
|
||||||
dec(f); return r;
|
dec(f); return r;
|
||||||
}
|
}
|
||||||
INS B i_FN2C(B w, B f, B x, u32* bc GA1) { POS_UPD;
|
INS B i_FN2C(B w, B f, B x, u32* bc) { POS_UPD;
|
||||||
B r = c2(f, w, x);
|
B r = c2(f, w, x);
|
||||||
dec(f); return r;
|
dec(f); return r;
|
||||||
}
|
}
|
||||||
INS B i_FN2O(B w, B f, B x, u32* bc GA1) { POS_UPD;
|
INS B i_FN2O(B w, B f, B x, u32* bc) { POS_UPD;
|
||||||
B r;
|
B r;
|
||||||
if (isNothing(x)) { dec(w); r = x; }
|
if (isNothing(x)) { dec(w); r = x; }
|
||||||
else r = isNothing(w)? c1(f, x) : c2(f, w, x);
|
else r = isNothing(w)? c1(f, x) : c2(f, w, x);
|
||||||
@ -509,7 +509,7 @@ Nvm_res m_nvm(Body* body) {
|
|||||||
#endif
|
#endif
|
||||||
#define POS_UPD(R1,R2) IMM(R1, off); MOV8mro(r_ENV, R1, offsetof(Env,bcL));
|
#define POS_UPD(R1,R2) IMM(R1, off); MOV8mro(r_ENV, R1, offsetof(Env,bcL));
|
||||||
#define GS_SET(R) MOV8pr(&gStack, R)
|
#define GS_SET(R) MOV8pr(&gStack, R)
|
||||||
#define GET(R,P,U) { Reg t=SPOS(R, -(P), 0); if(U) GS_SET(t); if(U!=2) MOV8rm(R,t); }
|
#define GET(R,P,U) { if (U) { Reg t=SPOS(R, -(P), 0); if(U) GS_SET(t); if(U!=2) MOV8rm(R,t); } else { MOV8rmo(R, r_CS, SPOSq(-(P))); } }
|
||||||
switch (*bc++) {
|
switch (*bc++) {
|
||||||
case POPS: TOPp;
|
case POPS: TOPp;
|
||||||
CCALL(i_POPS);
|
CCALL(i_POPS);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user