Revision: 21516
Author:   [email protected]
Date:     Tue May 27 09:40:04 2014 UTC
Log:      Remove HType::HeapNumber from mutable heap numbers.

BUG=
[email protected]

Review URL: https://codereview.chromium.org/293353004
http://code.google.com/p/v8/source/detail?r=21516

Modified:
 /branches/bleeding_edge/src/hydrogen-instructions.h
 /branches/bleeding_edge/src/hydrogen.cc

=======================================
--- /branches/bleeding_edge/src/hydrogen-instructions.h Tue May 27 07:17:08 2014 UTC +++ /branches/bleeding_edge/src/hydrogen-instructions.h Tue May 27 09:40:04 2014 UTC
@@ -714,7 +714,6 @@
     if (r.IsTagged()) {
       HType t = type();
       if (t.IsSmi()) return Representation::Smi();
-      // TODO(mstarzinger): This is not correct for mutable HeapNumbers.
       if (t.IsHeapNumber()) return Representation::Double();
       if (t.IsHeapObject()) return r;
       return Representation::None();
@@ -5547,10 +5546,6 @@
       return Representation::Integer32();
     }
   }
-  // TODO(mstarzinger): Workaround until we track mutable HeapNumber types.
-  virtual Representation KnownOptimalRepresentation() V8_OVERRIDE {
-    return representation();
-  }

   virtual Handle<Map> GetMonomorphicJSObjectMap() {
     return known_initial_map_;
=======================================
--- /branches/bleeding_edge/src/hydrogen.cc     Tue May 27 07:48:36 2014 UTC
+++ /branches/bleeding_edge/src/hydrogen.cc     Tue May 27 09:40:04 2014 UTC
@@ -5443,7 +5443,6 @@
     checked_object = Add<HLoadNamedField>(
         checked_object, static_cast<HValue*>(NULL),
         access.WithRepresentation(Representation::Tagged()));
-    checked_object->set_type(HType::HeapNumber());
     // Load the double value from it.
     access = HObjectAccess::ForHeapNumberValue();
   }
@@ -5481,7 +5480,7 @@

       // TODO(hpayer): Allocation site pretenuring support.
       HInstruction* heap_number = Add<HAllocate>(heap_number_size,
-          HType::HeapNumber(),
+          HType::Tagged(),
           NOT_TENURED,
           HEAP_NUMBER_TYPE);
AddStoreMapConstant(heap_number, isolate()->factory()->heap_number_map());
@@ -5494,7 +5493,6 @@
// Already holds a HeapNumber; load the box and write its value field.
       HInstruction* heap_number = Add<HLoadNamedField>(
           checked_object, static_cast<HValue*>(NULL), heap_number_access);
-      heap_number->set_type(HType::HeapNumber());
       instr = New<HStoreNamedField>(heap_number,
                                     HObjectAccess::ForHeapNumberValue(),
                                     value, STORE_TO_INITIALIZED_ENTRY);

--
--
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.

Reply via email to