SPRAB89A September 2011 – March 2014
PR3 and PR4 use an optimized encoding. Most functions use PR3. If you are optimizing C64x+ code for size use PR4.
The stack increment is similar to the byte-encoded small constant increment, but it is not biased by 8. The special increment value 0x7F is used to encode "MV FP, SP". If the value of the stack increment is not 0x7F, SP is incremented by (value << 3).
The return register field encodes the register in which the return address is stored, using the encoding from Table 11-3. If this register is any register other than B3 itself, B3 should be restored from this register before executing the POP operation (next paragraph).
The bitmask is interpreted as in the byte-encoded POP bitmask instruction. If the personality routine is PR3, the non-compact POP instruction is performed; if the personality routine is PR4, the compact-frame POP instruction is performed. This includes the possibly implicit increment of SP.