mirror of
https://github.com/aNNiMON/Own-Programming-Language-Tutorial.git
synced 2024-09-20 00:34:20 +03:00
Добавлена оптимация выражений с побитовым сдвигом
This commit is contained in:
parent
865fe46523
commit
cc4bd1f6af
@ -117,6 +117,14 @@ public class ExpressionSimplification extends OptimizationVisitor<Void> implemen
|
||||
return new ValueExpression(0);
|
||||
}
|
||||
|
||||
// x >> 0 to x, x << 0 to x
|
||||
if (isIntegerValue(s.expr2, 0) &&
|
||||
(s.operation == BinaryExpression.Operator.LSHIFT ||
|
||||
s.operation == BinaryExpression.Operator.RSHIFT)) {
|
||||
simplificationsCount++;
|
||||
return s.expr1;
|
||||
}
|
||||
|
||||
return super.visit(s, t);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user