Exemple #1
0
 /*
  * @see com.ibm.wala.ssa.SSAInstruction#copyForSSA(com.ibm.wala.ssa.SSAInstructionFactory, int[], int[])
  */
 @Override
 public SSAInstruction copyForSSA(SSAInstructionFactory insts, int[] defs, int[] uses)
     throws IllegalArgumentException {
   if (uses != null && uses.length != 1) {
     throw new IllegalArgumentException("if non-null, uses.length must be 1");
   }
   return insts.ThrowInstruction(iindex, uses == null ? getException() : uses[0]);
 }
 @Override
 public SSAInstruction copyForSSA(SSAInstructionFactory insts, int[] defs, int[] uses) {
   // result == -1 for void-returning methods, which are the only calls
   // that have a single value def.
   return insts.InvokeInstruction(
       defs == null || result == -1 ? result : defs[0],
       uses == null ? params : uses,
       defs == null ? exception : defs[result == -1 ? 0 : 1],
       site);
 }
 @Override
 public SSAInstruction copyForSSA(SSAInstructionFactory insts, int[] defs, int[] uses) {
   if (defs != null && defs.length == 0) {
     throw new IllegalArgumentException("(defs != null) and (defs.length == 0)");
   }
   if (uses != null && uses.length == 0) {
     throw new IllegalArgumentException("(uses != null) and (uses.length == 0)");
   }
   return insts.CheckCastInstruction(
       defs == null ? result : defs[0], uses == null ? val : uses[0], declaredResultTypes, isPEI);
 }