psyclone.psyir.nodes.value_range_check_node#

This module provides support for verifying that the real inputs and outputs of a kernel are valid numbers (i.e. neither NAN nor infinite).

Classes#

class psyclone.psyir.nodes.value_range_check_node.ValueRangeCheckNode(ast=None, children=None, parent=None, options=None)[source]#

This class can be inserted into a Schedule to mark Nodes for NAN-checking using the NanTestTrans transformation. The Nodes marked for checking become children of (the Schedule of) a ValueRangeCheckNode.

Inheritance

Inheritance diagram of ValueRangeCheckNode
lower_to_language_level()[source]#

Lowers this node (and all children) to language-level PSyIR. The PSyIR tree is modified in-place.

Returns:

the lowered version of this node.

Return type:

psyclone.psyir.node.Node

property value_range_check_body#
Returns:

the Schedule associated with this ValueRangeCheckNode.

Return type:

psyclone.psyir.nodes.Schedule