The loop table is printed after each program unit (function) and
shows what KAP did with each for
loop in the function.
If the loop could not be optimized, a reason is given. The loop
table is the primary listing tool for understanding what KAP did
with the program.
The line messages are summaries of KAP actions for each loop (both loops in the original source code and loops which KAP generated). The loop to which each refers can be identified from the main loop table. The abbreviations used are explained after the main table.
KAP/Digital_VMS_C V3.1 k271906 970317 main Loop Table 08-Apr-1997 15:16:54 -------------------------------- Loop Table -------------------------------- Nest Loop Message Level Contains Lines ============================================================================== for j 1 1637-1644 "matmul.i" 1. Enhanced Scalar 2 1637, 1640, 1644 "matmul.i" for i 2 1639-1642 "matmul.i" 1. Enhanced Scalar 1 1637, 1639-1640, 1642, 1644 "matmul.i" Line:1639 NV Not an inner loop. for j 1 1646-1653 "matmul.i" 1. Enhanced Scalar 2 1646, 1649, 1653 "matmul.i" for i 2 1648-1651 "matmul.i" 1. Enhanced Scalar 1 1646, 1648-1649, 1651, 1653 "matmul.i" Line:1648 NV Not an inner loop. for j 1 1658-1670 "matmul.i" Line:1658 NO Loop was asserted serial by directive. Line:1658 I DO loop was inserted here. Line:1658 SO Strip loop for strip mining with block size 24. Line:1658 SO Block loop for strip mining with block size 24. Line:1658 SO Loop unrolled 3 times to improve scalar performance. Line:1658 SO Cleanup-loop for loop unrolling added. Line:1660 NV Not an inner loop. Line:1660 I DO loop was inserted here. Line:1660 SO Strip loop for strip mining with block size 24. . . . Abbreviations Used NO not optimized DD data dependence SO scalar optimization I inserted INF informational