Annotation Interface Prolog


@Retention(SOURCE) @Target(TYPE) public @interface Prolog
Defines a prolog operation that executes before the body of a Root operation.

A prolog operation is defined the same way as an Operation. It has the additional restriction that it must have no dynamic operands and must declare a void return type. It can declare constant operands.

The prolog is guarded by exception intercept methods (e.g., BytecodeRootNode.interceptInternalException(Throwable, VirtualFrame, BytecodeNode, int)) as well as the exceptional epilog, if present.

When Tag instrumentation is enabled, the prolog will execute after root probes and before root body probes.

Since:
24.2
See Also: