Next Previous Up Top Contents Index

8.2 Optimization coloring

8.2.3 Dispatch optimization colors and their meanings

The following table shows the colors used to indicate different kinds of dispatch optimization.

Table 8.1 Dispatch optimization color meanings.

Color

Meaning

Recommended action

Magenta

Call not optimized because the compiler could not determine all the applicable methods.

Happens when the generic function is open.

Where possible, turn open protocols into sealed protocols.

Red

Call not optimized despite the compiler finding all the applicable methods.

Can happen when the type of an argument is not specific enough.

Where possible, add type specializers to the bindings of the arguments to the call.

Blue

Call optimized. The compiler found the appropriate method, and emitted a direct call to it.

None required.

Green

Call optimized. The compiler found that this call was an access to a slot whose position in a class is fixed. It replaced the function call with (faster) code to access that slot value.

None required.

Dark gray

Call optimized. The compiler inlined the code of the appropriate method.

None required.

Light gray

This code was eliminated completely. The compiler either determined that this call would never be made or that it would not make any difference to the outcome of other code with which it was associated, or it managed to evaluate the call entirely.

None required. (Unless the code should have been called.)


Getting Started with Functional Developer - 31 MAR 2000

Next Previous Up Top Contents Index