calln
Call function with defined number of return values.
This is a gang encoding for function calls that have more arguments than one slot call operations can accommodate.
There are optimizations for this for ganged function calls with zero or one return value.
As with all ganged call operations, the target address is always in the last gang slot.
related operations: calltrn, callfln, retn
calln(lit n, p target, args args) → ops r0 ...rn
encoding:
calln(lit n, p target, off argv, count argc)
,
calln(lit n, p target, off argv, count argc, lit argv)
Core | In Slots | Latencies |
---|---|---|
Tin | F0 | 1 |
Copper | F0 F1 | 1 |
Silver | F0 F1 F2 | 1 |
Gold | F0 F1 F2 F3 | 1 |
Decimal8 | F0 F1 F2 | 1 |
Decimal16 | F0 F1 F2 | 1 |
calln(lit n, lbl target, args args) → ops r0 ...rn
encoding:
calln(lit n, off target, count argc)
,
calln(lit n, off target, count argc, lit argv)
,
calln(lit n, off target, count argc, lit argv, lit argv)
Core | In Slots | Latencies |
---|---|---|
Tin | F0 | 1 |
Copper | F0 F1 | 1 |
Silver | F0 F1 F2 | 1 |
Gold | F0 F1 F2 F3 | 1 |
Decimal8 | F0 F1 F2 | 1 |
Decimal16 | F0 F1 F2 | 1 |
Instruction Set, alphabetical, Instruction Set by Category, Instruction Set, sortable, filterable