Out of curiosity, what's the ultimate purpose for this? I wasn't aware
that
any of V8's supported targets could do anything special with signalling
NaNs.
With signaling NaN as hole, we can skip almost all the canonicalizations
that
were required previously, leading to an overall 5% improvement on Kraken.
https://codereview.chromium.org/863633002/diff/80001/src/arm64/lithium-codegen-arm64.cc#newcode3609
src/arm64/lithium-codegen-arm64.cc:3609: __ Cmp(scratch,
Operand(kHoleNanInt64, RelocInfo::NONE64));
I doubt that this will have a significant effect on performance, but it
will
add a couple of instructions. (Probably movz + movk + cmp rather than just
cmn.)
I'll run a quick benchmark to see if it has an impact; from memory, I think
this
function is quite important for Kraken.
This is required for correctness now, because the kHoleNanInt64 changed. If
you
can come up with a better sequence here, that'd be great.
https://codereview.chromium.org/863633002/
--
--
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/d/optout.