Package com.ibm.wala.shrikeBT.shrikeCT
Class CTCompiler
- java.lang.Object
-
- com.ibm.wala.shrikeBT.Compiler
-
- com.ibm.wala.shrikeBT.shrikeCT.CTCompiler
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.ibm.wala.shrikeBT.Compiler
Compiler.Output
-
-
Field Summary
-
Fields inherited from interface com.ibm.wala.shrikeBT.Constants
ACC_ABSTRACT, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, 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
-
Methods inherited from class com.ibm.wala.shrikeBT.Compiler
compile, getAuxiliaryMethods, getClassType, getOutput, setClassHierarchy, setPresetConstants
-
-
-
-
Method Detail
-
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
protected int allocateConstantPoolString(String v)
- Specified by:
allocateConstantPoolString
in classCompiler
-
allocateConstantPoolClassType
protected int allocateConstantPoolClassType(String c)
- Specified by:
allocateConstantPoolClassType
in classCompiler
-
allocateConstantPoolMethodType
protected int allocateConstantPoolMethodType(String c)
- Specified by:
allocateConstantPoolMethodType
in classCompiler
-
allocateConstantPoolMethodHandle
protected int allocateConstantPoolMethodHandle(ConstantPoolParser.ReferenceToken c)
- Specified by:
allocateConstantPoolMethodHandle
in classCompiler
-
convertTypeToClass
public static String convertTypeToClass(String s)
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
public static CTCompiler make(ClassWriter cw, MethodData md)
-
allocateConstantPoolField
protected int allocateConstantPoolField(String c, String name, String type)
- Specified by:
allocateConstantPoolField
in classCompiler
-
allocateConstantPoolMethod
protected int allocateConstantPoolMethod(String c, String name, String sig)
- Specified by:
allocateConstantPoolMethod
in classCompiler
-
allocateConstantPoolInterfaceMethod
protected int allocateConstantPoolInterfaceMethod(String c, String name, String sig)
- Specified by:
allocateConstantPoolInterfaceMethod
in classCompiler
-
createHelperMethod
protected String createHelperMethod(boolean isStatic, String sig)
- Specified by:
createHelperMethod
in classCompiler
-
-