Closed Bug 1041418 Opened 10 years ago Closed 9 years ago

Update Shumway's JS optimization for TypeScript

Categories

(Firefox Graveyard :: Shumway, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: cpeterson, Assigned: tschneider)

References

Details

(Keywords: perf)

The master branch currently has two JS optimization passes:

1. Remove `if (DEBUG)` code in release builds with Esprima compiler
2. Optimize JS code with Closure compiler

We need to enable these optimizations on the nat branch. Till says Closure does not able to optimize TypeScripts' generated JS very well. We might need to investigate other optimizers.
We should also evaluate the TypeScript compiler:

http://blogs.msdn.com/b/typescript/archive/2014/07/21/new-compiler-and-moving-to-github.aspx
Summary: Update Shumway's JS optimization passes for TypeScript → Update Shumway's JS optimization for TypeScript
Assignee: nobody → mbebenita
Status: NEW → ASSIGNED
I should mention that the TS compiler team added an optimization pass to remove unnecessary rest arguments. These were causing lots of allocations in the JS engine, since they couldn't be optimized away at the JS level.

https://github.com/Microsoft/TypeScript/issues/498

In other news, I've already added closure support to the build system. This will constant fold all references to `debug` or `release`, but hasn't been tested, yet.

I'll need info yury for now to see if it can be integrated into the build system.
Flags: needinfo?(ydelendik)
Depends on: 1063367
Since Tobias is assigned to the blocking bug, I'll reassign this also.
Assignee: mbebenita → schneider
Flags: needinfo?(ydelendik) → needinfo?(schneider)
Flags: needinfo?(schneider)
Tobias: was this bug fixed by bug 1063367?
Flags: needinfo?(schneider)
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Flags: needinfo?(schneider)
Resolution: --- → FIXED
Product: Firefox → Firefox Graveyard
You need to log in before you can comment on or make changes to this bug.