| OLD | NEW | 
|---|
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #if V8_TARGET_ARCH_MIPS | 5 #if V8_TARGET_ARCH_MIPS | 
| 6 | 6 | 
| 7 // Note on Mips implementation: | 7 // Note on Mips implementation: | 
| 8 // | 8 // | 
| 9 // The result_register() for mips is the 'v0' register, which is defined | 9 // The result_register() for mips is the 'v0' register, which is defined | 
| 10 // by the ABI to contain function return values. However, the first | 10 // by the ABI to contain function return values. However, the first | 
| (...skipping 775 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 786 } | 786 } | 
| 787 | 787 | 
| 788 | 788 | 
| 789 void FullCodeGenerator::PrepareForBailoutBeforeSplit(Expression* expr, | 789 void FullCodeGenerator::PrepareForBailoutBeforeSplit(Expression* expr, | 
| 790                                                      bool should_normalize, | 790                                                      bool should_normalize, | 
| 791                                                      Label* if_true, | 791                                                      Label* if_true, | 
| 792                                                      Label* if_false) { | 792                                                      Label* if_false) { | 
| 793   // Only prepare for bailouts before splits if we're in a test | 793   // Only prepare for bailouts before splits if we're in a test | 
| 794   // context. Otherwise, we let the Visit function deal with the | 794   // context. Otherwise, we let the Visit function deal with the | 
| 795   // preparation to avoid preparing with the same AST id twice. | 795   // preparation to avoid preparing with the same AST id twice. | 
| 796   if (!context()->IsTest() || !info_->IsOptimizable()) return; | 796   if (!context()->IsTest()) return; | 
| 797 | 797 | 
| 798   Label skip; | 798   Label skip; | 
| 799   if (should_normalize) __ Branch(&skip); | 799   if (should_normalize) __ Branch(&skip); | 
| 800   PrepareForBailout(expr, TOS_REG); | 800   PrepareForBailout(expr, TOS_REG); | 
| 801   if (should_normalize) { | 801   if (should_normalize) { | 
| 802     __ LoadRoot(t0, Heap::kTrueValueRootIndex); | 802     __ LoadRoot(t0, Heap::kTrueValueRootIndex); | 
| 803     Split(eq, a0, Operand(t0), if_true, if_false, NULL); | 803     Split(eq, a0, Operand(t0), if_true, if_false, NULL); | 
| 804     __ bind(&skip); | 804     __ bind(&skip); | 
| 805   } | 805   } | 
| 806 } | 806 } | 
| (...skipping 4569 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 5376          reinterpret_cast<uint32_t>( | 5376          reinterpret_cast<uint32_t>( | 
| 5377              isolate->builtins()->OsrAfterStackCheck()->entry())); | 5377              isolate->builtins()->OsrAfterStackCheck()->entry())); | 
| 5378   return OSR_AFTER_STACK_CHECK; | 5378   return OSR_AFTER_STACK_CHECK; | 
| 5379 } | 5379 } | 
| 5380 | 5380 | 
| 5381 | 5381 | 
| 5382 }  // namespace internal | 5382 }  // namespace internal | 
| 5383 }  // namespace v8 | 5383 }  // namespace v8 | 
| 5384 | 5384 | 
| 5385 #endif  // V8_TARGET_ARCH_MIPS | 5385 #endif  // V8_TARGET_ARCH_MIPS | 
| OLD | NEW | 
|---|