aboutsummaryrefslogtreecommitdiff
path: root/tools/test-js-optimizer.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2011-12-20 18:49:42 -0800
committerAlon Zakai <alonzakai@gmail.com>2011-12-20 18:49:42 -0800
commit7953c8c6b8911647de68b4f22206650672cbca0a (patch)
tree4af22fc77553d08912639de4ac3ee5bca0be9146 /tools/test-js-optimizer.js
parentfadc6186ffca35a64b2cedb761439ae316af2972 (diff)
refactoring and fixes for running more tests in new o1 and o2 modes
Diffstat (limited to 'tools/test-js-optimizer.js')
-rw-r--r--tools/test-js-optimizer.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/tools/test-js-optimizer.js b/tools/test-js-optimizer.js
index 8c2ad183..8d10d222 100644
--- a/tools/test-js-optimizer.js
+++ b/tools/test-js-optimizer.js
@@ -160,4 +160,25 @@ function hoisting() {
somethingElse();
}
}
+var FS = {
+ absolutePath: function(relative, base) { // Don't touch this!
+ if (typeof relative !== 'string') return null;
+ if (base === undefined) base = FS.currentPath;
+ if (relative && relative[0] == '/') base = '';
+ var full = base + '/' + relative;
+ var parts = full.split('/').reverse();
+ var absolute = [''];
+ while (parts.length) {
+ var part = parts.pop();
+ if (part == '' || part == '.') {
+ // Nothing.
+ } else if (part == '..') {
+ if (absolute.length > 1) absolute.pop();
+ } else {
+ absolute.push(part);
+ }
+ }
+ return absolute.length == 1 ? '/' : absolute.join('/');
+ }
+}
// EMSCRIPTEN_GENERATED_FUNCTIONS: ["abc", "xyz", "xyz2", "expr", "loopy", "bits", "maths", "hoisting"]