Reviewers: Mads Ager,

Description:
Merge revision 6721 to the 3.0 branch.

This fixes a crash triggered when V8 tries to optimize an infinite loop
while the loop is running.

Please review this at http://codereview.chromium.org/6489025/

SVN Base: https://v8.googlecode.com/svn/branches/3.0

Affected files:
  M src/hydrogen.cc
  M src/version.cc


Index: src/hydrogen.cc
diff --git a/src/hydrogen.cc b/src/hydrogen.cc
index c405312f1a1ede4bbdd30033d64c9d4d642dd71e..227dfe21b6de552c6e2f6fdf8daf1f3137f85459 100644
--- a/src/hydrogen.cc
+++ b/src/hydrogen.cc
@@ -1813,17 +1813,15 @@ void HGraph::InsertRepresentationChangeForUse(HValue* value,
                                               bool is_truncating) {
   // Insert the representation change right before its use. For phi-uses we
   // insert at the end of the corresponding predecessor.
-  HBasicBlock* insert_block = use->block();
+  HInstruction* next = NULL;
   if (use->IsPhi()) {
     int index = 0;
     while (use->OperandAt(index) != value) ++index;
-    insert_block = insert_block->predecessors()->at(index);
+    next = use->block()->predecessors()->at(index)->end();
+  } else {
+    next = HInstruction::cast(use);
   }

-  HInstruction* next = (insert_block == use->block())
-      ? HInstruction::cast(use)
-      : insert_block->end();
-
   // For constants we try to make the representation change at compile
   // time. When a representation change is not possible without loss of
   // information we treat constants like normal instructions and insert the
Index: src/version.cc
diff --git a/src/version.cc b/src/version.cc
index d556c6498a9ea9b2bcbd2f6f23bc263c8cd360d8..f2c943a7861bfa7e14780555b1982abbd0b834e6 100644
--- a/src/version.cc
+++ b/src/version.cc
@@ -35,7 +35,7 @@
 #define MAJOR_VERSION     3
 #define MINOR_VERSION     0
 #define BUILD_NUMBER      12
-#define PATCH_LEVEL       15
+#define PATCH_LEVEL       16
 #define CANDIDATE_VERSION false

 // Define SONAME to have the SCons build the put a specific SONAME into the


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to