Here's the C implementation for fdlibm: http://www.netlib.org/fdlibm/e_pow.c
What is it worth when v8 lowered its cos / sine tables, it pulled fdlibm from the implementation to do this: https://code.google.com/p/v8/source/detail?r=22918
From comments commenting on changes: "Implement trigonometric functions using the fdlibm port."
Mozilla, on the other hand, calls the cstdlib math functions, which will have variable assembly and system performance (for example, it may or may not cause chip-level implementations of transcendental functions). While C # bytecode seems to make explicit references to chip level functions when possible. However, "pow" is not one of them, iirc (does not seem to have a chip level function) and is implemented elsewhere.
See also: https://bugzilla.mozilla.org/show_bug.cgi?id=967709
For a discussion of cos / sine in the Mozilla community, a comparison of the Mozilla implementation and the old version of v8.
See also: How is Math.Pow () implemented in the .NET Framework?
Internal functions are the chip level actually implemented on the processor. (We no longer need search tables.)
Alexander Pritchard
source share