In PL/I (F) Version 5 the optimization regressed. While SUBSTR was still inline 
for CHAR, that was not always the case for bit strings.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Discussion List [[email protected]] on behalf of 
Robin Vowels [[email protected]]
Sent: Monday, March 28, 2022 5:29 AM
To: [email protected]
Subject: Re: PL/I question

----- Original Message -----
From: "allan winston" <[email protected]>
Newsgroups: bit.listserv.ibm-main
To: <[email protected]>
Sent: Saturday, March 26, 2022 1:26 PM
Subject: Re: PL/I question


> From 1970 to 1972, I was in a shop that made the transition from PL/I F to
> the PL/I optimizing compiler. I would frequently use the LIST compiler
> option to look at the machine code generated and found that the PL/I F
> compiler generated quite poor code, frequently having to make a library
> call just to implement the SUBSTR function.

By 1968, the SUBSTR function was implemented as
in-line code in PL/I(F).
If, however, STRINGRANGE was specfied, in-line code was not generated.

In general, to avoid using subroutine calls, it was necessary to specify
a minimum optinisation level of 1, in which case in-line code was generated.

> By contrast, the PL/I
> optimizing compiler generated very good machine code.

---
This email has been checked for viruses by Avast antivirus software.
https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.avast.com%2Fantivirus&amp;data=04%7C01%7Csmetz3%40gmu.edu%7Cb88d6b6074004155e27008da109d6b6b%7C9e857255df574c47a0c00546460380cb%7C0%7C0%7C637840565556021849%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=k%2B3eL8AkSX9NWqt5pRNGrPmdQpycjdXeGbH6anEP%2BlU%3D&amp;reserved=0

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to