public abstract class com.oracle.truffle.js.nodes.access.GetViewValueNode extends com.oracle.truffle.js.nodes.JavaScriptNode
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.truffle.js.nodes.access.GetViewValueNode
super_class: com.oracle.truffle.js.nodes.JavaScriptNode
{
private final com.oracle.truffle.js.runtime.array.TypedArrayFactory factory;
descriptor: Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.oracle.truffle.js.runtime.JSContext context;
descriptor: Lcom/oracle/truffle/js/runtime/JSContext;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
protected com.oracle.truffle.js.nodes.JavaScriptNode viewNode;
descriptor: Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
RuntimeInvisibleAnnotations:
com.oracle.truffle.api.dsl.Executed()
protected com.oracle.truffle.js.nodes.JavaScriptNode requestIndexNode;
descriptor: Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
RuntimeInvisibleAnnotations:
com.oracle.truffle.api.dsl.Executed()
protected com.oracle.truffle.js.nodes.JavaScriptNode isLittleEndianNode;
descriptor: Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
RuntimeInvisibleAnnotations:
com.oracle.truffle.api.dsl.Executed()
private com.oracle.truffle.js.nodes.cast.JSToBooleanNode toBooleanNode;
descriptor: Lcom/oracle/truffle/js/nodes/cast/JSToBooleanNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lcom/oracle/truffle/js/nodes/access/GetViewValueNode;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.oracle.truffle.js.nodes.access.GetViewValueNode.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(com.oracle.truffle.js.runtime.JSContext, java.lang.String, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode);
descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;Ljava/lang/String;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 2
aload 1
invokestatic com.oracle.truffle.js.nodes.access.GetViewValueNode.typedArrayFactoryFromType:(Ljava/lang/String;Lcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
aload 3
aload 4
aload 5
invokespecial com.oracle.truffle.js.nodes.access.GetViewValueNode.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)V
1: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/js/nodes/access/GetViewValueNode;
0 2 1 context Lcom/oracle/truffle/js/runtime/JSContext;
0 2 2 type Ljava/lang/String;
0 2 3 view Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 2 4 requestIndex Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 2 5 isLittleEndian Lcom/oracle/truffle/js/nodes/JavaScriptNode;
MethodParameters:
Name Flags
context
type
view
requestIndex
isLittleEndian
protected void <init>(com.oracle.truffle.js.runtime.JSContext, com.oracle.truffle.js.runtime.array.TypedArrayFactory, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode);
descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokespecial com.oracle.truffle.js.nodes.JavaScriptNode.<init>:()V
1: aload 0
aload 2
putfield com.oracle.truffle.js.nodes.access.GetViewValueNode.factory:Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
2: aload 0
aload 1
putfield com.oracle.truffle.js.nodes.access.GetViewValueNode.context:Lcom/oracle/truffle/js/runtime/JSContext;
3: aload 0
aload 3
putfield com.oracle.truffle.js.nodes.access.GetViewValueNode.viewNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
4: aload 0
aload 4
putfield com.oracle.truffle.js.nodes.access.GetViewValueNode.requestIndexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
5: aload 0
aload 5
putfield com.oracle.truffle.js.nodes.access.GetViewValueNode.isLittleEndianNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
6: aload 0
aload 2
invokevirtual com.oracle.truffle.js.runtime.array.TypedArrayFactory.getBytesPerElement:()I
iconst_1
if_icmpne 7
aconst_null
goto 8
StackMap locals: com.oracle.truffle.js.nodes.access.GetViewValueNode com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.array.TypedArrayFactory com.oracle.truffle.js.nodes.JavaScriptNode com.oracle.truffle.js.nodes.JavaScriptNode com.oracle.truffle.js.nodes.JavaScriptNode
StackMap stack: com.oracle.truffle.js.nodes.access.GetViewValueNode
7: invokestatic com.oracle.truffle.js.nodes.cast.JSToBooleanNode.create:()Lcom/oracle/truffle/js/nodes/cast/JSToBooleanNode;
StackMap locals: com.oracle.truffle.js.nodes.access.GetViewValueNode com.oracle.truffle.js.runtime.JSContext com.oracle.truffle.js.runtime.array.TypedArrayFactory com.oracle.truffle.js.nodes.JavaScriptNode com.oracle.truffle.js.nodes.JavaScriptNode com.oracle.truffle.js.nodes.JavaScriptNode
StackMap stack: com.oracle.truffle.js.nodes.access.GetViewValueNode com.oracle.truffle.js.nodes.cast.JSToBooleanNode
8: putfield com.oracle.truffle.js.nodes.access.GetViewValueNode.toBooleanNode:Lcom/oracle/truffle/js/nodes/cast/JSToBooleanNode;
9: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/oracle/truffle/js/nodes/access/GetViewValueNode;
0 10 1 context Lcom/oracle/truffle/js/runtime/JSContext;
0 10 2 factory Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
0 10 3 view Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 10 4 requestIndex Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 10 5 isLittleEndian Lcom/oracle/truffle/js/nodes/JavaScriptNode;
MethodParameters:
Name Flags
context
factory
view
requestIndex
isLittleEndian
static com.oracle.truffle.js.runtime.array.TypedArrayFactory typedArrayFactoryFromType(java.lang.String, com.oracle.truffle.js.runtime.JSContext);
descriptor: (Ljava/lang/String;Lcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.js.runtime.array.TypedArray.factories:(Lcom/oracle/truffle/js/runtime/JSContext;)[Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 5
StackMap locals: java.lang.String com.oracle.truffle.js.runtime.JSContext top int int com.oracle.truffle.js.runtime.array.TypedArrayFactory[]
StackMap stack:
1: aload 5
iload 3
aaload
astore 2
start local 2 2: aload 2
invokevirtual com.oracle.truffle.js.runtime.array.TypedArrayFactory.getName:()Ljava/lang/String;
aload 0
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 4
3: aload 2
areturn
end local 2 4: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
iload 4
if_icmplt 1
6: new java.lang.IllegalArgumentException
dup
aload 0
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 type Ljava/lang/String;
0 7 1 context Lcom/oracle/truffle/js/runtime/JSContext;
2 4 2 factory Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
MethodParameters:
Name Flags
type
context
public abstract java.lang.Object execute(java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
dataView
requestIndex
littleEndian
protected final java.lang.Object doGet(java.lang.Object, java.lang.Object, java.lang.Object, com.oracle.truffle.js.nodes.cast.JSToIndexNode, com.oracle.truffle.api.profiles.BranchProfile, com.oracle.truffle.api.profiles.ValueProfile);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/cast/JSToIndexNode;Lcom/oracle/truffle/api/profiles/BranchProfile;Lcom/oracle/truffle/api/profiles/ValueProfile;)Ljava/lang/Object;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=4, locals=17, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 1
invokestatic com.oracle.truffle.js.runtime.builtins.JSDataView.isJSDataView:(Ljava/lang/Object;)Z
ifne 3
1: aload 5
invokevirtual com.oracle.truffle.api.profiles.BranchProfile.enter:()V
2: invokestatic com.oracle.truffle.js.runtime.Errors.createTypeErrorNotADataView:()Lcom/oracle/truffle/js/runtime/JSException;
athrow
3: StackMap locals:
StackMap stack:
aload 1
checkcast com.oracle.truffle.api.object.DynamicObject
astore 7
start local 7 4: aload 7
invokestatic com.oracle.truffle.js.runtime.builtins.JSDataView.getArrayBuffer:(Lcom/oracle/truffle/api/object/DynamicObject;)Lcom/oracle/truffle/api/object/DynamicObject;
astore 8
start local 8 5: aload 4
aload 2
invokevirtual com.oracle.truffle.js.nodes.cast.JSToIndexNode.executeLong:(Ljava/lang/Object;)J
lstore 9
start local 9 6: aload 0
getfield com.oracle.truffle.js.nodes.access.GetViewValueNode.factory:Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
invokevirtual com.oracle.truffle.js.runtime.array.TypedArrayFactory.getBytesPerElement:()I
iconst_1
if_icmpne 7
iconst_1
goto 8
StackMap locals: com.oracle.truffle.api.object.DynamicObject com.oracle.truffle.api.object.DynamicObject long
StackMap stack:
7: aload 0
getfield com.oracle.truffle.js.nodes.access.GetViewValueNode.toBooleanNode:Lcom/oracle/truffle/js/nodes/cast/JSToBooleanNode;
aload 3
invokevirtual com.oracle.truffle.js.nodes.cast.JSToBooleanNode.executeBoolean:(Ljava/lang/Object;)Z
StackMap locals:
StackMap stack: int
8: istore 11
start local 11 9: aload 0
getfield com.oracle.truffle.js.nodes.access.GetViewValueNode.context:Lcom/oracle/truffle/js/runtime/JSContext;
invokevirtual com.oracle.truffle.js.runtime.JSContext.getTypedArrayNotDetachedAssumption:()Lcom/oracle/truffle/api/Assumption;
invokeinterface com.oracle.truffle.api.Assumption.isValid:()Z
ifne 13
10: aload 8
invokestatic com.oracle.truffle.js.runtime.builtins.JSArrayBuffer.isDetachedBuffer:(Lcom/oracle/truffle/api/object/DynamicObject;)Z
ifeq 13
11: aload 5
invokevirtual com.oracle.truffle.api.profiles.BranchProfile.enter:()V
12: invokestatic com.oracle.truffle.js.runtime.Errors.createTypeErrorDetachedBuffer:()Lcom/oracle/truffle/js/runtime/JSException;
athrow
13: StackMap locals: int
StackMap stack:
aload 7
invokestatic com.oracle.truffle.js.runtime.builtins.JSDataView.typedArrayGetLength:(Lcom/oracle/truffle/api/object/DynamicObject;)I
istore 12
start local 12 14: aload 0
getfield com.oracle.truffle.js.nodes.access.GetViewValueNode.factory:Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
invokevirtual com.oracle.truffle.js.runtime.array.TypedArrayFactory.getBytesPerElement:()I
istore 13
start local 13 15: lload 9
iload 13
i2l
ladd
iload 12
i2l
lcmp
ifle 18
16: aload 5
invokevirtual com.oracle.truffle.api.profiles.BranchProfile.enter:()V
17: ldc "index + elementSize > viewLength"
invokestatic com.oracle.truffle.js.runtime.Errors.createRangeError:(Ljava/lang/String;)Lcom/oracle/truffle/js/runtime/JSException;
athrow
18: StackMap locals: int int
StackMap stack:
aload 7
invokestatic com.oracle.truffle.js.runtime.builtins.JSDataView.typedArrayGetOffset:(Lcom/oracle/truffle/api/object/DynamicObject;)I
istore 14
start local 14 19: getstatic com.oracle.truffle.js.nodes.access.GetViewValueNode.$assertionsDisabled:Z
ifne 20
lload 9
iload 14
i2l
ladd
ldc 2147483647
lcmp
ifle 20
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
20: StackMap locals: int
StackMap stack:
lload 9
iload 14
i2l
ladd
l2i
istore 15
start local 15 21: aload 6
aload 0
getfield com.oracle.truffle.js.nodes.access.GetViewValueNode.factory:Lcom/oracle/truffle/js/runtime/array/TypedArrayFactory;
aload 8
invokestatic com.oracle.truffle.js.runtime.builtins.JSArrayBuffer.isJSDirectOrSharedArrayBuffer:(Ljava/lang/Object;)Z
iconst_1
invokevirtual com.oracle.truffle.js.runtime.array.TypedArrayFactory.createArrayType:(ZZ)Lcom/oracle/truffle/js/runtime/array/TypedArray;
invokevirtual com.oracle.truffle.api.profiles.ValueProfile.profile:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.js.runtime.array.TypedArray
astore 16
start local 16 22: aload 16
aload 8
iload 15
iload 11
invokevirtual com.oracle.truffle.js.runtime.array.TypedArray.getBufferElement:(Lcom/oracle/truffle/api/object/DynamicObject;IZ)Ljava/lang/Object;
areturn
end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/oracle/truffle/js/nodes/access/GetViewValueNode;
0 23 1 view Ljava/lang/Object;
0 23 2 requestIndex Ljava/lang/Object;
0 23 3 littleEndian Ljava/lang/Object;
0 23 4 toIndexNode Lcom/oracle/truffle/js/nodes/cast/JSToIndexNode;
0 23 5 errorBranch Lcom/oracle/truffle/api/profiles/BranchProfile;
0 23 6 typeProfile Lcom/oracle/truffle/api/profiles/ValueProfile;
4 23 7 dataView Lcom/oracle/truffle/api/object/DynamicObject;
5 23 8 buffer Lcom/oracle/truffle/api/object/DynamicObject;
6 23 9 getIndex J
9 23 11 isLittleEndian Z
14 23 12 viewLength I
15 23 13 elementSize I
19 23 14 viewOffset I
21 23 15 bufferIndex I
22 23 16 strategy Lcom/oracle/truffle/js/runtime/array/TypedArray;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.dsl.Specialization()
RuntimeInvisibleParameterAnnotations:
0:
1:
2:
3:
com.oracle.truffle.api.dsl.Cached(value = "create()")
4:
com.oracle.truffle.api.dsl.Cached(value = "create()")
5:
com.oracle.truffle.api.dsl.Cached(value = "createClassProfile()")
MethodParameters:
Name Flags
view
requestIndex
littleEndian
toIndexNode
errorBranch
typeProfile
public static com.oracle.truffle.js.nodes.access.GetViewValueNode create(com.oracle.truffle.js.runtime.JSContext, java.lang.String, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode);
descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;Ljava/lang/String;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/access/GetViewValueNode;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=5, args_size=5
0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tGetViewValueNodeGen cannot be resolved\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
context
type
view
requestIndex
isLittleEndian
protected com.oracle.truffle.js.nodes.JavaScriptNode copyUninitialized(java.util.Set<java.lang.Class<? extends com.oracle.truffle.api.instrumentation.Tag>>);
descriptor: (Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tGetViewValueNodeGen cannot be resolved\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/GetViewValueNode;
Signature: (Ljava/util/Set<Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;>;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
MethodParameters:
Name Flags
materializedTags
}
SourceFile: "GetViewValueNode.java"
InnerClasses:
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node