Annotation Interface EpilogExceptional
return epilog executes before returning normally).
An exceptional epilog operation is defined the same way as an Operation. It has the
additional restriction that its specializations must take one operand (the exception), which must
be of type AbstractTruffleException or a subtype. The
return type must also be void.
The exceptional epilog is guarded by exception intercept methods (e.g.,
BytecodeRootNode.interceptInternalException(Throwable, VirtualFrame, BytecodeNode, int)),
but not language-level exception handlers.
- Since:
- 24.2
- See Also:
-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionbooleanIndicates whether this operation requires the bytecode index to be updated.
-
Element Details
-
storeBytecodeIndex
boolean storeBytecodeIndexIndicates whether this operation requires the bytecode index to be updated. By default, the DSL assumes that all operations with caches require the bytecode index to be updated. The DSL will emit a warning if specifying this attribute is necessary.If this attribute has been set to
false, then theStoreBytecodeIndexannotation can be used to enable this property for individualSpecializationorFallback-annotated methods.This annotation only has an effect if
GenerateBytecode.storeBytecodeIndexInFrame()is set totrueor if theuncached interpreter tieris enabled.- Since:
- 25.1
- See Also:
- Default:
true
-