Reviewers: Michael Starzinger,
Description:
Revert TranscendentalCacheStub changes in r16615.
BUG=
Please review this at https://codereview.chromium.org/23889013/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files (+8, -1 lines):
M src/x64/code-stubs-x64.cc
Index: src/x64/code-stubs-x64.cc
diff --git a/src/x64/code-stubs-x64.cc b/src/x64/code-stubs-x64.cc
index
f8c9506f4e76b0a859c034b76dc5973930b08037..00c5367a10d8bdbb9cbe44c4847330a1d4b3a418
100644
--- a/src/x64/code-stubs-x64.cc
+++ b/src/x64/code-stubs-x64.cc
@@ -1154,7 +1154,14 @@ void
TranscendentalCacheStub::Generate(MacroAssembler* masm) {
__ jmp(&loaded, Label::kNear);
__ bind(&input_not_smi);
- __ TaggedToI(rbx, rax, xmm1, TREAT_MINUS_ZERO_AS_ZERO, &runtime_call);
+ // Check if input is a HeapNumber.
+ __ LoadRoot(rbx, Heap::kHeapNumberMapRootIndex);
+ __ cmpq(rbx, FieldOperand(rax, HeapObject::kMapOffset));
+ __ j(not_equal, &runtime_call);
+ // Input is a HeapNumber. Push it on the FPU stack and load its
+ // bits into rbx.
+ __ fld_d(FieldOperand(rax, HeapNumber::kValueOffset));
+ __ movq(rbx, FieldOperand(rax, HeapNumber::kValueOffset));
__ movq(rdx, rbx);
__ bind(&loaded);
--
--
v8-dev mailing list
v8-dev@googlegroups.com
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 v8-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.