JS/Inlining: in RedundantStatementElimination remove unnecessary side effect check for binary expressions

This commit is contained in:
Alexey Andreev
2016-06-07 11:48:15 +03:00
parent f0e64f8e38
commit b1fcad6dcc
@@ -79,7 +79,6 @@ class RedundantStatementElimination(private val root: JsFunction) {
} }
is JsBinaryOperation -> { is JsBinaryOperation -> {
if (expression.sideEffects == SideEffectKind.AFFECTS_STATE) {
when (expression.operator) { when (expression.operator) {
JsBinaryOperator.BIT_AND, JsBinaryOperator.BIT_AND,
JsBinaryOperator.BIT_OR, JsBinaryOperator.BIT_OR,
@@ -125,10 +124,6 @@ class RedundantStatementElimination(private val root: JsFunction) {
JsBinaryOperator.ASG_SHRU -> listOf(expression) JsBinaryOperator.ASG_SHRU -> listOf(expression)
} }
} }
else {
listOf(expression)
}
}
is JsInvocation -> { is JsInvocation -> {
if (expression.sideEffects != SideEffectKind.AFFECTS_STATE) { if (expression.sideEffects != SideEffectKind.AFFECTS_STATE) {