Lines Matching defs:parmbase
2970 static struct zvalue *setup_lvalue(int ref_stack_ptr, int parmbase, int *field_num)
2986 k = ref->num >= 0 ? ref->num : parmbase - ref->num;
3458 static void gsub(int opcode, int nargs, int parmbase)
3462 struct zvalue *v = setup_lvalue(0, parmbase, &field_num);
3568 int opcode, op2, k, r, nargs, nsubscrs, range_num, parmbase = 0;
3695 v = setup_lvalue(1, parmbase, &field_num);
3731 v = setup_lvalue(1, parmbase, &field_num);
3746 v = setup_lvalue(0, parmbase, &field_num);
3819 // Stack frame layout relative to parmbase:
3825 // Actual args follow, starting at parmbase + 1
3834 STACK[newparmbase + PREV_PARMBASE].num = parmbase;
3835 parmbase = newparmbase;
3867 nargs = STACK[parmbase+ARG_CNT].num;
3869 zvalue_copy(&STACK[parmbase+RETURN_VALUE], STKP);
3873 while (stkn(0) > parmbase + nargs) {
3880 while (stkn(0) > parmbase + RETURN_VALUE)
3882 ip = &ZCODE[(int)STACK[parmbase+RETURN_ADDR].num];
3883 parmbase = STACK[parmbase+PREV_PARMBASE].num;
3890 push_int_val(0); // parmbase
3923 if (k < 0) k = parmbase - k; // loc of var on TT.stack
3937 k = op2 < 0 ? parmbase - op2 : op2;
3966 struct zvalue *var = setup_lvalue(2, parmbase, &field_num);
3977 k = op2 < 0 ? parmbase - op2 : op2;
4115 v = nargs ? setup_lvalue(0, parmbase, &field_num) : 0;
4165 gsub(opcode, *ip++, parmbase); // tksub/tkgsub, args