Closed Bug 741742 Opened 13 years ago Closed 12 years ago

Investigate if we really need to ship d3dx9.dll with Windows builds

Categories

(Core :: Graphics: CanvasWebGL, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 808785

People

(Reporter: bjacob, Unassigned)

References

Details

(Whiteboard: webgl-next)

On Windows, ANGLE's dependency on d3dx9.dll might be non-essential and we might be able to do without that DLL. That would allow us to significantly reduce the Firefox download size. Anyone wanting to investigate this: our copy of ANGLE is under gfx/angle/.
In the latest Firefox 12.0 builds, d3dx9_43.dll is 1.9MB (and D3DCompiler_43.dll, which isn't in question here, is 2.0MB). If I remove it from the .zip version, the reduction in size of the .zip is 850k. YMMV with the installer build. Gerv (on Linux)
Blocks: 647453
Severity: normal → enhancement
Whiteboard: webgl-next
Very helpful description of what has to be done here: http://code.google.com/p/angleproject/issues/detail?id=311#c1 Pasting it here: We've currently got the following usage of D3DX: * D3DXCompileShader (Blit.cpp) * should use D3DCompile like Program.cpp does (simple) * D3DXGetShaderConstantTable (Program.cpp) * replace with usage D3D11 reflection API (also part of d3dcompiler_xx.dll) * this is a non-trivial amount of work. * D3DXFloat16To32Array (Context.cpp) * re-implement Float16 to Float32 conversions (medium) * D3DXLoadSurfaceFromSurface (Texture.cpp) * re-implement surface loading for all the cases we currently use (medium)
ANGLE revision 1314 fixes it. So we just need to take advantage of this. This is bug 808785. It's a mentored bug, it wants a taker.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.