Revision: 6738 Author: [email protected] Date: Fri Feb 11 01:02:40 2011 Log: 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. Review URL: http://codereview.chromium.org/6489025 http://code.google.com/p/v8/source/detail?r=6738 Modified: /branches/3.0/src/hydrogen.cc /branches/3.0/src/version.cc ======================================= --- /branches/3.0/src/hydrogen.cc Wed Feb 9 23:21:03 2011 +++ /branches/3.0/src/hydrogen.cc Fri Feb 11 01:02:40 2011 @@ -1813,16 +1813,14 @@ 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); - } - - HInstruction* next = (insert_block == use->block()) - ? HInstruction::cast(use) - : insert_block->end(); + next = use->block()->predecessors()->at(index)->end(); + } else { + next = HInstruction::cast(use); + } // For constants we try to make the representation change at compile // time. When a representation change is not possible without loss of ======================================= --- /branches/3.0/src/version.cc Thu Feb 10 02:03:00 2011 +++ /branches/3.0/src/version.cc Fri Feb 11 01:02:40 2011 @@ -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
