Index: src/arm/code-stubs-arm.cc |
=================================================================== |
--- src/arm/code-stubs-arm.cc (revision 8298) |
+++ src/arm/code-stubs-arm.cc (working copy) |
@@ -2561,37 +2561,36 @@ |
case Token::MUL: |
case Token::DIV: |
case Token::MOD: { |
- // Load both operands and check that they are 32-bit integer. |
- // Jump to type transition if they are not. The registers r0 and r1 (right |
- // and left) are preserved for the runtime call. |
- FloatingPointHelper::Destination destination = |
- CpuFeatures::IsSupported(VFP3) && |
- op_ != Token::MOD ? |
- FloatingPointHelper::kVFPRegisters : |
- FloatingPointHelper::kCoreRegisters; |
+ // Load both operands and check that they are 32-bit integer. |
+ // Jump to type transition if they are not. The registers r0 and r1 (right |
+ // and left) are preserved for the runtime call. |
+ FloatingPointHelper::Destination destination = |
+ (CpuFeatures::IsSupported(VFP3) && op_ != Token::MOD) |
+ ? FloatingPointHelper::kVFPRegisters |
+ : FloatingPointHelper::kCoreRegisters; |
- FloatingPointHelper::LoadNumberAsInt32Double(masm, |
- right, |
- destination, |
- d7, |
- r2, |
- r3, |
- heap_number_map, |
- scratch1, |
- scratch2, |
- s0, |
- &transition); |
- FloatingPointHelper::LoadNumberAsInt32Double(masm, |
- left, |
- destination, |
- d6, |
- r4, |
- r5, |
- heap_number_map, |
- scratch1, |
- scratch2, |
- s0, |
- &transition); |
+ FloatingPointHelper::LoadNumberAsInt32Double(masm, |
+ right, |
+ destination, |
+ d7, |
+ r2, |
+ r3, |
+ heap_number_map, |
+ scratch1, |
+ scratch2, |
+ s0, |
+ &transition); |
+ FloatingPointHelper::LoadNumberAsInt32Double(masm, |
+ left, |
+ destination, |
+ d6, |
+ r4, |
+ r5, |
+ heap_number_map, |
+ scratch1, |
+ scratch2, |
+ s0, |
+ &transition); |
if (destination == FloatingPointHelper::kVFPRegisters) { |
CpuFeatures::Scope scope(VFP3); |
@@ -2655,8 +2654,8 @@ |
__ bind(&return_heap_number); |
// Return a heap number, or fall through to type transition or runtime |
// call if we can't. |
- if (result_type_ >= (op_ == Token::DIV) ? BinaryOpIC::HEAP_NUMBER |
- : BinaryOpIC::INT32) { |
+ if (result_type_ >= ((op_ == Token::DIV) ? BinaryOpIC::HEAP_NUMBER |
+ : BinaryOpIC::INT32)) { |
// We are using vfp registers so r5 is available. |
heap_number_result = r5; |
GenerateHeapResultAllocation(masm, |