public class com.oracle.truffle.js.nodes.access.WriteElementNode extends com.oracle.truffle.js.nodes.access.JSTargetableNode
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.js.nodes.access.WriteElementNode
super_class: com.oracle.truffle.js.nodes.access.JSTargetableNode
{
protected com.oracle.truffle.js.nodes.JavaScriptNode targetNode;
descriptor: Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
protected com.oracle.truffle.js.nodes.JavaScriptNode indexNode;
descriptor: Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
private com.oracle.truffle.js.nodes.cast.ToArrayIndexNode toArrayIndexNode;
descriptor: Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
protected com.oracle.truffle.js.nodes.JavaScriptNode valueNode;
descriptor: Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
private com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode typeCacheNode;
descriptor: Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
private com.oracle.truffle.js.nodes.access.RequireObjectCoercibleNode requireObjectCoercibleNode;
descriptor: Lcom/oracle/truffle/js/nodes/access/RequireObjectCoercibleNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
final com.oracle.truffle.js.runtime.JSContext context;
descriptor: Lcom/oracle/truffle/js/runtime/JSContext;
flags: (0x0010) ACC_FINAL
final boolean isStrict;
descriptor: Z
flags: (0x0010) ACC_FINAL
final boolean writeOwn;
descriptor: Z
flags: (0x0010) ACC_FINAL
private byte indexState;
descriptor: B
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$CompilationFinal()
private static final byte INDEX_INT;
descriptor: B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final byte INDEX_OBJECT;
descriptor: B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
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/WriteElementNode;
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.WriteElementNode.$assertionsDisabled:Z
3: return
LocalVariableTable:
Start End Slot Name Signature
public static com.oracle.truffle.js.nodes.access.WriteElementNode create(com.oracle.truffle.js.runtime.JSContext, boolean);
descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;Z)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aconst_null
aconst_null
aconst_null
aload 0
iload 1
iconst_0
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.create:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/runtime/JSContext;ZZ)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lcom/oracle/truffle/js/runtime/JSContext;
0 1 1 isStrict Z
MethodParameters:
Name Flags
context
isStrict
public static com.oracle.truffle.js.nodes.access.WriteElementNode create(com.oracle.truffle.js.runtime.JSContext, boolean, boolean);
descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;ZZ)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
aconst_null
aconst_null
aload 0
iload 1
iload 2
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.create:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/runtime/JSContext;ZZ)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lcom/oracle/truffle/js/runtime/JSContext;
0 1 1 isStrict Z
0 1 2 writeOwn Z
MethodParameters:
Name Flags
context
isStrict
writeOwn
public static com.oracle.truffle.js.nodes.access.WriteElementNode create(com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.runtime.JSContext, boolean);
descriptor: (Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/runtime/JSContext;Z)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
iload 4
iconst_0
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.create:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/runtime/JSContext;ZZ)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 targetNode Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 1 1 indexNode Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 1 2 valueNode Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 1 3 context Lcom/oracle/truffle/js/runtime/JSContext;
0 1 4 isStrict Z
MethodParameters:
Name Flags
targetNode
indexNode
valueNode
context
isStrict
private static com.oracle.truffle.js.nodes.access.WriteElementNode create(com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.runtime.JSContext, boolean, boolean);
descriptor: (Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/runtime/JSContext;ZZ)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: new com.oracle.truffle.js.nodes.access.WriteElementNode
dup
aload 0
aload 1
aload 2
aload 3
iload 4
iload 5
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode.<init>:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/runtime/JSContext;ZZ)V
areturn
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 1 0 targetNode Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 1 1 indexNode Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 1 2 valueNode Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 1 3 context Lcom/oracle/truffle/js/runtime/JSContext;
0 1 4 isStrict Z
0 1 5 writeOwn Z
MethodParameters:
Name Flags
targetNode
indexNode
valueNode
context
isStrict
writeOwn
protected void <init>(com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.runtime.JSContext, boolean, boolean);
descriptor: (Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/runtime/JSContext;ZZ)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=7, 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 0
invokespecial com.oracle.truffle.js.nodes.access.JSTargetableNode.<init>:()V
1: getstatic com.oracle.truffle.js.nodes.access.WriteElementNode.$assertionsDisabled:Z
ifne 2
aload 2
instanceof com.oracle.truffle.js.nodes.cast.JSToPropertyKeyNode$JSToPropertyKeyWrapperNode
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: com.oracle.truffle.js.nodes.access.WriteElementNode com.oracle.truffle.js.nodes.JavaScriptNode com.oracle.truffle.js.nodes.JavaScriptNode com.oracle.truffle.js.nodes.JavaScriptNode com.oracle.truffle.js.runtime.JSContext int int
StackMap stack:
aload 0
aload 1
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
3: aload 0
aload 2
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
4: aload 0
aload 3
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
5: aload 0
aload 4
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.context:Lcom/oracle/truffle/js/runtime/JSContext;
6: aload 0
iload 5
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.isStrict:Z
7: aload 0
iload 6
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.writeOwn:Z
8: aload 0
invokestatic com.oracle.truffle.js.nodes.access.RequireObjectCoercibleNode.create:()Lcom/oracle/truffle/js/nodes/access/RequireObjectCoercibleNode;
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercibleNode:Lcom/oracle/truffle/js/nodes/access/RequireObjectCoercibleNode;
9: return
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 10 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 10 1 targetNode Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 10 2 indexNode Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 10 3 valueNode Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 10 4 context Lcom/oracle/truffle/js/runtime/JSContext;
0 10 5 isStrict Z
0 10 6 writeOwn Z
MethodParameters:
Name Flags
targetNode
indexNode
valueNode
context
isStrict
writeOwn
protected final com.oracle.truffle.js.nodes.cast.ToArrayIndexNode toArrayIndexNode();
descriptor: ()Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
ifnonnull 3
1: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
2: aload 0
aload 0
invokestatic com.oracle.truffle.js.nodes.cast.ToArrayIndexNode.create:()Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.insert:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
checkcast com.oracle.truffle.js.nodes.cast.ToArrayIndexNode
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
3: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
protected final void requireObjectCoercible(java.lang.Object, int);
descriptor: (Ljava/lang/Object;I)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercibleNode:Lcom/oracle/truffle/js/nodes/access/RequireObjectCoercibleNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.RequireObjectCoercibleNode.executeVoid:(Ljava/lang/Object;)V
1: goto 4
StackMap locals:
StackMap stack: com.oracle.truffle.js.runtime.JSException
2: pop
3: iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic com.oracle.truffle.js.runtime.JSRuntime.safeToString:(Ljava/lang/Object;)Ljava/lang/String;
aload 1
aload 0
invokestatic com.oracle.truffle.js.runtime.Errors.createTypeErrorCannotSetProperty:(Ljava/lang/Object;Ljava/lang/Object;Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/js/runtime/JSException;
athrow
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 5 1 target Ljava/lang/Object;
0 5 2 index I
Exception table:
from to target type
0 1 2 Class com.oracle.truffle.js.runtime.JSException
MethodParameters:
Name Flags
target
index
protected final void requireObjectCoercible(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercibleNode:Lcom/oracle/truffle/js/nodes/access/RequireObjectCoercibleNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.RequireObjectCoercibleNode.executeVoid:(Ljava/lang/Object;)V
1: goto 4
StackMap locals:
StackMap stack: com.oracle.truffle.js.runtime.JSException
2: pop
3: aload 2
invokestatic com.oracle.truffle.js.runtime.JSRuntime.safeToString:(Ljava/lang/Object;)Ljava/lang/String;
aload 1
aload 0
invokestatic com.oracle.truffle.js.runtime.Errors.createTypeErrorCannotSetProperty:(Ljava/lang/Object;Ljava/lang/Object;Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/js/runtime/JSException;
athrow
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 5 1 target Ljava/lang/Object;
0 5 2 index Ljava/lang/Object;
Exception table:
from to target type
0 1 2 Class com.oracle.truffle.js.runtime.JSException
MethodParameters:
Name Flags
target
index
public boolean hasTag(java.lang.Class<? extends com.oracle.truffle.api.instrumentation.Tag>);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc Lcom/oracle/truffle/js/nodes/instrumentation/JSTags$WriteElementTag;
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial com.oracle.truffle.js.nodes.access.JSTargetableNode.hasTag:(Ljava/lang/Class;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 3 1 tag Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;
Signature: (Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;)Z
MethodParameters:
Name Flags
tag
public com.oracle.truffle.api.instrumentation.InstrumentableNode materializeInstrumentableNodes(java.util.Set<java.lang.Class<? extends com.oracle.truffle.api.instrumentation.Tag>>);
descriptor: (Ljava/util/Set;)Lcom/oracle/truffle/api/instrumentation/InstrumentableNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.materializationNeeded:()Z
ifeq 24
aload 1
ldc Lcom/oracle/truffle/js/nodes/instrumentation/JSTags$WriteElementTag;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 24
1: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
ifnull 2
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.hasSourceSection:()Z
ifeq 3
StackMap locals:
StackMap stack:
2: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
goto 4
StackMap locals:
StackMap stack:
3: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 0
aload 1
invokestatic com.oracle.truffle.js.nodes.instrumentation.JSTaggedExecutionNode.createForInput:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
StackMap locals:
StackMap stack: com.oracle.truffle.js.nodes.JavaScriptNode
4: astore 2
start local 2 5: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
ifnull 6
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.hasSourceSection:()Z
ifeq 7
StackMap locals: com.oracle.truffle.js.nodes.JavaScriptNode
StackMap stack:
6: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
goto 8
StackMap locals:
StackMap stack:
7: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 0
aload 1
invokestatic com.oracle.truffle.js.nodes.instrumentation.JSTaggedExecutionNode.createForInput:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
StackMap locals:
StackMap stack: com.oracle.truffle.js.nodes.JavaScriptNode
8: astore 3
start local 3 9: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
ifnull 10
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.hasSourceSection:()Z
ifeq 11
StackMap locals: com.oracle.truffle.js.nodes.JavaScriptNode
StackMap stack:
10: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
goto 12
StackMap locals:
StackMap stack:
11: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 0
aload 1
invokestatic com.oracle.truffle.js.nodes.instrumentation.JSTaggedExecutionNode.createForInput:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
StackMap locals:
StackMap stack: com.oracle.truffle.js.nodes.JavaScriptNode
12: astore 4
start local 4 13: aload 2
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
if_acmpne 15
aload 3
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
if_acmpne 15
aload 4
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
if_acmpne 15
14: aload 0
areturn
15: StackMap locals: com.oracle.truffle.js.nodes.JavaScriptNode
StackMap stack:
aload 2
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
if_acmpne 17
16: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.cloneUninitialized:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
astore 2
17: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
if_acmpne 19
18: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.cloneUninitialized:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
astore 3
19: StackMap locals:
StackMap stack:
aload 4
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
if_acmpne 21
20: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.cloneUninitialized:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
astore 4
21: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 3
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.createMaterialized:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
astore 5
start local 5 22: aload 0
aload 5
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.transferSourceSectionAndTags:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)V
23: aload 5
areturn
end local 5 end local 4 end local 3 end local 2 24: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 25 1 materializedTags Ljava/util/Set<Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;>;
5 24 2 clonedTarget Lcom/oracle/truffle/js/nodes/JavaScriptNode;
9 24 3 clonedIndex Lcom/oracle/truffle/js/nodes/JavaScriptNode;
13 24 4 clonedValue Lcom/oracle/truffle/js/nodes/JavaScriptNode;
22 24 5 cloned Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
Signature: (Ljava/util/Set<Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;>;)Lcom/oracle/truffle/api/instrumentation/InstrumentableNode;
MethodParameters:
Name Flags
materializedTags
private boolean materializationNeeded();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
ifnull 1
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.hasSourceSection:()Z
ifeq 4
StackMap locals:
StackMap stack:
1: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
ifnull 2
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.hasSourceSection:()Z
ifeq 4
StackMap locals:
StackMap stack:
2: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
ifnull 3
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.hasSourceSection:()Z
ifeq 4
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
StackMap locals:
StackMap stack:
4: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
protected com.oracle.truffle.js.nodes.access.WriteElementNode createMaterialized(com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode);
descriptor: (Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
aload 3
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.getContext:()Lcom/oracle/truffle/js/runtime/JSContext;
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.isStrict:()Z
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.writeOwn:()Z
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.create:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/runtime/JSContext;ZZ)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 1 1 newTarget Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 1 2 newIndex Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 1 3 newValue Lcom/oracle/truffle/js/nodes/JavaScriptNode;
MethodParameters:
Name Flags
newTarget
newIndex
newValue
public java.lang.Object evaluateTarget(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 1 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
MethodParameters:
Name Flags
frame
public java.lang.Object execute(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.evaluateTarget:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 2
start local 2 1: aload 0
aload 1
aload 2
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
aload 2
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.evaluateReceiver:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTarget:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
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/WriteElementNode;
0 2 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
1 2 2 target Ljava/lang/Object;
MethodParameters:
Name Flags
frame
public int executeInt(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.evaluateTarget:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 2
start local 2 1: aload 0
aload 1
aload 2
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
aload 2
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.evaluateReceiver:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetInt:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;)I
ireturn
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/WriteElementNode;
0 2 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
1 2 2 target Ljava/lang/Object;
Exceptions:
throws com.oracle.truffle.api.nodes.UnexpectedResultException
MethodParameters:
Name Flags
frame
public double executeDouble(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)D
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.evaluateTarget:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 2
start local 2 1: aload 0
aload 1
aload 2
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
aload 2
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.evaluateReceiver:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetDouble:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;)D
dreturn
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/WriteElementNode;
0 2 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
1 2 2 target Ljava/lang/Object;
Exceptions:
throws com.oracle.truffle.api.nodes.UnexpectedResultException
MethodParameters:
Name Flags
frame
public java.lang.Object executeWithTarget(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aload 2
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTarget:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 1 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 1 2 target Ljava/lang/Object;
MethodParameters:
Name Flags
frame
target
public java.lang.Object executeWithTarget(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Object, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
istore 4
start local 4 1: iload 4
ifne 10
2: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
3: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 5
start local 5 4: aload 0
aload 2
aload 5
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;Ljava/lang/Object;)V
5: aload 5
instanceof java.lang.Integer
ifeq 8
6: aload 0
iconst_1
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
7: aload 0
aload 1
aload 2
aload 5
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndex:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object;
areturn
8: StackMap locals: int java.lang.Object
StackMap stack:
aload 0
iconst_2
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
9: aload 0
aload 1
aload 2
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:()Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
aload 5
invokevirtual com.oracle.truffle.js.nodes.cast.ToArrayIndexNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndex:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 5 10: StackMap locals:
StackMap stack:
iload 4
iconst_1
if_icmpne 19
11: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.executeInt:(Lcom/oracle/truffle/api/frame/VirtualFrame;)I
istore 5
start local 5 12: goto 17
end local 5 StackMap locals:
StackMap stack: com.oracle.truffle.api.nodes.UnexpectedResultException
13: astore 6
start local 6 14: aload 0
iconst_2
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
15: aload 0
aload 2
aload 6
invokevirtual com.oracle.truffle.api.nodes.UnexpectedResultException.getResult:()Ljava/lang/Object;
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;Ljava/lang/Object;)V
16: aload 0
aload 1
aload 2
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:()Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
aload 6
invokevirtual com.oracle.truffle.api.nodes.UnexpectedResultException.getResult:()Ljava/lang/Object;
invokevirtual com.oracle.truffle.js.nodes.cast.ToArrayIndexNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndex:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 6 start local 5 17: StackMap locals: int
StackMap stack:
aload 0
aload 2
iload 5
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;I)V
18: aload 0
aload 1
aload 2
iload 5
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndex:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object;
areturn
end local 5 19: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.js.nodes.access.WriteElementNode.$assertionsDisabled:Z
ifne 20
iload 4
iconst_2
if_icmpeq 20
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
20: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 5
start local 5 21: aload 0
aload 2
aload 5
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;Ljava/lang/Object;)V
22: aload 0
aload 1
aload 2
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:()Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
aload 5
invokevirtual com.oracle.truffle.js.nodes.cast.ToArrayIndexNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndex:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
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/WriteElementNode;
0 23 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 23 2 target Ljava/lang/Object;
0 23 3 receiver Ljava/lang/Object;
1 23 4 is B
4 10 5 index Ljava/lang/Object;
12 13 5 index I
17 19 5 index I
14 17 6 e Lcom/oracle/truffle/api/nodes/UnexpectedResultException;
21 23 5 index Ljava/lang/Object;
Exception table:
from to target type
11 12 13 Class com.oracle.truffle.api.nodes.UnexpectedResultException
MethodParameters:
Name Flags
frame
target
receiver
public int executeWithTargetInt(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Object, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
istore 4
start local 4 1: iload 4
ifne 10
2: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
3: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 5
start local 5 4: aload 0
aload 2
aload 5
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;Ljava/lang/Object;)V
5: aload 5
instanceof java.lang.Integer
ifeq 8
6: aload 0
iconst_1
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
7: aload 0
aload 1
aload 2
aload 5
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexInt:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;ILjava/lang/Object;)I
ireturn
8: StackMap locals: int java.lang.Object
StackMap stack:
aload 0
iconst_2
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
9: aload 0
aload 1
aload 2
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:()Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
aload 5
invokevirtual com.oracle.truffle.js.nodes.cast.ToArrayIndexNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexInt:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)I
ireturn
end local 5 10: StackMap locals:
StackMap stack:
iload 4
iconst_1
if_icmpne 19
11: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.executeInt:(Lcom/oracle/truffle/api/frame/VirtualFrame;)I
istore 5
start local 5 12: goto 17
end local 5 StackMap locals:
StackMap stack: com.oracle.truffle.api.nodes.UnexpectedResultException
13: astore 6
start local 6 14: aload 0
iconst_2
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
15: aload 0
aload 2
aload 6
invokevirtual com.oracle.truffle.api.nodes.UnexpectedResultException.getResult:()Ljava/lang/Object;
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;Ljava/lang/Object;)V
16: aload 0
aload 1
aload 2
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:()Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
aload 6
invokevirtual com.oracle.truffle.api.nodes.UnexpectedResultException.getResult:()Ljava/lang/Object;
invokevirtual com.oracle.truffle.js.nodes.cast.ToArrayIndexNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexInt:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)I
ireturn
end local 6 start local 5 17: StackMap locals: int
StackMap stack:
aload 0
aload 2
iload 5
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;I)V
18: aload 0
aload 1
aload 2
iload 5
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexInt:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;ILjava/lang/Object;)I
ireturn
end local 5 19: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.js.nodes.access.WriteElementNode.$assertionsDisabled:Z
ifne 20
iload 4
iconst_2
if_icmpeq 20
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
20: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 5
start local 5 21: aload 0
aload 2
aload 5
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;Ljava/lang/Object;)V
22: aload 0
aload 1
aload 2
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:()Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
aload 5
invokevirtual com.oracle.truffle.js.nodes.cast.ToArrayIndexNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexInt:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)I
ireturn
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/WriteElementNode;
0 23 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 23 2 target Ljava/lang/Object;
0 23 3 receiver Ljava/lang/Object;
1 23 4 is B
4 10 5 index Ljava/lang/Object;
12 13 5 index I
17 19 5 index I
14 17 6 e Lcom/oracle/truffle/api/nodes/UnexpectedResultException;
21 23 5 index Ljava/lang/Object;
Exception table:
from to target type
11 12 13 Class com.oracle.truffle.api.nodes.UnexpectedResultException
Exceptions:
throws com.oracle.truffle.api.nodes.UnexpectedResultException
MethodParameters:
Name Flags
frame
target
receiver
public double executeWithTargetDouble(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Object, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;)D
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
istore 4
start local 4 1: iload 4
ifne 10
2: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
3: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 5
start local 5 4: aload 0
aload 2
aload 5
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;Ljava/lang/Object;)V
5: aload 5
instanceof java.lang.Integer
ifeq 8
6: aload 0
iconst_1
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
7: aload 0
aload 1
aload 2
aload 5
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexDouble:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;ILjava/lang/Object;)D
dreturn
8: StackMap locals: int java.lang.Object
StackMap stack:
aload 0
iconst_2
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
9: aload 0
aload 1
aload 2
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:()Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
aload 5
invokevirtual com.oracle.truffle.js.nodes.cast.ToArrayIndexNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexDouble:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)D
dreturn
end local 5 10: StackMap locals:
StackMap stack:
iload 4
iconst_1
if_icmpne 19
11: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.executeInt:(Lcom/oracle/truffle/api/frame/VirtualFrame;)I
istore 5
start local 5 12: goto 17
end local 5 StackMap locals:
StackMap stack: com.oracle.truffle.api.nodes.UnexpectedResultException
13: astore 6
start local 6 14: aload 0
iconst_2
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexState:B
15: aload 0
aload 2
aload 6
invokevirtual com.oracle.truffle.api.nodes.UnexpectedResultException.getResult:()Ljava/lang/Object;
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;Ljava/lang/Object;)V
16: aload 0
aload 1
aload 2
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:()Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
aload 6
invokevirtual com.oracle.truffle.api.nodes.UnexpectedResultException.getResult:()Ljava/lang/Object;
invokevirtual com.oracle.truffle.js.nodes.cast.ToArrayIndexNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexDouble:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)D
dreturn
end local 6 start local 5 17: StackMap locals: int
StackMap stack:
aload 0
aload 2
iload 5
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;I)V
18: aload 0
aload 1
aload 2
iload 5
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexDouble:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;ILjava/lang/Object;)D
dreturn
end local 5 19: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.js.nodes.access.WriteElementNode.$assertionsDisabled:Z
ifne 20
iload 4
iconst_2
if_icmpeq 20
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
20: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 5
start local 5 21: aload 0
aload 2
aload 5
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.requireObjectCoercible:(Ljava/lang/Object;Ljava/lang/Object;)V
22: aload 0
aload 1
aload 2
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.toArrayIndexNode:()Lcom/oracle/truffle/js/nodes/cast/ToArrayIndexNode;
aload 5
invokevirtual com.oracle.truffle.js.nodes.cast.ToArrayIndexNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
aload 3
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexDouble:(Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)D
dreturn
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/WriteElementNode;
0 23 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 23 2 target Ljava/lang/Object;
0 23 3 receiver Ljava/lang/Object;
1 23 4 is B
4 10 5 index Ljava/lang/Object;
12 13 5 index I
17 19 5 index I
14 17 6 e Lcom/oracle/truffle/api/nodes/UnexpectedResultException;
21 23 5 index Ljava/lang/Object;
Exception table:
from to target type
11 12 13 Class com.oracle.truffle.api.nodes.UnexpectedResultException
Exceptions:
throws com.oracle.truffle.api.nodes.UnexpectedResultException
MethodParameters:
Name Flags
frame
target
receiver
protected java.lang.Object executeWithTargetAndIndex(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 5
start local 5 1: aload 0
aload 2
aload 3
aload 5
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
2: aload 5
areturn
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 3 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 3 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 3 2 target Ljava/lang/Object;
0 3 3 index Ljava/lang/Object;
0 3 4 receiver Ljava/lang/Object;
1 3 5 value Ljava/lang/Object;
MethodParameters:
Name Flags
frame
target
index
receiver
protected java.lang.Object executeWithTargetAndIndex(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Object, int, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 5
start local 5 1: aload 0
aload 2
iload 3
aload 5
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;)V
2: aload 5
areturn
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 3 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 3 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 3 2 target Ljava/lang/Object;
0 3 3 index I
0 3 4 receiver Ljava/lang/Object;
1 3 5 value Ljava/lang/Object;
MethodParameters:
Name Flags
frame
target
index
receiver
protected int executeWithTargetAndIndexInt(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.executeInt:(Lcom/oracle/truffle/api/frame/VirtualFrame;)I
istore 5
start local 5 1: aload 0
aload 2
aload 3
iload 5
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
2: iload 5
3: ireturn
end local 5 4: StackMap locals:
StackMap stack: com.oracle.truffle.api.nodes.UnexpectedResultException
astore 5
start local 5 5: aload 0
aload 2
aload 3
aload 5
invokevirtual com.oracle.truffle.api.nodes.UnexpectedResultException.getResult:()Ljava/lang/Object;
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
6: aload 5
athrow
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 7 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 7 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 7 2 target Ljava/lang/Object;
0 7 3 index Ljava/lang/Object;
0 7 4 receiver Ljava/lang/Object;
1 4 5 value I
5 7 5 e Lcom/oracle/truffle/api/nodes/UnexpectedResultException;
Exception table:
from to target type
0 3 4 Class com.oracle.truffle.api.nodes.UnexpectedResultException
Exceptions:
throws com.oracle.truffle.api.nodes.UnexpectedResultException
MethodParameters:
Name Flags
frame
target
index
receiver
protected int executeWithTargetAndIndexInt(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Object, int, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;ILjava/lang/Object;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.executeInt:(Lcom/oracle/truffle/api/frame/VirtualFrame;)I
istore 5
start local 5 1: aload 0
aload 2
iload 3
iload 5
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;)V
2: iload 5
3: ireturn
end local 5 4: StackMap locals:
StackMap stack: com.oracle.truffle.api.nodes.UnexpectedResultException
astore 5
start local 5 5: aload 0
aload 2
iload 3
aload 5
invokevirtual com.oracle.truffle.api.nodes.UnexpectedResultException.getResult:()Ljava/lang/Object;
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;)V
6: aload 5
athrow
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 7 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 7 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 7 2 target Ljava/lang/Object;
0 7 3 index I
0 7 4 receiver Ljava/lang/Object;
1 4 5 value I
5 7 5 e Lcom/oracle/truffle/api/nodes/UnexpectedResultException;
Exception table:
from to target type
0 3 4 Class com.oracle.truffle.api.nodes.UnexpectedResultException
Exceptions:
throws com.oracle.truffle.api.nodes.UnexpectedResultException
MethodParameters:
Name Flags
frame
target
index
receiver
protected double executeWithTargetAndIndexDouble(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)D
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.executeDouble:(Lcom/oracle/truffle/api/frame/VirtualFrame;)D
dstore 5
start local 5 1: aload 0
aload 2
aload 3
dload 5
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
2: dload 5
3: dreturn
end local 5 4: StackMap locals:
StackMap stack: com.oracle.truffle.api.nodes.UnexpectedResultException
astore 5
start local 5 5: aload 0
aload 2
aload 3
aload 5
invokevirtual com.oracle.truffle.api.nodes.UnexpectedResultException.getResult:()Ljava/lang/Object;
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
6: aload 5
athrow
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 7 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 7 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 7 2 target Ljava/lang/Object;
0 7 3 index Ljava/lang/Object;
0 7 4 receiver Ljava/lang/Object;
1 4 5 value D
5 7 5 e Lcom/oracle/truffle/api/nodes/UnexpectedResultException;
Exception table:
from to target type
0 3 4 Class com.oracle.truffle.api.nodes.UnexpectedResultException
Exceptions:
throws com.oracle.truffle.api.nodes.UnexpectedResultException
MethodParameters:
Name Flags
frame
target
index
receiver
protected double executeWithTargetAndIndexDouble(com.oracle.truffle.api.frame.VirtualFrame, java.lang.Object, int, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;Ljava/lang/Object;ILjava/lang/Object;)D
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.executeDouble:(Lcom/oracle/truffle/api/frame/VirtualFrame;)D
dstore 5
start local 5 1: aload 0
aload 2
iload 3
dload 5
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;)V
2: dload 5
3: dreturn
end local 5 4: StackMap locals:
StackMap stack: com.oracle.truffle.api.nodes.UnexpectedResultException
astore 5
start local 5 5: aload 0
aload 2
iload 3
aload 5
invokevirtual com.oracle.truffle.api.nodes.UnexpectedResultException.getResult:()Ljava/lang/Object;
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;)V
6: aload 5
athrow
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 7 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 7 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
0 7 2 target Ljava/lang/Object;
0 7 3 index I
0 7 4 receiver Ljava/lang/Object;
1 4 5 value D
5 7 5 e Lcom/oracle/truffle/api/nodes/UnexpectedResultException;
Exception table:
from to target type
0 3 4 Class com.oracle.truffle.api.nodes.UnexpectedResultException
Exceptions:
throws com.oracle.truffle.api.nodes.UnexpectedResultException
MethodParameters:
Name Flags
frame
target
index
receiver
public final void executeWithTargetAndIndexAndValue(java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
1: return
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/WriteElementNode;
0 2 1 target Ljava/lang/Object;
0 2 2 index Ljava/lang/Object;
0 2 3 value Ljava/lang/Object;
MethodParameters:
Name Flags
target
index
value
public final void executeWithTargetAndIndexAndValue(java.lang.Object, int, java.lang.Object);
descriptor: (Ljava/lang/Object;ILjava/lang/Object;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
aload 3
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.executeWithTargetAndIndexAndValue:(Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;)V
1: return
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/WriteElementNode;
0 2 1 target Ljava/lang/Object;
0 2 2 index I
0 2 3 value Ljava/lang/Object;
MethodParameters:
Name Flags
target
index
value
public final void executeWithTargetAndIndexAndValue(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.typeCacheNode:Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
astore 5
start local 5 1: goto 7
2: StackMap locals: com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode
StackMap stack:
aload 5
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode.guard:(Ljava/lang/Object;)Z
istore 6
start local 6 3: iload 6
ifeq 6
4: aload 5
aload 1
aload 2
aload 3
aload 4
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode.executeWithTargetAndIndexUnguarded:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/access/WriteElementNode;)V
5: return
end local 6 6: StackMap locals:
StackMap stack:
aload 5
getfield com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode.typeCacheNext:Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
astore 5
StackMap locals:
StackMap stack:
7: aload 5
ifnonnull 2
end local 5 8: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
9: aload 0
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.specialize:(Ljava/lang/Object;)Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
astore 5
start local 5 10: aload 5
aload 1
aload 2
aload 3
aload 4
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode.executeWithTargetAndIndexUnguarded:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/access/WriteElementNode;)V
11: 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 12 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 12 1 target Ljava/lang/Object;
0 12 2 index Ljava/lang/Object;
0 12 3 value Ljava/lang/Object;
0 12 4 receiver Ljava/lang/Object;
1 8 5 c Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
3 6 6 guard Z
10 12 5 specialization Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.ExplodeLoop()
MethodParameters:
Name Flags
target
index
value
receiver
public final void executeWithTargetAndIndexAndValue(java.lang.Object, int, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.typeCacheNode:Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
astore 5
start local 5 1: goto 7
2: StackMap locals: com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode
StackMap stack:
aload 5
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode.guard:(Ljava/lang/Object;)Z
istore 6
start local 6 3: iload 6
ifeq 6
4: aload 5
aload 1
iload 2
aload 3
aload 4
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode.executeWithTargetAndIndexUnguarded:(Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/access/WriteElementNode;)V
5: return
end local 6 6: StackMap locals:
StackMap stack:
aload 5
getfield com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode.typeCacheNext:Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
astore 5
StackMap locals:
StackMap stack:
7: aload 5
ifnonnull 2
end local 5 8: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
9: aload 0
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.specialize:(Ljava/lang/Object;)Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
astore 5
start local 5 10: aload 5
aload 1
iload 2
aload 3
aload 4
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode.executeWithTargetAndIndexUnguarded:(Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/access/WriteElementNode;)V
11: 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 12 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 12 1 target Ljava/lang/Object;
0 12 2 index I
0 12 3 value Ljava/lang/Object;
0 12 4 receiver Ljava/lang/Object;
1 8 5 c Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
3 6 6 guard Z
10 12 5 specialization Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.ExplodeLoop()
MethodParameters:
Name Flags
target
index
value
receiver
private com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode specialize(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=7, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.api.CompilerAsserts.neverPartOfCompilation:()V
1: aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.getLock:()Ljava/util/concurrent/locks/Lock;
astore 2
start local 2 2: aload 2
invokeinterface java.util.concurrent.locks.Lock.lock:()V
3: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.typeCacheNode:Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
astore 3
start local 3 4: aload 3
astore 4
start local 4 5: goto 11
6: StackMap locals: java.util.concurrent.locks.Lock com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode
StackMap stack:
aload 4
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode.guard:(Ljava/lang/Object;)Z
ifeq 10
7: aload 4
astore 6
8: aload 2
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
9: aload 6
areturn
10: StackMap locals:
StackMap stack:
aload 4
getfield com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode.typeCacheNext:Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
astore 4
StackMap locals:
StackMap stack:
11: aload 4
ifnonnull 6
end local 4 12: aload 1
aload 3
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.makeTypeCacheNode:(Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;)Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
astore 4
start local 4 13: aload 0
aload 4
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.insert:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
pop
14: aload 0
aload 4
putfield com.oracle.truffle.js.nodes.access.WriteElementNode.typeCacheNode:Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
15: aload 4
aload 1
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode.guard:(Ljava/lang/Object;)Z
ifne 17
16: invokestatic com.oracle.truffle.js.runtime.Errors.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
17: StackMap locals:
StackMap stack:
aload 4
astore 6
18: aload 2
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
19: aload 6
areturn
end local 4 end local 3 20: StackMap locals: com.oracle.truffle.js.nodes.access.WriteElementNode java.lang.Object java.util.concurrent.locks.Lock
StackMap stack: java.lang.Throwable
astore 5
21: aload 2
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
22: aload 5
athrow
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/WriteElementNode;
0 23 1 target Ljava/lang/Object;
2 23 2 lock Ljava/util/concurrent/locks/Lock;
4 20 3 currentHead Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
5 12 4 c Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
13 20 4 newCacheNode Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
Exception table:
from to target type
3 8 20 any
10 18 20 any
MethodParameters:
Name Flags
target
private static com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode makeTypeCacheNode(java.lang.Object, com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode);
descriptor: (Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;)Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokestatic com.oracle.truffle.js.runtime.objects.JSDynamicObject.isJSDynamicObject:(Ljava/lang/Object;)Z
ifeq 2
1: new com.oracle.truffle.js.nodes.access.WriteElementNode$JSObjectWriteElementTypeCacheNode
dup
aload 1
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$JSObjectWriteElementTypeCacheNode.<init>:(Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;)V
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokestatic com.oracle.truffle.js.runtime.JSRuntime.isString:(Ljava/lang/Object;)Z
ifeq 4
3: new com.oracle.truffle.js.nodes.access.WriteElementNode$StringWriteElementTypeCacheNode
dup
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$StringWriteElementTypeCacheNode.<init>:(Ljava/lang/Class;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;)V
areturn
4: StackMap locals:
StackMap stack:
aload 0
instanceof java.lang.Boolean
ifeq 6
5: new com.oracle.truffle.js.nodes.access.WriteElementNode$BooleanWriteElementTypeCacheNode
dup
aload 1
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$BooleanWriteElementTypeCacheNode.<init>:(Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;)V
areturn
6: StackMap locals:
StackMap stack:
aload 0
instanceof java.lang.Number
ifeq 8
7: new com.oracle.truffle.js.nodes.access.WriteElementNode$NumberWriteElementTypeCacheNode
dup
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$NumberWriteElementTypeCacheNode.<init>:(Ljava/lang/Class;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;)V
areturn
8: StackMap locals:
StackMap stack:
aload 0
instanceof com.oracle.truffle.js.runtime.Symbol
ifeq 10
9: new com.oracle.truffle.js.nodes.access.WriteElementNode$SymbolWriteElementTypeCacheNode
dup
aload 1
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$SymbolWriteElementTypeCacheNode.<init>:(Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;)V
areturn
10: StackMap locals:
StackMap stack:
aload 0
instanceof com.oracle.truffle.js.runtime.BigInt
ifeq 12
11: new com.oracle.truffle.js.nodes.access.WriteElementNode$BigIntWriteElementTypeCacheNode
dup
aload 1
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$BigIntWriteElementTypeCacheNode.<init>:(Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;)V
areturn
12: StackMap locals:
StackMap stack:
aload 0
instanceof com.oracle.truffle.api.interop.TruffleObject
ifeq 15
13: getstatic com.oracle.truffle.js.nodes.access.WriteElementNode.$assertionsDisabled:Z
ifne 14
aload 0
invokestatic com.oracle.truffle.js.runtime.JSRuntime.isForeignObject:(Ljava/lang/Object;)Z
ifne 14
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
14: StackMap locals:
StackMap stack:
new com.oracle.truffle.js.nodes.access.WriteElementNode$TruffleObjectWriteElementTypeCacheNode
dup
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$TruffleObjectWriteElementTypeCacheNode.<init>:(Ljava/lang/Class;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;)V
areturn
15: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.js.nodes.access.WriteElementNode.$assertionsDisabled:Z
ifne 16
aload 0
invokestatic com.oracle.truffle.js.runtime.JSRuntime.isJavaPrimitive:(Ljava/lang/Object;)Z
ifne 16
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
16: StackMap locals:
StackMap stack:
new com.oracle.truffle.js.nodes.access.WriteElementNode$JavaObjectWriteElementTypeCacheNode
dup
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$JavaObjectWriteElementTypeCacheNode.<init>:(Ljava/lang/Class;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 target Ljava/lang/Object;
0 17 1 next Lcom/oracle/truffle/js/nodes/access/WriteElementNode$WriteElementTypeCacheNode;
MethodParameters:
Name Flags
target
next
static com.oracle.truffle.js.nodes.access.WriteElementNode$ArrayWriteElementCacheNode makeArrayCacheNode(com.oracle.truffle.api.object.DynamicObject, com.oracle.truffle.js.runtime.array.ScriptArray, com.oracle.truffle.js.nodes.access.WriteElementNode$ArrayWriteElementCacheNode);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokestatic com.oracle.truffle.js.runtime.builtins.JSSlowArray.isJSSlowArray:(Lcom/oracle/truffle/api/object/DynamicObject;)Z
ifne 1
aload 0
invokestatic com.oracle.truffle.js.runtime.builtins.JSSlowArgumentsArray.isJSSlowArgumentsObject:(Lcom/oracle/truffle/api/object/DynamicObject;)Z
ifeq 2
1: StackMap locals:
StackMap stack:
new com.oracle.truffle.js.nodes.access.WriteElementNode$ExactArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$ExactArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.oracle.truffle.js.runtime.array.ScriptArray.isLengthNotWritable:()Z
ifne 3
aload 1
invokevirtual com.oracle.truffle.js.runtime.array.ScriptArray.isExtensible:()Z
ifne 4
3: StackMap locals:
StackMap stack:
new com.oracle.truffle.js.nodes.access.WriteElementNode$ExactArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$ExactArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
4: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.LazyRegexResultArray
ifeq 6
5: new com.oracle.truffle.js.nodes.access.WriteElementNode$LazyRegexResultArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$LazyRegexResultArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
6: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.LazyRegexResultIndicesArray
ifeq 8
7: new com.oracle.truffle.js.nodes.access.WriteElementNode$LazyRegexResultIndicesArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$LazyRegexResultIndicesArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
8: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.AbstractConstantArray
ifeq 10
9: new com.oracle.truffle.js.nodes.access.WriteElementNode$ConstantArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$ConstantArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
10: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.HolesIntArray
ifeq 12
11: new com.oracle.truffle.js.nodes.access.WriteElementNode$HolesIntArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$HolesIntArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
12: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.HolesDoubleArray
ifeq 14
13: new com.oracle.truffle.js.nodes.access.WriteElementNode$HolesDoubleArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$HolesDoubleArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
14: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.HolesJSObjectArray
ifeq 16
15: new com.oracle.truffle.js.nodes.access.WriteElementNode$HolesJSObjectArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$HolesJSObjectArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
16: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.HolesObjectArray
ifeq 18
17: new com.oracle.truffle.js.nodes.access.WriteElementNode$HolesObjectArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$HolesObjectArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
18: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.AbstractIntArray
ifeq 20
19: new com.oracle.truffle.js.nodes.access.WriteElementNode$IntArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$IntArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
20: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.AbstractDoubleArray
ifeq 22
21: new com.oracle.truffle.js.nodes.access.WriteElementNode$DoubleArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$DoubleArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
22: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.AbstractObjectArray
ifeq 24
23: new com.oracle.truffle.js.nodes.access.WriteElementNode$ObjectArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$ObjectArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
24: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.AbstractJSObjectArray
ifeq 26
25: new com.oracle.truffle.js.nodes.access.WriteElementNode$JSObjectArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$JSObjectArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
26: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.dyn.AbstractWritableArray
ifeq 28
27: new com.oracle.truffle.js.nodes.access.WriteElementNode$WritableArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$WritableArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
28: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.TypedArray
ifeq 40
29: aload 1
instanceof com.oracle.truffle.js.runtime.array.TypedArray$AbstractUint32Array
ifeq 31
30: new com.oracle.truffle.js.nodes.access.WriteElementNode$Uint32ArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$Uint32ArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
31: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.TypedArray$AbstractUint8ClampedArray
ifeq 33
32: new com.oracle.truffle.js.nodes.access.WriteElementNode$Uint8ClampedArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$Uint8ClampedArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
33: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.TypedArray$TypedIntArray
ifeq 35
34: new com.oracle.truffle.js.nodes.access.WriteElementNode$TypedIntArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$TypedIntArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
35: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.TypedArray$TypedFloatArray
ifeq 37
36: new com.oracle.truffle.js.nodes.access.WriteElementNode$TypedFloatArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$TypedFloatArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
37: StackMap locals:
StackMap stack:
aload 1
instanceof com.oracle.truffle.js.runtime.array.TypedArray$TypedBigIntArray
ifeq 39
38: new com.oracle.truffle.js.nodes.access.WriteElementNode$TypedBigIntArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$TypedBigIntArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
39: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.js.runtime.Errors.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
40: StackMap locals:
StackMap stack:
new com.oracle.truffle.js.nodes.access.WriteElementNode$ExactArrayWriteElementCacheNode
dup
aload 1
aload 2
invokespecial com.oracle.truffle.js.nodes.access.WriteElementNode$ExactArrayWriteElementCacheNode.<init>:(Lcom/oracle/truffle/js/runtime/array/ScriptArray;Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 target Lcom/oracle/truffle/api/object/DynamicObject;
0 41 1 array Lcom/oracle/truffle/js/runtime/array/ScriptArray;
0 41 2 next Lcom/oracle/truffle/js/nodes/access/WriteElementNode$ArrayWriteElementCacheNode;
MethodParameters:
Name Flags
target
array
next
public com.oracle.truffle.js.nodes.JavaScriptNode getTarget();
descriptor: ()Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
public com.oracle.truffle.js.nodes.JavaScriptNode getElement();
descriptor: ()Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
public com.oracle.truffle.js.nodes.JavaScriptNode getValue();
descriptor: ()Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
public com.oracle.truffle.js.runtime.JSContext getContext();
descriptor: ()Lcom/oracle/truffle/js/runtime/JSContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.context:Lcom/oracle/truffle/js/runtime/JSContext;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
public boolean isStrict();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.isStrict:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
public boolean writeOwn();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.writeOwn:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
boolean isSuperProperty();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
instanceof com.oracle.truffle.js.nodes.access.SuperPropertyReferenceNode
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
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=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.targetNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.cloneUninitialized:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.indexNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.cloneUninitialized:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.cloneUninitialized:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.getContext:()Lcom/oracle/truffle/js/runtime/JSContext;
aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.isStrict:()Z
1: aload 0
invokevirtual com.oracle.truffle.js.nodes.access.WriteElementNode.writeOwn:()Z
2: invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.create:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/runtime/JSContext;ZZ)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 3 1 materializedTags Ljava/util/Set<Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;>;
Signature: (Ljava/util/Set<Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;>;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
MethodParameters:
Name Flags
materializedTags
public boolean isResultAlwaysOfType(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.js.nodes.access.WriteElementNode.valueNode:Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 1
invokevirtual com.oracle.truffle.js.nodes.JavaScriptNode.isResultAlwaysOfType:(Ljava/lang/Class;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
0 1 1 clazz Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
clazz
public static com.oracle.truffle.js.nodes.access.WriteElementNode createCachedInterop(com.oracle.truffle.api.TruffleLanguage$LanguageReference<com.oracle.truffle.js.lang.JavaScriptLanguage>);
descriptor: (Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference;)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.api.TruffleLanguage$LanguageReference.get:()Lcom/oracle/truffle/api/TruffleLanguage;
checkcast com.oracle.truffle.js.lang.JavaScriptLanguage
invokevirtual com.oracle.truffle.js.lang.JavaScriptLanguage.getJSContext:()Lcom/oracle/truffle/js/runtime/JSContext;
iconst_1
invokestatic com.oracle.truffle.js.nodes.access.WriteElementNode.create:(Lcom/oracle/truffle/js/runtime/JSContext;Z)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 languageRef Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference<Lcom/oracle/truffle/js/lang/JavaScriptLanguage;>;
Signature: (Lcom/oracle/truffle/api/TruffleLanguage$LanguageReference<Lcom/oracle/truffle/js/lang/JavaScriptLanguage;>;)Lcom/oracle/truffle/js/nodes/access/WriteElementNode;
MethodParameters:
Name Flags
languageRef
}
SourceFile: "WriteElementNode.java"
NestMembers:
com.oracle.truffle.js.nodes.access.WriteElementNode$AbstractTypedIntArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$ArrayClassGuardCachedArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$ArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$BigIntWriteElementTypeCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$BooleanWriteElementTypeCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$ConstantArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$DoubleArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$ExactArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$HolesDoubleArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$HolesIntArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$HolesJSObjectArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$HolesObjectArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$IntArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$JSObjectArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$JSObjectWriteElementTypeCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$JavaObjectWriteElementTypeCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$LazyRegexResultArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$LazyRegexResultIndicesArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$NumberWriteElementTypeCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$ObjectArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$RecursiveCachedArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$StringWriteElementTypeCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$SymbolWriteElementTypeCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$ToPropertyKeyCachedWriteElementTypeCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$TruffleObjectWriteElementTypeCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$TypedBigIntArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$TypedFloatArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$TypedIntArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$Uint32ArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$Uint8ClampedArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$WritableArrayWriteElementCacheNode com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode
InnerClasses:
public abstract CompilationFinal = com.oracle.truffle.api.CompilerDirectives$CompilationFinal of com.oracle.truffle.api.CompilerDirectives
public abstract LanguageReference = com.oracle.truffle.api.TruffleLanguage$LanguageReference of com.oracle.truffle.api.TruffleLanguage
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node
private abstract AbstractTypedIntArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$AbstractTypedIntArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private abstract ArrayClassGuardCachedArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$ArrayClassGuardCachedArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
abstract ArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$ArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private BigIntWriteElementTypeCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$BigIntWriteElementTypeCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private BooleanWriteElementTypeCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$BooleanWriteElementTypeCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private ConstantArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$ConstantArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private DoubleArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$DoubleArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private ExactArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$ExactArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private HolesDoubleArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$HolesDoubleArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private HolesIntArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$HolesIntArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private HolesJSObjectArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$HolesJSObjectArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private HolesObjectArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$HolesObjectArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private IntArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$IntArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private JSObjectArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$JSObjectArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private JSObjectWriteElementTypeCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$JSObjectWriteElementTypeCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private JavaObjectWriteElementTypeCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$JavaObjectWriteElementTypeCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private LazyRegexResultArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$LazyRegexResultArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private LazyRegexResultIndicesArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$LazyRegexResultIndicesArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private NumberWriteElementTypeCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$NumberWriteElementTypeCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private ObjectArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$ObjectArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private abstract RecursiveCachedArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$RecursiveCachedArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private StringWriteElementTypeCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$StringWriteElementTypeCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private SymbolWriteElementTypeCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$SymbolWriteElementTypeCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private abstract ToPropertyKeyCachedWriteElementTypeCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$ToPropertyKeyCachedWriteElementTypeCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
TruffleObjectWriteElementTypeCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$TruffleObjectWriteElementTypeCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private TypedBigIntArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$TypedBigIntArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private TypedFloatArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$TypedFloatArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private TypedIntArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$TypedIntArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private Uint32ArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$Uint32ArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private Uint8ClampedArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$Uint8ClampedArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
private WritableArrayWriteElementCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$WritableArrayWriteElementCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
abstract WriteElementTypeCacheNode = com.oracle.truffle.js.nodes.access.WriteElementNode$WriteElementTypeCacheNode of com.oracle.truffle.js.nodes.access.WriteElementNode
public abstract JSToPropertyKeyWrapperNode = com.oracle.truffle.js.nodes.cast.JSToPropertyKeyNode$JSToPropertyKeyWrapperNode of com.oracle.truffle.js.nodes.cast.JSToPropertyKeyNode
public final WriteElementTag = com.oracle.truffle.js.nodes.instrumentation.JSTags$WriteElementTag of com.oracle.truffle.js.nodes.instrumentation.JSTags
public abstract AbstractUint32Array = com.oracle.truffle.js.runtime.array.TypedArray$AbstractUint32Array of com.oracle.truffle.js.runtime.array.TypedArray
public abstract AbstractUint8ClampedArray = com.oracle.truffle.js.runtime.array.TypedArray$AbstractUint8ClampedArray of com.oracle.truffle.js.runtime.array.TypedArray
public abstract TypedBigIntArray = com.oracle.truffle.js.runtime.array.TypedArray$TypedBigIntArray of com.oracle.truffle.js.runtime.array.TypedArray
public abstract TypedFloatArray = com.oracle.truffle.js.runtime.array.TypedArray$TypedFloatArray of com.oracle.truffle.js.runtime.array.TypedArray
public abstract TypedIntArray = com.oracle.truffle.js.runtime.array.TypedArray$TypedIntArray of com.oracle.truffle.js.runtime.array.TypedArray