Class JSDivideNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.js.nodes.JavaScriptBaseNode
com.oracle.truffle.js.nodes.JavaScriptNode
com.oracle.truffle.js.nodes.binary.JSBinaryNode
com.oracle.truffle.js.nodes.binary.JSDivideNode
- All Implemented Interfaces:
com.oracle.truffle.api.instrumentation.InstrumentableNode, com.oracle.truffle.api.nodes.NodeInterface, Cloneable
-
Nested Class Summary
Nested classes/interfaces inherited from class com.oracle.truffle.api.nodes.Node
com.oracle.truffle.api.nodes.Node.Child, com.oracle.truffle.api.nodes.Node.ChildrenNested classes/interfaces inherited from interface com.oracle.truffle.api.instrumentation.InstrumentableNode
com.oracle.truffle.api.instrumentation.InstrumentableNode.WrapperNode -
Field Summary
Fields inherited from class JSBinaryNode
leftNode, rightNodeFields inherited from class JavaScriptNode
INTERMEDIATE_VALUE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected JavaScriptNodecopyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) static JSDivideNodecreate()static JSDivideNodecreate(JavaScriptNode left, JavaScriptNode right) protected BigIntprotected BigIntdoBigIntZeroDivision(BigInt a, BigInt b) protected doubledoDouble(double a, double b) protected static ObjectdoGeneric(Object a, Object b, com.oracle.truffle.api.nodes.Node node, JSDivideNode nestedDivideNode, JSToNumericNode toNumeric1Node, JSToNumericNode toNumeric2Node, com.oracle.truffle.api.profiles.InlinedBranchProfile mixedNumericTypes) protected intdoInt1(int a, int b) protected intdoInt2(int a, int b) protected intdoInt3(int a, int b) protected ObjectdoOverloaded(Object a, Object b, JSOverloadedBinaryNode overloadedOperatorNode) abstract Objectprotected com.oracle.truffle.api.strings.TruffleStringprotected static booleanisCornercase(int a, int b) Methods inherited from class JSBinaryNode
ensureBothSameNumericType, expressionToString, getLeft, getNodeObject, getRight, hasTag, largerThan2e32Methods inherited from class JavaScriptNode
addCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, createWrapper, execute, executeBoolean, executeDouble, executeInt, executeVoid, findBlockScopeNode, getSourceSection, hasSourceSection, isInstrumentable, isResultAlwaysOfType, onReplace, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTagsMethods inherited from class JavaScriptBaseNode
getJSContext, getLanguage, getLanguageOptions, getRealm, hasOverloadedOperators, reportLoopCount, reportLoopCountMethods inherited from class com.oracle.truffle.api.nodes.Node
accept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize, reportReplaceMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.oracle.truffle.api.instrumentation.InstrumentableNode
createProbe, findNearestNodeAt, findNearestNodeAt, findProbe, materializeInstrumentableNodes
-
Constructor Details
-
JSDivideNode
-
-
Method Details
-
create
-
create
-
execute
-
isCornercase
protected static boolean isCornercase(int a, int b) -
doInt1
protected int doInt1(int a, int b) -
doInt2
protected int doInt2(int a, int b) -
doInt3
protected int doInt3(int a, int b) -
doDouble
protected double doDouble(double a, double b) -
doBigIntZeroDivision
-
doBigInt
-
doOverloaded
-
getOverloadedOperatorName
protected com.oracle.truffle.api.strings.TruffleString getOverloadedOperatorName() -
doGeneric
protected static Object doGeneric(Object a, Object b, com.oracle.truffle.api.nodes.Node node, JSDivideNode nestedDivideNode, JSToNumericNode toNumeric1Node, JSToNumericNode toNumeric2Node, com.oracle.truffle.api.profiles.InlinedBranchProfile mixedNumericTypes) -
copyUninitialized
protected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) - Overrides:
copyUninitializedin classJavaScriptNode
-