I added the map heap-checks in both pow and sqrt. If we later decide that these are (security wise) not necessary we can take them out (here and other places)
and take the performance improvement of that.


http://codereview.chromium.org/661179/diff/12/13
File src/ia32/codegen-ia32.cc (right):

http://codereview.chromium.org/661179/diff/12/13#newcode6076
src/ia32/codegen-ia32.cc:6076: if (CpuFeatures::IsSupported(SSE2)) {
On 2010/03/08 08:22:05, Lasse Reichstein wrote:
You might want a x87-FPU version as well.
I'm not sure whether we still create snapshots where SSE2 is not
assumed.

When I create the snapshot version I do get the improved performance so
I guess that we do assume SSE2 when building snapshots? I could still
make an optimized version using the FPU though - but in many existing
places we only have the SSE2 version anyway.

http://codereview.chromium.org/661179/diff/12/13#newcode6094
src/ia32/codegen-ia32.cc:6094: if (FLAG_debug_code) {
On 2010/03/08 08:22:05, Lasse Reichstein wrote:
You need to check that the argument is a HeapNumber every time, not
just in
debug mode. Arguments to runtime functions must be assumed to be
potentially
crafted by a malicious source.

Done.

http://codereview.chromium.org/661179/diff/12/13#newcode6112
src/ia32/codegen-ia32.cc:6112: end.Jump(&result);
On 2010/03/08 08:22:05, Lasse Reichstein wrote:
Could you move this runtime call somewhere else, so that the fast path
is just
falling through, without any jumps. E.g., after the unconditional jump
in line
6092.
I'm not sure how that would interact with the virtual frame, though.
As discussed offline I will leave this here to avoid complicating the
code.

http://codereview.chromium.org/661179

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to