Got it. Assuming the J *+2 is actually JNx *+2, where 'x' is the expected 
condition (Z following an LTR of a return code, for example).

Charles


-----Original Message-----
From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On 
Behalf Of Tom Marchant
Sent: Thursday, May 11, 2017 12:36 PM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Quick error termination of an assembler routine (Was: Performance 
of Decimal Floating Point Instruction)

On Thu, 11 May 2017 10:44:25 -0700, Charles Mills wrote:

>What is *wrong* with DC H'0'? It has the advantage of being incredibly 
>straightforward. I had to spend a minute thinking about J *+2; I pretty much 
>guarantee you anyone with six months of HLASM experience would "get" DC H'0'.

I wouldn't say that anything is wrong with it. But when it is included in code 
for a condition that should never occur and you haven't (yet) coded a proper 
error routine, the instruction before it is typically a branch over it. I don't 
know how big the branch taken hit on the pipeline is in that case. But in the J 
*+2 case, the normal path is to fall through, and only take the branch under 
the error condition.

Reply via email to