On 2013/11/21 08:09:26, Sven Panne wrote:
DBC

https://codereview.chromium.org/78813003/diff/1/src/code-stubs.cc
File src/code-stubs.cc (right):

https://codereview.chromium.org/78813003/diff/1/src/code-stubs.cc#newcode1220
src/code-stubs.cc:1220: ElementsKind kinds[3] =
Drop the "3"...

https://codereview.chromium.org/78813003/diff/1/src/code-stubs.cc#newcode1222
src/code-stubs.cc:1222: for (int i = 0; i < 3; i++) {
... and use

    for (size_t i = 0; i < ARRAY_SIZE(foo); i++) {

here.

https://codereview.chromium.org/78813003/diff/1/src/math.js
File src/math.js (right):

https://codereview.chromium.org/78813003/diff/1/src/math.js#newcode203
src/math.js:203: function SetupTrigonometricFunctions() {
Hmmm, all this lazy-evaluation-by-hand magic is highly complicated.
Furthermore,
every context using sin/cos will get its own tables, which is wasteful.

Another much easier and less wasteful approach is keeping the tables per
Isolate
on the native side and use them in every context.

https://codereview.chromium.org/78813003/diff/1/src/math.js#newcode241
src/math.js:241: // Let's assume this loop does not terminate.
Hmmm, I am still not convinced that the loop will always terminate. The
"proof"
here is not a real proof, what would be needed is the calculation of the
actual
error propagation through the expressions in the loop body plus some strictly
monotonic value derived from it.

Let's see how this works out in practice...

Talked to Sven offline. I'll redo this in a different CL.

https://codereview.chromium.org/78813003/

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to