I'm talking about very old values of "new"; I've seen code that doesn't use anything beyond S/370.
I cane see not using the Telum instructions, and even not using the SIMD instructions, but anything older than that? -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 עַם יִשְׂרָאֵל חַי נֵ֣צַח יִשְׂרָאֵ֔ל לֹ֥א יְשַׁקֵּ֖ר ________________________________________ From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on behalf of Leonard D Woren <ibm-main...@ldworen.net> Sent: Sunday, December 10, 2023 4:57 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Assembler optimization OPTION Seymour J Metz wrote on 12/10/2023 7:06 AM: > Why does it take so long for people to use new features? HLASM has a lot of > nifty things that have been around and well documented for decades. Right. I actually found at least one very old bug by using HLA option FLAG(PAGE0). An annoyance though is that there are some IBM macros which get flagged, so you have to either temporarily turn off FLAG(PAGE0) around them, or in some case, simply insert USING PSA,0. > A similar question exists for new instructions; how many shops are still > running boxen that don't support the z immediate, long displacement and > relative instructions, e,g.,JC, LARL, LAY? Which value of "new" are you using? Our products are supported on all z/OS releases still supported by IBM, so I'm somewhat limited in what instruction set I can use. Currently, z/OS 2.4 is still supported (I assume until 2024-09-30), and since z/OS 2.4 runs on z12, I can't go past ZS(6) instructions. However, that turns out to be a LOT of nifty instructions. I have eliminated nearly all 2 and 4 byte literals, among other improvements. With the relative branch instructions and SYSSTATE ARCHLVL=2, there is no excuse for base registers for code. Note that LARL was retrofitted back to S/390 hardware, so there is no excuse whatsoever for not using it. I have a loop somewhere using about 20 registers. Have fun with that. /Leonard > -- > Shmuel (Seymour J.) Metz > http://mason.gmu.edu/~smetz3 > עַם יִשְׂרָאֵל חַי > נֵ֣צַח יִשְׂרָאֵ֔ל לֹ֥א יְשַׁקֵּ֖ר > ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN