That's the old-fashioned way. This is the new way: USING *,16
There are some caveats. For CSECTs, HLASM will complain if SECALGN is insufficient. For DSECTs, it's your responsibility to ensure the alignment matches (if it's real important). Fortunately, STORAGE has a corresponding alignment specification. sas On Wed, Apr 20, 2022 at 10:50 AM Bob Raicer <r...@raicer.com> wrote: > Ed; > > Of course, what you said about the LQ type of DC is true, and I too > have used LQ data types in some of my code too. However, the > SECTALGN requirement is a bit of an issue when assembling code with > 2**3 (double word) section alignment and which also contains DSECTs > which map quad word aligned storage areas. I've had to resort to > schemes like what is shown below (I hope the list server doesn't > mangle the sample listing too badly). > > The reason(s) for still having double word aligned sections is (are) > a bit lost in antiquity -- inertia is a powerful thing :) > > : D-Loc Object Code Stmt Source Statement > :00000000 1 SAMPLE DSECT , > : 2 PRINT ON,DATA > :00000000 00000010 3 REF DC A(QUADITEM) > :00000004 00 4 BYTE DC AL1(0) > : 5 * > --------------------------------------------------------- > :00000005 0000000000000000 6 DC > (((((*-SAMPLE)+15)/16)*16)-(*-SAMPLE))AL1(0) > :0000000D 000000 > : 7 * Round up to a Quad Word > : 8 * boundary. > : 9 * > :00000010 0000000000000000 10 QUADITEM DC XL16'00' > :00000018 0000000000000000 > : 11 END , >