public class BinaryIntExpressionHelper
extends BinaryExpressionWriter
Emits optimized bytecode for integer binary operations.
| Fields inherited from class | Fields |
|---|---|
class BinaryExpressionWriter |
stdCompareCodes |
| Constructor and description |
|---|
BinaryIntExpressionHelper(WriterController wc)Creates an integer-specialized binary expression helper. |
BinaryIntExpressionHelper(WriterController wc, MethodCaller arraySet, MethodCaller arrayGet)
|
| Type Params | Return Type | Name and description |
|---|---|---|
|
protected void |
doubleTwoOperands(org.objectweb.asm.MethodVisitor mv)* Duplicates the two operands already on the operand stack. * *
|
|
protected int |
getBitwiseOperationBytecode(int type)* Returns the bitwise opcode for the supplied token. * *
|
|
protected int |
getCompareCode()*
|
|
protected ClassNode |
getDevisionOpResultType()*
|
|
protected ClassNode |
getNormalOpResultType()*
|
|
protected int |
getShiftOperationBytecode(int type)* Returns the shift opcode for the supplied token. * *
|
|
protected int |
getStandardOperationBytecode(int type)* Returns the arithmetic opcode for the supplied token. * *
|
|
protected void |
removeTwoOperands(org.objectweb.asm.MethodVisitor mv)* Removes the two operands already on the operand stack. * *
|
|
protected boolean |
supportsDivision()*
|
|
protected void |
writeMinusMinus(org.objectweb.asm.MethodVisitor mv)* Emits a prefix/postfix decrement. * *
|
|
protected void |
writePlusPlus(org.objectweb.asm.MethodVisitor mv)* Emits a prefix/postfix increment. * *
|
|
protected boolean |
writeSpaceship(int type, boolean simulate)writes the spaceship operator, type should be COMPARE_TO |
|
protected boolean |
writeStdCompare(int type, boolean simulate)writes a std compare. |
Creates an integer-specialized binary expression helper.
wc - the active writer controller
* Duplicates the two operands already on the operand stack. * *
mv - the current method visitor* Returns the bitwise opcode for the supplied token. * *
type - the normalized token index
**
*
*
* Returns the shift opcode for the supplied token. * *
type - the normalized token index
** Returns the arithmetic opcode for the supplied token. * *
type - the normalized token index
** Removes the two operands already on the operand stack. * *
mv - the current method visitor*
* Emits a prefix/postfix decrement. * *
mv - the current method visitor* Emits a prefix/postfix increment. * *
mv - the current method visitorwrites the spaceship operator, type should be COMPARE_TO
type - the token typewrites a std compare. This involves the tokens IF_ICMPEQ, IF_ICMPNE, IF_ICMPEQ, IF_ICMPNE, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE and IF_ICMPLT
type - the token typeCopyright © 2003-2026 The Apache Software Foundation. All rights reserved.