Commit 77924e7e authored by mmassi@chromium.org's avatar mmassi@chromium.org

Fix occasional crash when lithium goes out of vregs.

BUG=
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/14850013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14550 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent ed160c53
...@@ -677,7 +677,7 @@ LUnallocated* LChunkBuilder::TempRegister() { ...@@ -677,7 +677,7 @@ LUnallocated* LChunkBuilder::TempRegister() {
int vreg = allocator_->GetVirtualRegister(); int vreg = allocator_->GetVirtualRegister();
if (!allocator_->AllocationOk()) { if (!allocator_->AllocationOk()) {
Abort("Out of virtual registers while trying to allocate temp register."); Abort("Out of virtual registers while trying to allocate temp register.");
return NULL; vreg = 0;
} }
operand->set_virtual_register(vreg); operand->set_virtual_register(vreg);
return operand; return operand;
......
...@@ -736,7 +736,7 @@ LUnallocated* LChunkBuilder::TempRegister() { ...@@ -736,7 +736,7 @@ LUnallocated* LChunkBuilder::TempRegister() {
int vreg = allocator_->GetVirtualRegister(); int vreg = allocator_->GetVirtualRegister();
if (!allocator_->AllocationOk()) { if (!allocator_->AllocationOk()) {
Abort("Out of virtual registers while trying to allocate temp register."); Abort("Out of virtual registers while trying to allocate temp register.");
return NULL; vreg = 0;
} }
operand->set_virtual_register(vreg); operand->set_virtual_register(vreg);
return operand; return operand;
......
...@@ -677,7 +677,7 @@ LUnallocated* LChunkBuilder::TempRegister() { ...@@ -677,7 +677,7 @@ LUnallocated* LChunkBuilder::TempRegister() {
int vreg = allocator_->GetVirtualRegister(); int vreg = allocator_->GetVirtualRegister();
if (!allocator_->AllocationOk()) { if (!allocator_->AllocationOk()) {
Abort("Out of virtual registers while trying to allocate temp register."); Abort("Out of virtual registers while trying to allocate temp register.");
return NULL; vreg = 0;
} }
operand->set_virtual_register(vreg); operand->set_virtual_register(vreg);
return operand; return operand;
......
...@@ -685,7 +685,7 @@ LUnallocated* LChunkBuilder::TempRegister() { ...@@ -685,7 +685,7 @@ LUnallocated* LChunkBuilder::TempRegister() {
int vreg = allocator_->GetVirtualRegister(); int vreg = allocator_->GetVirtualRegister();
if (!allocator_->AllocationOk()) { if (!allocator_->AllocationOk()) {
Abort("Out of virtual registers while trying to allocate temp register."); Abort("Out of virtual registers while trying to allocate temp register.");
return NULL; vreg = 0;
} }
operand->set_virtual_register(vreg); operand->set_virtual_register(vreg);
return operand; return operand;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment