aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/compress.js9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/compress.js b/lib/compress.js
index a7a6172b..59c9128d 100644
--- a/lib/compress.js
+++ b/lib/compress.js
@@ -1118,6 +1118,15 @@ merge(Compressor.prototype, {
return self;
});
+ OPT(AST_While, function(self, compressor) {
+ if (!compressor.option("loops")) return self;
+ self = AST_DWLoop.prototype.optimize.call(self, compressor);
+ if (self instanceof AST_While) {
+ self = make_node(AST_For, self, self);
+ }
+ return self;
+ });
+
OPT(AST_For, function(self, compressor){
var cond = self.condition;
if (cond) {