|
180 | 180 | z = (A)(v); \ |
181 | 181 | AC(z) = (c); \ |
182 | 182 | } else { \ |
183 | | - RZ(z = virtual((w), 0, (r))); \ |
| 183 | + RZ(z = jtvirtual(jt, (w), 0, (r))); \ |
184 | 184 | AFLAG(z) |= AFUNINCORPABLE; \ |
185 | 185 | if ((c) != ACUC1) AC(z) = (c); \ |
186 | 186 | } \ |
|
320 | 320 | #define minusA(x, y) jtatomic2((J)((I)jt | JTINPLACEA), (x), (y), ds(CMINUS)) |
321 | 321 | #define mmharvest(x0, x1, x2, x3, x4, x5, x6) jtmmharvest(jt, (x0), (x1), (x2), (x3), (x4), (x5), (x6)) |
322 | 322 | #define mmprep(x0, x1, x2, x3, x4, x5) jtmmprep(jt, (x0), (x1), (x2), (x3), (x4), (x5)) |
323 | | -#define move(x, y, z) jtmove(jt, (x), (y), (z)) |
324 | 323 | #define movandor(x0, x1, x2, x3) jtmovandor(jt, (x0), (x1), (x2), (x3)) |
325 | 324 | #define movbwneeq(x0, x1, x2, x3) jtmovbwneeq(jt, (x0), (x1), (x2), (x3)) |
326 | 325 | #define movfslash(x, y, z) jtmovfslash(jt, (x), (y), (z)) |
|
434 | 433 | { \ |
435 | 434 | if ((AFLAG(x) & AFVIRTUAL) != 0) RZ((x) = jtrealize(jt, x)); \ |
436 | 435 | } |
437 | | -#define rifv(x) realizeifvirtual(x) |
438 | 436 | // We have used rifvs liberally through the code to guarantee that all functions can deal with virtual blocks returned. |
439 | 437 | // In some cases, the call is to an internal routine that we know will not return a virtual block normally, and is in an |
440 | 438 | // important performance path. We use rifvsdebug for these places. rifvs is called only during debugging. Review them |
|
520 | 518 | // usecount We can have an inplaceable but recursible block, if it was gc'd. We never push a PERMANENT block, so that |
521 | 519 | // we won't try to free it NOTE that PERMANENT blocks are always marked traversible if they are of traversible type, so |
522 | 520 | // we will not recur on them internally |
523 | | -#define tpushcommon(x, suffix) \ |
| 521 | +#define tpush(x) \ |
524 | 522 | { \ |
525 | 523 | if (!ACISPERM(AC(x))) { \ |
526 | 524 | I tt = AT(x); \ |
|
529 | 527 | if (!((I)pushp & (NTSTACKBLOCK - 1))) { RZ(pushp = jttg(jt, pushp)); } \ |
530 | 528 | if (((tt ^ AFLAG(x)) & TRAVERSIBLE) != 0) RZ(pushp = jttpush(jt, (x), tt, pushp)); \ |
531 | 529 | jt->tnextpushp = pushp; \ |
532 | | - suffix \ |
533 | 530 | } \ |
534 | 531 | } |
535 | | -#define tpush(x) tpushcommon(x, ) |
536 | 532 | // Internal version, used when the local name pushp is known to hold jt->tnextpushp |
537 | 533 | #define tpushi(x) \ |
538 | 534 | { \ |
|
591 | 587 | jtvaspeqprep(jt, (x0), (x1), (x2), (x3), (x4), (x5), (x6), (x7), (x8), (x9), (x10), (x11)) |
592 | 588 | #define vec(x, y, z) jtvec(jt, (x), (y), (z)) |
593 | 589 | #define vecb01(x, y, z) jtvecb01(jt, (x), (y), (z)) |
594 | | -#define virtual(x, y, z) jtvirtual(jt, (x), (y), (z)) |
595 | | -#define virtualip(x, y, z) jtvirtual(jtinplace, (x), (y), (z)) |
596 | 590 | #define wa(x, y, z) jtwa(jt, (x), (y), (z)) |
597 | 591 | #define widthdp(x, y, z) jtwidthdp(jt, (x), (y), (z)) |
598 | 592 | #define words(x) jtwords(jt, (x), ds(CWORDS)) |
|
0 commit comments