substack/node-browserify — Issue #90: browserify very slow at startup with node 0.6.0
Author: sethml
Created: 2011-11-10 19:06:14+00:00
State: open

Browserify got really slow at startup with node 0.6.0 on OS X. I can't figure out why, and I've run out of time to work on this, so here's a braindump in case somebody else is trying to figure this out.

Details: node 0.6.0, browserify 1.7.6, dnode 0.9.2, OS X 10.7.2

Relevant code in server:

```javascript
var start = Date.now();
var b = require('browserify')({ require : ['dnode'] });
debug('browserify took: ' + (Date.now() - start) + 'ms.');
```

With node 0.6.0, I get: "browserify took: 11907ms". (Yes, 12 seconds!) With node 0.4.11, I get: "browserify took: 2079ms".

I got a profile with "node --prof app.js" followed by "node-v0.6.0/deps/v8/tools/mac-tick-processor" - see blow for the interesting part. My interpretation is that it's spending 37% of its time doing something (what?) in node, and 33% in _chmod, which is getting invoked from burrito somehow. I'm totally baffled by the _chmod calls - as far as I can tell, no Javascript invokes it, and it's only called in the node source in a very few places.

```
[Bottom up (heavy) profile]:
Note: percentage shows a share of a particular caller in the total
amount of its parent calls.
Callers occupying less than 2.0% are not shown.

ticks parent name
10360 37.1% /usr/local/bin/node
4372 42.2% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
3536 80.9% LazyCompile: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
3536 100.0% LazyCompile: *forEach native array.js:1019
3536 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
3536 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
630 14.4% Function: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
630 100.0% LazyCompile: *forEach native array.js:1019
629 99.8% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
629 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
200 4.6% LazyCompile: dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
200 100.0% LazyCompile: *forEach native array.js:1019
200 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
200 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
565 5.5% LazyCompile: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
564 99.8% LazyCompile: *forEach native array.js:1019
564 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
564 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
562 99.6% LazyCompile: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
401 3.9% Function: Module._compile module.js:362
383 95.5% LazyCompile: *Module._extensions..js module.js:448
383 100.0% Function: ~Module.load module.js:341
383 100.0% Function: Module._load module.js:274
383 100.0% Function: ~Module.require module.js:356
18 4.5% Function: ~Module._extensions..js module.js:448
18 100.0% Function: ~Module.load module.js:341
17 94.4% Function: Module._load module.js:274
17 100.0% Function: ~Module.require module.js:356
1 5.6% Function: ~Module._load module.js:274
1 100.0% Function: ~Module.require module.js:356

9153 32.8% _chmod
5515 60.3% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
4513 81.8% LazyCompile: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
4513 100.0% LazyCompile: *forEach native array.js:1019
4513 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
4513 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
760 13.8% Function: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
760 100.0% LazyCompile: *forEach native array.js:1019
755 99.3% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
755 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
234 4.2% LazyCompile: dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
234 100.0% LazyCompile: *forEach native array.js:1019
234 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
234 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102

1235 4.4% ___vfprintf
950 76.9% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
759 79.9% LazyCompile: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
759 100.0% LazyCompile: *forEach native array.js:1019
759 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
759 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
145 15.3% Function: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
145 100.0% LazyCompile: *forEach native array.js:1019
144 99.3% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
144 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
46 4.8% LazyCompile: dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
46 100.0% LazyCompile: *forEach native array.js:1019
46 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
46 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
31 2.5% Function: prog1 /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1288
16 51.6% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
13 81.3% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
9 69.2% Function: ~expr_ops /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1213
9 100.0% Function: ~maybe_conditional /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1217
4 30.8% Function: ~expr_op /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1201
3 75.0% Function: ~expr_ops /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1213
1 25.0% Function: ~expr_op /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1201
2 12.5% LazyCompile: *S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
2 100.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
2 100.0% Function: ~expr_ops /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1213
1 6.3% Function: ~S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
1 100.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
1 100.0% Function: ~expr_ops /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1213
3 9.7% Function: ~simple_statement /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:887
3 100.0% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:782
3 100.0% Function: ~S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
3 100.0% Function: ~block_ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:976
3 9.7% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:782
3 100.0% Function: ~S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
3 100.0% Function: ~block_ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:976
2 66.7% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:782
1 33.3% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:956
2 6.5% Function: ~subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
2 100.0% Function: ~subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
1 50.0% Function: ~subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
1 100.0% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
1 50.0% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
1 100.0% Function: ~S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
2 6.5% Function: ~as_name /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1153
2 100.0% Function: ~subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
2 100.0% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
2 100.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
2 6.5% Function: as_name /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1153
2 100.0% Function: ~subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
2 100.0% Function: ~subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
2 100.0% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
1 3.2% LazyCompile: *subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
1 100.0% LazyCompile: *subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
1 100.0% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
1 100.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
1 3.2% LazyCompile: *simple_statement /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:887
1 100.0% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:782
1 100.0% Function: ~S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
1 100.0% Function: ~block_ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:976
1 3.2% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:937
1 100.0% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:782
1 100.0% Function: ~block_ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:976
1 100.0% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:956

731 2.6% _mergesort
555 75.9% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
465 83.8% LazyCompile: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
465 100.0% LazyCompile: *forEach native array.js:1019
465 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
465 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
72 13.0% Function: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
72 100.0% LazyCompile: *forEach native array.js:1019
72 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
72 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
18 3.2% LazyCompile: dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
18 100.0% LazyCompile: *forEach native array.js:1019
18 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
18 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
15 2.1% Function: prog1 /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1288
7 46.7% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
4 57.1% LazyCompile: *S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
4 100.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
2 50.0% Function: ~expr_ops /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1213
1 25.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
1 25.0% Function: ~expr_op /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1201
2 28.6% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
2 100.0% Function: ~expr_ops /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1213
2 100.0% Function: ~maybe_conditional /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1217
1 14.3% Function: ~S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
1 100.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
1 100.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
4 26.7% Function: ~simple_statement /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:887
4 100.0% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:782
1 25.0% Function: ~if_ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:967
1 100.0% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:782
1 25.0% Function: ~block_ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:976
1 100.0% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:956
1 25.0% Function: ~S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
1 100.0% Function: ~block_ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:976
1 25.0% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1273
1 100.0% Function: ~parse /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:684
2 13.3% Function: as_name /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1153
2 100.0% LazyCompile: *subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
2 100.0% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
2 100.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
1 6.7% Function: ~subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
1 100.0% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
1 100.0% Function: ~S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
1 100.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
1 6.7% Function: ~as_name /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1153
1 100.0% Function: ~subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
1 100.0% Function: ~subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
1 100.0% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073

694 2.5% _lchflags
534 76.9% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
445 83.3% LazyCompile: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
445 100.0% LazyCompile: *forEach native array.js:1019
445 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
445 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
68 12.7% Function: ~dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
68 100.0% LazyCompile: *forEach native array.js:1019
68 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
68 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
21 3.9% LazyCompile: dst /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:180
21 100.0% LazyCompile: *forEach native array.js:1019
21 100.0% LazyCompile: *forEach /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:254
21 100.0% Function: walker /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/traverse/index.js:102
16 2.3% Function: prog1 /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1288
7 43.8% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
6 85.7% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
5 83.3% Function: ~expr_ops /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1213
5 100.0% Function: ~maybe_conditional /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1217
1 16.7% Function: ~expr_op /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1201
1 100.0% Function: ~expr_op /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1201
1 14.3% LazyCompile: *S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
1 100.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
1 100.0% Function: ~expr_ops /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1213
5 31.3% Function: as_name /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1153
5 100.0% Function: ~subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
5 100.0% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
3 60.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
1 20.0% LazyCompile: *S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
1 20.0% Function: ~S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
1 6.3% LazyCompile: *simple_statement /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:887
1 100.0% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:782
1 100.0% Function: ~S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
1 100.0% Function: ~block_ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:976
1 6.3% Function: ~subscripts /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1165
1 100.0% Function: /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1073
1 100.0% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
1 100.0% Function: ~expr_ops /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1213
1 6.3% Function: ~maybe_unary /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1181
1 100.0% Function: ~expr_ops /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1213
1 100.0% Function: ~maybe_conditional /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1217
1 100.0% LazyCompile: *maybe_assign /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:1241
1 6.3% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:782
1 100.0% Function: ~S.peeked /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:773
1 100.0% Function: ~block_ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:976
1 100.0% Function: ~ /Users/seth/development/service/node_modules/browserify/node_modules/detective/node_modules/burrito/node_modules/uglify-js/lib/parse-js.js:956
```