aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-03-08 18:17:14 -0800
committerAlon Zakai <alonzakai@gmail.com>2013-03-08 18:17:14 -0800
commitde3c3ca816dd92103802b9d222d00f561666208e (patch)
treedc34b51506025af5675db482cd7d2e6deecb5b37
parent0764a9d32f80ae30ad824dcdc20b174653d2b185 (diff)
for now, do not use rX as minified names, reserve that for registerize locals
-rw-r--r--tools/js-optimizer.js2
-rw-r--r--tools/js_optimizer.py2
2 files changed, 3 insertions, 1 deletions
diff --git a/tools/js-optimizer.js b/tools/js-optimizer.js
index fdc456f8..102ced8b 100644
--- a/tools/js-optimizer.js
+++ b/tools/js-optimizer.js
@@ -1540,7 +1540,7 @@ function registerize(ast) {
saved++;
} else {
reg = nextReg++;
- fullNames[reg] = (asm ? (asmData.vars[name] ? 'd' : 'i') : 'r') + reg; // TODO: even smaller names
+ fullNames[reg] = (asm ? (asmData.vars[name] ? 'd' : 'i') : 'r') + reg; // XXX need to ensure we do not override used globals
if (params[name]) paramRegs[reg] = 1;
}
varRegs[name] = reg;
diff --git a/tools/js_optimizer.py b/tools/js_optimizer.py
index bac693bf..6a2f4091 100644
--- a/tools/js_optimizer.py
+++ b/tools/js_optimizer.py
@@ -47,12 +47,14 @@ class Minifier:
for a in init_possibles:
for b in later_possibles:
if len(self.names) >= MAX_NAMES: break
+ if a == 'r' and b in string.digits: continue # TODO: minify registerize names
curr = a + b
if curr not in INVALID_2: self.names.append(curr)
for a in init_possibles:
for b in later_possibles:
for c in later_possibles:
if len(self.names) >= MAX_NAMES: break
+ if a == 'r' and b in string.digits and c in string.digits: continue # TODO: minify registerize names
curr = a + b + c
if curr not in INVALID_3: self.names.append(curr)
#print >> sys.stderr, self.names