Suppose, for the sake of argument, that I have a single CSECT which exceeds 4K. Is there any reason, other than size bloat and perhaps CPU usage, that I could not force all the IBM macros and other uses to use the "long displacement" versions of instructions instead of the normal versions? It certainly is simple enough.
_L OPSYN L L OPSYN LY _LA OPSYN LA LA OPSYN LAY and so on. I'd also use the IEABRCX macro to change all the BC instructions to the BRC equivalent. I do understand this makes the instructions 6 bytes instead of 4, for the long displacement. I also have a "bad" tendency any more to use immediate operands where possible. Eg: CHI instead of CH. Which works well for "constant" values. And since I am now trying to use only RSECTs, all my variables reside in dynamic storage areas. If I need "self documenting" values instead of "magic numbers", I use LCLx symbols. (CHI Rn,&MAX_LENGTH_OF_BUBBA), where &MAX_LENGTH_OF_BUBBA is a LCLA declared at the top of the source. I also put: _CSECT OPSYN CSECT CSECT OPSYN RSECT at the start of my programs now. In addition to the *PROCESS RENT card. John McKown Systems Engineer IV IT Administrative Services Group HealthMarkets(r) 9151 Boulevard 26 * N. Richland Hills * TX 76010 (817) 255-3225 phone * [email protected] * www.HealthMarkets.com Confidentiality Notice: This e-mail message may contain confidential or proprietary information. If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message. HealthMarkets(r) is the brand name for products underwritten and issued by the insurance subsidiaries of HealthMarkets, Inc. -The Chesapeake Life Insurance Company(r), Mid-West National Life Insurance Company of TennesseeSM and The MEGA Life and Health Insurance Company.SM
