Even where there is no perfomance hit I would consider it bad form.
-- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 ________________________________________ From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Bernd Oppolzer [bernd.oppol...@t-online.de] Sent: Monday, February 8, 2021 3:43 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: LINK vs LOAD/CALL Thanks for that. I would like to add, that I was working for a customer which has the first coding at very many places in almost every module, because it is included in a global macro. The problem with modern processors is, that if the location PTR to store the address is in the same cache line (that is, less than 256 byte apart from the place where the ST operation is), you will get the I-cache invalidated, which leads to severe performance issues. The customer observed this by significant performance degradation in the LPAR where those ASSEMBLER programs are running. We then had to rework (at least recompile, after macro change) all these several thousand programs to remedy the problem. The problem is known as SIIS (store into instruction stream). Kind regards Bernd Am 08.02.2021 um 03:38 schrieb Seymour J Metz: > This is refreshable, and even runs on S/360 > > L R15,PTR > LTR R15,R15 > BNZ CALLIT > ... ... Code that always > leaves the same value in R15 > ST R15,PTR > CALLIT BALR R14,R15 > ... > PTR DC A(0) > > This is reentrant, and requires at least S/370 > > RETRY L R1,COUNTER > LA R0,1(,R1) > CS R1,,R0,COUNTER > BNE RETRY > ... > COUNTER DC F'0' > > I would consider either to be bad form. > > > -- > 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