Ignore:
Timestamp:
Apr 19, 2012, 4:52:46 PM (13 years ago)
Author:
[email protected]
Message:

MacroAssemblerARMv7::branchTruncateDoubleToUint32 should obey the overflow signal
https://bugs.webkit.org/show_bug.cgi?id=84401

Reviewed by Gavin Barraclough.

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::branchTruncateDoubleToUint32):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h

    r114660 r114695  
    996996        m_assembler.vcvt_floatingPointToSigned(fpTempRegisterAsSingle(), src);
    997997        m_assembler.vmov(dest, fpTempRegisterAsSingle());
    998 
    999         return branch32(branchType ? GreaterThanOrEqual : LessThan, dest, TrustedImm32(0));
     998       
     999        Jump overflow = branch32(Equal, dest, TrustedImm32(0x7fffffff));
     1000        Jump success = branch32(GreaterThanOrEqual, dest, TrustedImm32(0));
     1001        overflow.link(this);
     1002
     1003        if (branchType == BranchIfTruncateSuccessful)
     1004            return success;
     1005       
     1006        Jump failure = jump();
     1007        success.link(this);
     1008        return failure;
    10001009    }
    10011010
Note: See TracChangeset for help on using the changeset viewer.