Class CTCompiler
java.lang.Object
com.ibm.wala.shrike.shrikeBT.Compiler
com.ibm.wala.shrike.shrikeBT.shrikeCT.CTCompiler
-
Nested Class Summary
Nested classes/interfaces inherited from class com.ibm.wala.shrike.shrikeBT.Compiler
Compiler.Output
-
Field Summary
Fields inherited from interface com.ibm.wala.shrike.shrikeBT.Constants
ACC_ABSTRACT, ACC_ANNOTATION, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_MODULE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_VOLATILE, CONSTANT_Class, CONSTANT_Double, CONSTANT_FieldRef, CONSTANT_Float, CONSTANT_Integer, CONSTANT_InterfaceMethodRef, CONSTANT_InvokeDynamic, CONSTANT_Long, CONSTANT_MethodHandle, CONSTANT_MethodRef, CONSTANT_MethodType, CONSTANT_NameAndType, CONSTANT_String, CONSTANT_Utf8, indexedTypes, indexedTypes_T, MAYBE, NO, OP_aaload, OP_aastore, OP_aconst_null, OP_aload, OP_aload_0, OP_aload_1, OP_aload_2, OP_aload_3, OP_anewarray, OP_areturn, OP_arraylength, OP_astore, OP_astore_0, OP_astore_1, OP_astore_2, OP_astore_3, OP_athrow, OP_baload, OP_bastore, OP_bipush, OP_caload, OP_castore, OP_checkcast, OP_d2f, OP_d2i, OP_d2l, OP_dadd, OP_daload, OP_dastore, OP_dcmpg, OP_dcmpl, OP_dconst_0, OP_dconst_1, OP_ddiv, OP_dload, OP_dload_0, OP_dload_1, OP_dload_2, OP_dload_3, OP_dmul, OP_dneg, OP_drem, OP_dreturn, OP_dstore, OP_dstore_0, OP_dstore_1, OP_dstore_2, OP_dstore_3, OP_dsub, OP_dup, OP_dup_x1, OP_dup_x2, OP_dup2, OP_dup2_x1, OP_dup2_x2, OP_f2d, OP_f2i, OP_f2l, OP_fadd, OP_faload, OP_fastore, OP_fcmpg, OP_fcmpl, OP_fconst_0, OP_fconst_1, OP_fconst_2, OP_fdiv, OP_fload, OP_fload_0, OP_fload_1, OP_fload_2, OP_fload_3, OP_fmul, OP_fneg, OP_frem, OP_freturn, OP_fstore, OP_fstore_0, OP_fstore_1, OP_fstore_2, OP_fstore_3, OP_fsub, OP_getfield, OP_getstatic, OP_goto, OP_goto_w, OP_i2b, OP_i2c, OP_i2d, OP_i2f, OP_i2l, OP_i2s, OP_iadd, OP_iaload, OP_iand, OP_iastore, OP_iconst_0, OP_iconst_1, OP_iconst_2, OP_iconst_3, OP_iconst_4, OP_iconst_5, OP_iconst_m1, OP_idiv, OP_if_acmpeq, OP_if_acmpne, OP_if_icmpeq, OP_if_icmpge, OP_if_icmpgt, OP_if_icmple, OP_if_icmplt, OP_if_icmpne, OP_ifeq, OP_ifge, OP_ifgt, OP_ifle, OP_iflt, OP_ifne, OP_ifnonnull, OP_ifnull, OP_iinc, OP_iload, OP_iload_0, OP_iload_1, OP_iload_2, OP_iload_3, OP_imul, OP_ineg, OP_instanceof, OP_invokedynamic, OP_invokeinterface, OP_invokespecial, OP_invokestatic, OP_invokevirtual, OP_ior, OP_irem, OP_ireturn, OP_ishl, OP_ishr, OP_istore, OP_istore_0, OP_istore_1, OP_istore_2, OP_istore_3, OP_isub, OP_iushr, OP_ixor, OP_jsr, OP_jsr_w, OP_l2d, OP_l2f, OP_l2i, OP_ladd, OP_laload, OP_land, OP_lastore, OP_lcmp, OP_lconst_0, OP_lconst_1, OP_ldc, OP_ldc_w, OP_ldc2_w, OP_ldiv, OP_lload, OP_lload_0, OP_lload_1, OP_lload_2, OP_lload_3, OP_lmul, OP_lneg, OP_lookupswitch, OP_lor, OP_lrem, OP_lreturn, OP_lshl, OP_lshr, OP_lstore, OP_lstore_0, OP_lstore_1, OP_lstore_2, OP_lstore_3, OP_lsub, OP_lushr, OP_lxor, OP_monitorenter, OP_monitorexit, OP_multianewarray, OP_new, OP_newarray, OP_nop, OP_pop, OP_pop2, OP_putfield, OP_putstatic, OP_ret, OP_return, OP_saload, OP_sastore, OP_sipush, OP_swap, OP_tableswitch, OP_wide, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TYPE_boolean, TYPE_boolean_index, TYPE_byte, TYPE_byte_index, TYPE_char, TYPE_char_index, TYPE_Class, TYPE_double, TYPE_double_index, TYPE_Error, TYPE_Exception, TYPE_float, TYPE_float_index, TYPE_int, TYPE_int_index, TYPE_long, TYPE_long_index, TYPE_MethodHandle, TYPE_MethodType, TYPE_null, TYPE_Object, TYPE_Object_index, TYPE_RuntimeException, TYPE_short, TYPE_short_index, TYPE_String, TYPE_Throwable, TYPE_unknown, TYPE_void, YES
-
Method Summary
Modifier and TypeMethodDescriptionprotected int
protected int
allocateConstantPoolDouble
(double v) protected int
allocateConstantPoolField
(String c, String name, String type) protected int
allocateConstantPoolFloat
(float v) protected int
allocateConstantPoolInteger
(int v) protected int
allocateConstantPoolInterfaceMethod
(String c, String name, String sig) protected int
allocateConstantPoolInvokeDynamic
(BootstrapMethodsReader.BootstrapMethod b, String name, String type) protected int
allocateConstantPoolLong
(long v) protected int
allocateConstantPoolMethod
(String c, String name, String sig) protected int
protected int
protected int
static String
Convert a JVM type to the internal JVM class name (e.g., Ljava/lang/Object; to java/lang/Object)protected String
createHelperMethod
(boolean isStatic, String sig) static CTCompiler
make
(ClassWriter cw, MethodData md) Methods inherited from class com.ibm.wala.shrike.shrikeBT.Compiler
compile, getAuxiliaryMethods, getClassType, getOutput, setClassHierarchy, setPresetConstants
-
Method Details
-
allocateConstantPoolInteger
protected int allocateConstantPoolInteger(int v) - Specified by:
allocateConstantPoolInteger
in classCompiler
-
allocateConstantPoolFloat
protected int allocateConstantPoolFloat(float v) - Specified by:
allocateConstantPoolFloat
in classCompiler
-
allocateConstantPoolLong
protected int allocateConstantPoolLong(long v) - Specified by:
allocateConstantPoolLong
in classCompiler
-
allocateConstantPoolDouble
protected int allocateConstantPoolDouble(double v) - Specified by:
allocateConstantPoolDouble
in classCompiler
-
allocateConstantPoolString
- Specified by:
allocateConstantPoolString
in classCompiler
-
allocateConstantPoolClassType
- Specified by:
allocateConstantPoolClassType
in classCompiler
-
allocateConstantPoolMethodType
- Specified by:
allocateConstantPoolMethodType
in classCompiler
-
allocateConstantPoolMethodHandle
- Specified by:
allocateConstantPoolMethodHandle
in classCompiler
-
allocateConstantPoolInvokeDynamic
protected int allocateConstantPoolInvokeDynamic(BootstrapMethodsReader.BootstrapMethod b, String name, String type) - Specified by:
allocateConstantPoolInvokeDynamic
in classCompiler
-
convertTypeToClass
Convert a JVM type to the internal JVM class name (e.g., Ljava/lang/Object; to java/lang/Object)- Throws:
IllegalArgumentException
- if s is null
-
make
-
allocateConstantPoolField
- Specified by:
allocateConstantPoolField
in classCompiler
-
allocateConstantPoolMethod
- Specified by:
allocateConstantPoolMethod
in classCompiler
-
allocateConstantPoolInterfaceMethod
- Specified by:
allocateConstantPoolInterfaceMethod
in classCompiler
-
createHelperMethod
- Specified by:
createHelperMethod
in classCompiler
-