On 12/4/2013 1:16 PM, Tony Thigpen wrote:
I try to balance the use of B *+2+4 style branches against the
cluttering up by using a bunch of labels. It's never for more than 2
instructions.


Nothing worse than looking at long series of tests followed by bit
setting instructions where every other instruction has a label.

Really? Nothing? A startling lack of imagination there.

:-)


-Steve Comstock




Tony Thigpen

-----Original Message -----
  From: Chris Craddock
  Sent: 12/04/2013 02:58 PM
Date: Wed, 4 Dec 2013 13:37:31 -0600
From: [email protected]
Subject: Re: Base-less programming
To: [email protected]

<snip>> >
Am I reading the book right?


No. Although the assembled instructions have the displacement in half
words, your source code should still use the original "offset". HLASM
itself will halve the value. And it will complain bitterly if the offset is
not even. So you just replace the B??? with J??? and leave the operand
itself alone.

Well.. yes, but being pedantic; how about just using a label?!? I cringe
whenever I see carefully crafted branch statements with instruction lengths.
That's trivially broken by any down-stream change, whereas a label as a jump
or branch target will never be wrong - no matter how much the code changes in
between. Make your own and the next poor fool's job easier.
Just saying....
CC


Reply via email to