Revision: 14983
Author:   [email protected]
Date:     Thu Jun  6 07:31:44 2013
Log:      Assign less environments

[email protected]

Review URL: https://chromiumcodereview.appspot.com/16556002
http://code.google.com/p/v8/source/detail?r=14983

Modified:
 /branches/bleeding_edge/src/arm/lithium-arm.cc
 /branches/bleeding_edge/src/ia32/lithium-ia32.cc
 /branches/bleeding_edge/src/x64/lithium-x64.cc

=======================================
--- /branches/bleeding_edge/src/arm/lithium-arm.cc      Wed Jun  5 05:09:02 2013
+++ /branches/bleeding_edge/src/arm/lithium-arm.cc      Thu Jun  6 07:31:44 2013
@@ -2354,10 +2354,11 @@
   LOperand* temp = needs_write_barrier_for_map ? TempRegister() : NULL;

   LStoreNamedField* result = new(zone()) LStoreNamedField(obj, val, temp);
-  if ((FLAG_track_fields && instr->field_representation().IsSmi()) ||
-      (FLAG_track_heap_object_fields &&
-       instr->field_representation().IsHeapObject())) {
-    return AssignEnvironment(result);
+  if (FLAG_track_heap_object_fields &&
+      instr->field_representation().IsHeapObject()) {
+    if (!instr->value()->type().IsHeapObject()) {
+      return AssignEnvironment(result);
+    }
   }
   return result;
 }
=======================================
--- /branches/bleeding_edge/src/ia32/lithium-ia32.cc Wed Jun 5 05:09:02 2013 +++ /branches/bleeding_edge/src/ia32/lithium-ia32.cc Thu Jun 6 07:31:44 2013
@@ -2478,10 +2478,11 @@

   LStoreNamedField* result =
       new(zone()) LStoreNamedField(obj, val, temp, temp_map);
-  if ((FLAG_track_fields && instr->field_representation().IsSmi()) ||
-      (FLAG_track_heap_object_fields &&
-       instr->field_representation().IsHeapObject())) {
-    return AssignEnvironment(result);
+  if (FLAG_track_heap_object_fields &&
+      instr->field_representation().IsHeapObject()) {
+    if (!instr->value()->type().IsHeapObject()) {
+      return AssignEnvironment(result);
+    }
   }
   return result;
 }
=======================================
--- /branches/bleeding_edge/src/x64/lithium-x64.cc      Wed Jun  5 05:09:02 2013
+++ /branches/bleeding_edge/src/x64/lithium-x64.cc      Thu Jun  6 07:31:44 2013
@@ -2294,10 +2294,11 @@
       needs_write_barrier_for_map) ? TempRegister() : NULL;

   LStoreNamedField* result = new(zone()) LStoreNamedField(obj, val, temp);
-  if ((FLAG_track_fields && instr->field_representation().IsSmi()) ||
-      (FLAG_track_heap_object_fields &&
-       instr->field_representation().IsHeapObject())) {
-    return AssignEnvironment(result);
+  if (FLAG_track_heap_object_fields &&
+      instr->field_representation().IsHeapObject()) {
+    if (!instr->value()->type().IsHeapObject()) {
+      return AssignEnvironment(result);
+    }
   }
   return result;
 }

--
--
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/groups/opt_out.


Reply via email to