Class StackMapFrameCodeStream
java.lang.Object
org.aspectj.org.eclipse.jdt.internal.compiler.codegen.CodeStream
org.aspectj.org.eclipse.jdt.internal.compiler.codegen.StackMapFrameCodeStream
- Direct Known Subclasses:
TypeAnnotationCodeStream
-
Nested Class Summary
-
Field Summary
Modifier and TypeFieldDescriptionint[]
int
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.codegen.CodeStream
allLocalsCounter, bCodeStream, classFile, classFileOffset, constantPool, countLabels, exceptionLabels, exceptionLabelsCounter, generateAttributes, ImplicitThis, labels, LABELS_INCREMENT, lambdaExpression, lastAbruptCompletion, lastEntryPC, lastSwitchCumulativeSyntheticVars, lineNumberEnd, lineNumberStart, lineSeparatorPositions, locals, LOCALS_INCREMENT, maxFieldCount, maxLocals, methodDeclaration, pcToSourceMap, pcToSourceMapSize, position, preserveUnusedLocals, RESTART_CODE_GEN_FOR_UNUSED_LOCALS_MODE, RESTART_IN_WIDE_MODE, stackDepth, stackMax, startingClassFileOffset, switchSaveTypeBindings, targetLevel, visibleLocals, wideMode
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addDefinitelyAssignedVariables(Scope scope, int initStateIndex)
void
addExceptionMarker(int pc, TypeBinding typeBinding)
void
addFramePosition(int pc)
void
addVariable(LocalVariableBinding localBinding)
void
areturn()
void
athrow()
void
dreturn()
void
freturn()
void
generateClassLiteralAccessForType(Scope scope, TypeBinding accessedType, FieldBinding syntheticFieldBinding)
Macro for building a class descriptor objectvoid
generateOuterAccess(Object[] mappingSequence, ASTNode invocationSite, Binding target, Scope scope)
int[]
void
goto_(BranchLabel label)
We didn't call it goto, because there is a conflit with the goto keywordvoid
goto_w(BranchLabel label)
boolean
void
void
initializeMaxLocals(MethodBinding methodBinding)
void
ireturn()
void
lreturn()
void
optimizeBranch(int oldPosition, BranchLabel lbl)
void
void
pushExceptionOnStack(TypeBinding binding)
void
pushStateIndex(int naturalExitMergeInitStateIndex)
void
recordExpressionType(TypeBinding typeBinding, int delta, boolean adjustStackDepth)
void
removeFramePosition(int pc)
void
removeNotDefinitelyAssignedVariables(Scope scope, int initStateIndex)
void
void
void
void
void
return_()
protected void
writePosition(BranchLabel label)
protected void
writePosition(BranchLabel label, int forwardReference)
protected void
writeSignedWord(int pos, int value)
protected void
writeWidePosition(BranchLabel label)
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.codegen.CodeStream
_invoke, aaload, aastore, aconst_null, addLabel, addVisibleLocalVariable, aload, aload_0, aload_1, aload_2, aload_3, anewarray, arrayAt, arrayAtPut, arraylength, astore, astore_0, astore_1, astore_2, astore_3, baload, bastore, bipush, caload, castore, checkcast, checkcast, checkcast, clearTypeBindingStack, d2f, d2i, d2l, dadd, daload, dastore, dcmpg, dcmpl, dconst_0, dconst_1, ddiv, decrStackSize, dload, dload_0, dload_1, dload_2, dload_3, dmul, dneg, drem, dstore, dstore_0, dstore_1, dstore_2, dstore_3, dsub, dup, dup_x1, dup_x2, dup2, dup2_x1, dup2_x2, exitUserScope, exitUserScope, f2d, f2i, f2l, fadd, faload, fastore, fcmpg, fcmpl, fconst_0, fconst_1, fconst_2, fdiv, fieldAccess, fload, fload_0, fload_1, fload_2, fload_3, fmul, fneg, frem, fstore, fstore_0, fstore_1, fstore_2, fstore_3, fsub, generateBoxingConversion, generateCodeAttributeForProblemMethod, generateConstant, generateEmulatedReadAccessForField, generateEmulatedWriteAccessForField, generateEmulationForConstructor, generateEmulationForField, generateEmulationForMethod, generateImplicitConversion, generateInlinedValue, generateInlinedValue, generateInlinedValue, generateInlinedValue, generateInlinedValue, generateInlinedValue, generateInlinedValue, generateInlinedValue, generateReturnBytecode, generateStringConcatenationAppend, generateSyntheticBodyForArrayClone, generateSyntheticBodyForArrayConstructor, generateSyntheticBodyForConstructorAccess, generateSyntheticBodyForDeserializeLambda, generateSyntheticBodyForEnumInitializationMethod, generateSyntheticBodyForEnumValueOf, generateSyntheticBodyForEnumValues, generateSyntheticBodyForFactoryMethod, generateSyntheticBodyForFieldReadAccess, generateSyntheticBodyForFieldWriteAccess, generateSyntheticBodyForMethodAccess, generateSyntheticBodyForRecordEquals, generateSyntheticBodyForRecordHashCode, generateSyntheticBodyForRecordToString, generateSyntheticBodyForSwitchTable, generateSyntheticEnclosingInstanceValues, generateSyntheticOuterArgumentValues, generateUnboxingConversion, generateWideRevertedConditionalBranch, getBaseTypeValue, getConstantPoolDeclaringClass, getConstantPoolDeclaringClass, getContents, getPosition, getTYPE, i2b, i2c, i2d, i2f, i2l, i2s, iadd, iaload, iand, iastore, iconst_0, iconst_1, iconst_2, iconst_3, iconst_4, iconst_5, iconst_m1, idiv, if_acmpeq, if_acmpne, if_icmpeq, if_icmpge, if_icmpgt, if_icmple, if_icmplt, if_icmpne, ifeq, ifge, ifgt, ifle, iflt, ifne, ifnonnull, ifnull, iinc, iload, iload_0, iload_1, iload_2, iload_3, imul, ineg, inlineForwardReferencesFromLabelsTargeting, insertionIndex, instance_of, instance_of, invoke, invoke, invoke, invoke, invokeAccessibleObjectSetAccessible, invokeArrayNewInstance, invokeAutoCloseableClose, invokeClassForName, invokeClassGetDeclaredConstructor, invokeClassGetDeclaredField, invokeClassGetDeclaredMethod, invokeDynamic, invokeDynamic, invokeEnumOrdinal, invokeIterableIterator, invokeJavaLangAssertionErrorConstructor, invokeJavaLangAssertionErrorDefaultConstructor, invokeJavaLangClassDesiredAssertionStatus, invokeJavaLangEnumvalueOf, invokeJavaLangEnumValues, invokeJavaLangErrorConstructor, invokeJavaLangIncompatibleClassChangeErrorDefaultConstructor, invokeJavaLangReflectConstructorNewInstance, invokeJavaLangReflectFieldGetter, invokeJavaLangReflectFieldSetter, invokeJavaLangReflectMethodInvoke, invokeJavaUtilIteratorHasNext, invokeJavaUtilIteratorNext, invokeNoClassDefFoundErrorStringConstructor, invokeObjectEquals, invokeObjectGetClass, invokeStringConcatenationAppendForType, invokeStringConcatenationDefaultConstructor, invokeStringConcatenationStringConstructor, invokeStringConcatenationToString, invokeStringEquals, invokeStringHashCode, invokeStringIntern, invokeStringValueOf, invokeSystemArraycopy, invokeThrowableAddSuppressed, invokeThrowableGetMessage, ior, irem, isDefinitelyAssigned, ishl, ishr, istore, istore_0, istore_1, istore_2, istore_3, isub, iushr, ixor, jsr, jsr_w, l2d, l2f, l2i, ladd, laload, land, lastore, lcmp, lconst_0, lconst_1, ldc, ldc, ldc, ldc, ldc2_w, ldc2_w, ldcForIndex, ldiv, lload, lload_0, lload_1, lload_2, lload_3, lmul, lneg, load, load, loadInt, lookupswitch, lor, lrem, lshl, lshr, lstore, lstore_0, lstore_1, lstore_2, lstore_3, lsub, lushr, lxor, monitorenter, monitorexit, multianewarray, new_, new_, newarray, newArray, newArray, newJavaLangAssertionError, newJavaLangError, newJavaLangIncompatibleClassChangeError, newNoClassDefFoundError, newStringContatenation, newWrapperFor, nop, pop, pop2, pushOnStack, record, recordExpressionType, recordPositionsFrom, recordPositionsFrom, registerExceptionHandler, removeUnusedPcToSourceMapEntries, removeVariable, reset, reset, resetForProblemClinit, ret, saload, sastore, sendOperator, sipush, sort, store, swap, tableswitch, throwAnyException, toString, writeSignedWord
-
Field Details
-
stateIndexes
public int[] stateIndexes -
stateIndexesCounter
public int stateIndexesCounter -
exceptionMarkers
-
stackDepthMarkers
-
stackMarkers
-
-
Constructor Details
-
StackMapFrameCodeStream
-
-
Method Details
-
addDefinitelyAssignedVariables
- Overrides:
addDefinitelyAssignedVariables
in classCodeStream
-
addExceptionMarker
-
addFramePosition
public void addFramePosition(int pc) -
optimizeBranch
- Overrides:
optimizeBranch
in classCodeStream
-
removeFramePosition
public void removeFramePosition(int pc) -
addVariable
- Overrides:
addVariable
in classCodeStream
-
recordExpressionType
- Overrides:
recordExpressionType
in classCodeStream
-
generateClassLiteralAccessForType
public void generateClassLiteralAccessForType(Scope scope, TypeBinding accessedType, FieldBinding syntheticFieldBinding)Macro for building a class descriptor object- Overrides:
generateClassLiteralAccessForType
in classCodeStream
-
generateOuterAccess
public void generateOuterAccess(Object[] mappingSequence, ASTNode invocationSite, Binding target, Scope scope)- Overrides:
generateOuterAccess
in classCodeStream
-
getExceptionMarkers
-
getFramePositions
public int[] getFramePositions() -
hasFramePositions
public boolean hasFramePositions() -
init
- Overrides:
init
in classCodeStream
-
initializeMaxLocals
- Overrides:
initializeMaxLocals
in classCodeStream
- Parameters:
methodBinding
- the given method binding to initialize the max locals
-
popStateIndex
public void popStateIndex() -
pushStateIndex
public void pushStateIndex(int naturalExitMergeInitStateIndex) -
removeNotDefinitelyAssignedVariables
- Overrides:
removeNotDefinitelyAssignedVariables
in classCodeStream
-
reset
- Overrides:
reset
in classCodeStream
-
writePosition
- Overrides:
writePosition
in classCodeStream
-
writePosition
- Overrides:
writePosition
in classCodeStream
-
writeSignedWord
protected void writeSignedWord(int pos, int value)- Overrides:
writeSignedWord
in classCodeStream
-
writeWidePosition
- Overrides:
writeWidePosition
in classCodeStream
-
areturn
public void areturn()- Overrides:
areturn
in classCodeStream
-
ireturn
public void ireturn()- Overrides:
ireturn
in classCodeStream
-
lreturn
public void lreturn()- Overrides:
lreturn
in classCodeStream
-
freturn
public void freturn()- Overrides:
freturn
in classCodeStream
-
dreturn
public void dreturn()- Overrides:
dreturn
in classCodeStream
-
return_
public void return_()- Overrides:
return_
in classCodeStream
-
athrow
public void athrow()- Overrides:
athrow
in classCodeStream
-
pushExceptionOnStack
- Overrides:
pushExceptionOnStack
in classCodeStream
-
goto_
Description copied from class:CodeStream
We didn't call it goto, because there is a conflit with the goto keyword- Overrides:
goto_
in classCodeStream
-
goto_w
- Overrides:
goto_w
in classCodeStream
-
resetInWideMode
public void resetInWideMode()- Overrides:
resetInWideMode
in classCodeStream
-
resetForCodeGenUnusedLocals
public void resetForCodeGenUnusedLocals()- Overrides:
resetForCodeGenUnusedLocals
in classCodeStream
-
resetSecretLocals
public void resetSecretLocals()
-