public static SsaMethod debugPhiPlacement(
      RopMethod rmeth,
      int paramWidth,
      boolean isStatic,
      boolean inPreserveLocals,
      TranslationAdvice inAdvice) {

    preserveLocals = inPreserveLocals;
    advice = inAdvice;

    return SsaConverter.testPhiPlacement(rmeth, paramWidth, isStatic);
  }
Runs the optimizer with a strategy to minimize the number of rop-form registers used by the end
result. Dex bytecode does not have instruction forms that take register numbers larger than 15
for all instructions. If we've produced a method that uses more than 16 registers, try again
with a different strategy to see if we can get under the bar. The end result will be much more
efficient.

@param rmeth method to process
@param paramWidth the total width, in register-units, of this method's parameters
@param isStatic true if this method has no 'this' pointer argument.
@param steps set of optional optimization steps to run
@return optimized method
android/android_framework/dex-maker/src/main/java/com/android/dx/ssa/Optimizer.java