BAL and BALR
BAL and BALR are addressing-mode sensitive. In 24-bit addressing
mode, BAL and BALR work the same way as they do when executed on a
processor running in 370 mode. BAL and BALR put link information
into the high-order byte of the first operand register and put the
return address into the remaining three bytes before branching.
In 31-bit addressing mode, BAL and BALR put the return address into bits 1 through 31 of the first operand register and save the current addressing mode in the high-order bit. Because the addressing mode is 31-bit, the high-order bit is always a 1.
When executing in 31-bit addressing mode, BAL and BALR do not save the instruction length code, the condition code, or the program mask. IPM (insert program mask) can be used to save the program mask and the condition code.