From the link which Mike Schwab provided:

"PERFORM THRUs can often appear as iterative loops to a
compiler when in fact the user did not intend to write an
iterative loop. In programs that use many PERFORM THRUs, the
compiler detects many such loops and tries to perform loop
specific optimizations on them. These optimizations are memory
intensive and hence if there are too many loops to operate on,
the compiler can run out of memory."

Why would PERFORM THRUs "often appear as iterative loop" and the PERFORM of 
SECTIONS not do so? I think just not mentioned, so don't think "we use 
SECTIONS, we're OK".

Why PERFORM THRUs and not plain old PERFORM? Assuming it does not relate to 
VARYING, TIMES or UNTIL, then it means GO TO would be the culprit.

If "the user did not intend to write an iterative loop" then why try to 
optimise it as such? Ah. Can't tell the difference from the object-code. It 
would be nice to know if it achieves any optimisation, rather than just 
attempting it. Although "GO TO-less programs compile faster" may make a nice 
T-shirt.

On Thursday, 31 March 2016 17:07:24 UTC+1, Mike Schwab  wrote:
> http://www-01.ibm.com/support/docview.wss?uid=swg1PI21773
> 
> A couple of other fixes for the message Fall 2015.  Can you check the
> last PTF applied to the compiler?
> 

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

Reply via email to