Class IREqualityExpressionCompiler
- java.lang.Object
-
- gw.internal.gosu.ir.compiler.bytecode.AbstractBytecodeCompiler
-
- gw.internal.gosu.ir.compiler.bytecode.expression.IREqualityExpressionCompiler
-
public class IREqualityExpressionCompiler extends AbstractBytecodeCompiler
-
-
Field Summary
-
Fields inherited from class gw.internal.gosu.ir.compiler.bytecode.AbstractBytecodeCompiler
OBJECT_TYPE
-
-
Constructor Summary
Constructors Constructor Description IREqualityExpressionCompiler()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static voidcompare(org.objectweb.asm.MethodVisitor mv, int opcode, IRExpression root)private static voidcompareDoubles(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, IRExpression root)private static voidcompareFloats(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, IRExpression root)private static voidcompareInts(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, IRExpression root)private static voidcompareLongs(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, IRExpression root)private static voidcompareNonIntPrimitives(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, int compareOp, IRExpression root)private static voidcompareObjects(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, IRExpression root)private static voidcompareToNull(boolean equals, IRExpression expr, IRBytecodeContext context, IRExpression root)static voidcompile(IREqualityExpression expression, IRBytecodeContext context)static booleanisInteger0(IRExpression expr, IRType lhsType)-
Methods inherited from class gw.internal.gosu.ir.compiler.bytecode.AbstractBytecodeCompiler
compileConditionAssignment, getIns, isNotPartOfBooleanExpr, isWide, negateOpcode
-
-
-
-
Method Detail
-
compile
public static void compile(IREqualityExpression expression, IRBytecodeContext context)
-
compareToNull
private static void compareToNull(boolean equals, IRExpression expr, IRBytecodeContext context, IRExpression root)
-
compareInts
private static void compareInts(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, IRExpression root)
-
isInteger0
public static boolean isInteger0(IRExpression expr, IRType lhsType)
-
compareLongs
private static void compareLongs(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, IRExpression root)
-
compareDoubles
private static void compareDoubles(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, IRExpression root)
-
compareFloats
private static void compareFloats(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, IRExpression root)
-
compareNonIntPrimitives
private static void compareNonIntPrimitives(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, int compareOp, IRExpression root)
-
compareObjects
private static void compareObjects(boolean equals, IRExpression lhs, IRExpression rhs, IRBytecodeContext context, IRExpression root)
-
compare
private static void compare(org.objectweb.asm.MethodVisitor mv, int opcode, IRExpression root)
-
-