Reviewers: William Hesse,
Description:
X64: Allow the type recording binary op stub to create heapnumber results.
Please review this at http://codereview.chromium.org/6803010/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
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
86d57043a792aed976e5940490579da9a268b88b..d15736be27b8cc927bd826750f13a97d6db773ba
100644
--- a/src/x64/code-stubs-x64.cc
+++ b/src/x64/code-stubs-x64.cc
@@ -1423,8 +1423,11 @@ void
TypeRecordingBinaryOpStub::GenerateCallRuntimeCode(MacroAssembler* masm) {
void TypeRecordingBinaryOpStub::GenerateSmiStub(MacroAssembler* masm) {
Label not_smi;
-
- GenerateSmiCode(masm, ¬_smi, NO_HEAPNUMBER_RESULTS);
+ if (result_type_ == TRBinaryOpIC::HEAP_NUMBER) {
+ GenerateSmiCode(masm, ¬_smi, ALLOW_HEAPNUMBER_RESULTS);
+ } else {
+ GenerateSmiCode(masm, ¬_smi, NO_HEAPNUMBER_RESULTS);
+ }
__ bind(¬_smi);
GenerateTypeTransition(masm);
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev