I refer to them all as generic branch and link instructions, and include
all other instructions that provide a return address for the routine
being entered, whether it's through the instruction itself (like these)
or hardware (like PC, SVC).  I tend not to use "Call" because there's an
IBM macro with that name.

On 2022-02-10 11:04 a.m., David Cole wrote:
In Assembler there are many machine instructions that are suitable for
calling subroutines:
  - They go somewhere,
  - But they also set a register that can be used to return to the
next following instruction.

These instructions include:
  - BAL   (Branch and link)
  - BALR  (Branch and link register)
  - BAS   (Branch and save)
  - JAS   (jump and save)
  - BRAS  (Branch relative and save)
  - BRASL (Branch relative and save long)
  - BASSM (Branch and save and set mode)



My question is this...
What is the collective name for these instructions?

In a sentence such as "Then you branch and link to a subroutine...",
I tend to say "branch and link",

but I'm always unhappy about that...
  - Yes, "branch and link" is an accurate description of you're doing,
  - While "branch and save" is a bit opaque.
  - However, the phrase "branch and link" is ambiguous and invites
unnecessary quibbling.


So my question is... What would you say?

TIA,
David Cole
[email protected] (personal)
[email protected] (business)
540-456-6518 (cell)


Gary Weinhold
Senior Application Architect
DATAKINETICS | Data Performance & Optimization
Phone:+1.613.523.5500 x216
Email: [email protected]
Visit us online at www.DKL.com
E-mail Notification: The information contained in this email and any 
attachments is confidential and may be subject to copyright or other 
intellectual property protection. If you are not the intended recipient, you 
are not authorized to use or disclose this information, and we request that you 
notify us by reply mail or telephone and delete the original message from your 
mail system.

Reply via email to