@Override public void replaceExpression(Expression old, Expression newExpression) { if (old instanceof Variable && newExpression instanceof Variable) { Variable oldVar = (Variable) old; Variable newVar = (Variable) newExpression; if (oldVar.getName() == name && oldVar.getMinValue() == minValue && oldVar.getMaxValue() == maxValue) { name = newVar.getName(); minValue = newVar.getMinValue(); maxValue = newVar.getMaxValue(); } } }
@Override public Variable copy() { Variable v = new Variable(this.name); v.global = global; v.setMaxValue(this.getMaxValue()); v.setMinValue(this.getMinValue()); return v; }
top.setSource(hw); top.setName(exnode.getName()); if (exnode.getMinValue() != null) { double min = Double.parseDouble(exnode.getMinValue()); double max = Double.parseDouble(exnode.getMaxValue()); int prec = Math.max(wordlengthoptimization.Util.bitsRequiredForFraction(exnode.getMinValue()), wordlengthoptimization.Util.bitsRequiredForFraction(exnode.getMaxValue())); hw.setType(new FixedPoint(wordlengthoptimization.Util.bitsRequired(min, max) + prec, prec, min < 0));
) { name = newVar.getName(); minValue = newVar.getMinValue(); maxValue = newVar.getMaxValue(); bladeIndex = 0;