/** * Constructs instance. Call {@code process()} to run. * * @param rm {@code non-null;} instance to process */ public IdenticalBlockCombiner(RopMethod rm) { ropMethod = rm; blocks = ropMethod.getBlocks(); newBlocks = blocks.getMutableCopy(); }
/** * Constructs instance. Call {@code process()} to run. * * @param rm {@code non-null;} instance to process */ public IdenticalBlockCombiner(RopMethod rm) { ropMethod = rm; blocks = ropMethod.getBlocks(); newBlocks = blocks.getMutableCopy(); }
/** * Constructs instance. Call {@code process()} to run. * * @param rm {@code non-null;} instance to process */ public IdenticalBlockCombiner(RopMethod rm) { ropMethod = rm; blocks = ropMethod.getBlocks(); newBlocks = blocks.getMutableCopy(); }
/** * Constructs instance. Call {@code process()} to run. * * @param rm {@code non-null;} instance to process */ public IdenticalBlockCombiner(RopMethod rm) { ropMethod = rm; blocks = ropMethod.getBlocks(); newBlocks = blocks.getMutableCopy(); }
/** * Constructs instance. Call {@code process()} to run. * * @param rm {@code non-null;} instance to process */ public IdenticalBlockCombiner(RopMethod rm) { ropMethod = rm; blocks = ropMethod.getBlocks(); newBlocks = blocks.getMutableCopy(); }
/** * Constructs instance. Call {@code process()} to run. * * @param rm {@code non-null;} instance to process */ public IdenticalBlockCombiner(RopMethod rm) { ropMethod = rm; blocks = ropMethod.getBlocks(); newBlocks = blocks.getMutableCopy(); }
/** * Constructs instance. Call {@code process()} to run. * * @param rm {@code non-null;} instance to process */ public IdenticalBlockCombiner(RopMethod rm) { ropMethod = rm; blocks = ropMethod.getBlocks(); newBlocks = blocks.getMutableCopy(); }
/** * Constructs instance. Call {@code process()} to run. * * @param rm {@code non-null;} instance to process */ public IdenticalBlockCombiner(RopMethod rm) { ropMethod = rm; blocks = ropMethod.getBlocks(); newBlocks = blocks.getMutableCopy(); }
/** * Constructs an instance. * * @param method {@code non-null;} the method to have block addresses for */ public BlockAddresses(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int maxLabel = blocks.getMaxLabel(); this.starts = new CodeAddress[maxLabel]; this.lasts = new CodeAddress[maxLabel]; this.ends = new CodeAddress[maxLabel]; setupArrays(method); }
/** * Constructs an instance. * * @param method {@code non-null;} the method to have block addresses for */ public BlockAddresses(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int maxLabel = blocks.getMaxLabel(); this.starts = new CodeAddress[maxLabel]; this.lasts = new CodeAddress[maxLabel]; this.ends = new CodeAddress[maxLabel]; setupArrays(method); }
/** * Constructs an instance. * * @param method {@code non-null;} the method to have block addresses for */ public BlockAddresses(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int maxLabel = blocks.getMaxLabel(); this.starts = new CodeAddress[maxLabel]; this.lasts = new CodeAddress[maxLabel]; this.ends = new CodeAddress[maxLabel]; setupArrays(method); }
/** * Constructs an instance. * * @param method {@code non-null;} the method to have block addresses for */ public BlockAddresses(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int maxLabel = blocks.getMaxLabel(); this.starts = new CodeAddress[maxLabel]; this.lasts = new CodeAddress[maxLabel]; this.ends = new CodeAddress[maxLabel]; setupArrays(method); }
/** * Constructs an instance. * * @param method {@code non-null;} the method to have block addresses for */ public BlockAddresses(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int maxLabel = blocks.getMaxLabel(); this.starts = new CodeAddress[maxLabel]; this.lasts = new CodeAddress[maxLabel]; this.ends = new CodeAddress[maxLabel]; setupArrays(method); }
/** * Constructs an instance. * * @param method {@code non-null;} the method to have block addresses for */ public BlockAddresses(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int maxLabel = blocks.getMaxLabel(); this.starts = new CodeAddress[maxLabel]; this.lasts = new CodeAddress[maxLabel]; this.ends = new CodeAddress[maxLabel]; setupArrays(method); }
/** * Constructs an instance. * * @param method {@code non-null;} the method to have block addresses for */ public BlockAddresses(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int maxLabel = blocks.getMaxLabel(); this.starts = new CodeAddress[maxLabel]; this.lasts = new CodeAddress[maxLabel]; this.ends = new CodeAddress[maxLabel]; setupArrays(method); }
/** {@inheritDoc} */ public boolean hasAnyCatches() { BasicBlockList blocks = method.getBlocks(); int size = blocks.size(); for (int i = 0; i < size; i++) { BasicBlock block = blocks.get(i); TypeList catches = block.getLastInsn().getCatches(); if (catches.size() != 0) { return true; } } return false; }
/** {@inheritDoc} */ public boolean hasAnyCatches() { BasicBlockList blocks = method.getBlocks(); int size = blocks.size(); for (int i = 0; i < size; i++) { BasicBlock block = blocks.get(i); TypeList catches = block.getLastInsn().getCatches(); if (catches.size() != 0) { return true; } } return false; }
/** {@inheritDoc} */ public boolean hasAnyCatches() { BasicBlockList blocks = method.getBlocks(); int size = blocks.size(); for (int i = 0; i < size; i++) { BasicBlock block = blocks.get(i); TypeList catches = block.getLastInsn().getCatches(); if (catches.size() != 0) { return true; } } return false; }
/** {@inheritDoc} */ public boolean hasAnyCatches() { BasicBlockList blocks = method.getBlocks(); int size = blocks.size(); for (int i = 0; i < size; i++) { BasicBlock block = blocks.get(i); TypeList catches = block.getLastInsn().getCatches(); if (catches.size() != 0) { return true; } } return false; }
/** {@inheritDoc} */ public boolean hasAnyCatches() { BasicBlockList blocks = method.getBlocks(); int size = blocks.size(); for (int i = 0; i < size; i++) { BasicBlock block = blocks.get(i); TypeList catches = block.getLastInsn().getCatches(); if (catches.size() != 0) { return true; } } return false; }