}
}
if (is_empty(self.alternative)) self.alternative = null;
- var negated = self.condition.negate(compressor);
+ var negated = self.condition.negate(compressor).optimize(compressor);
var negated_is_best = best_of(self.condition, negated) === negated;
if (self.alternative && negated_is_best) {
negated_is_best = false; // because we already do the switch here.
if (aborts(self.alternative)) {
var body = self.body;
self.body = self.alternative;
- self.condition = negated_is_best ? negated : self.condition.negate(compressor);
+ self.condition = negated_is_best ? negated : self.condition.negate(compressor).optimize(compressor);
self.alternative = null;
return make_node(AST_BlockStatement, self, {
body: [ self, body ]