• pierre.langlois's avatar
    [arm64] Optimize fcmp when lhs operand is #0.0 · e28ae8ca
    pierre.langlois authored
    This patch checks the type of the lhs operand of a floating point
    comparison, and commutes the operands if it is #0.0.  It allows us to
    optimize a comparison with zero, as the fcmp instruction accepts #0.0 as
    rhs operand.
    
    Code before for "0.0 < 0.123":
    ------------------------------
    fmov d1, xzr
    ldr d0, pc+96
    fcmp d1, d0
    b.lo #+0xc
    
    Code after:
    -----------
    ldr d0, pc+92
    fcmp d0, #0.0
    b.gt #+0xc
    
    Before this patch, we used unsigned condition codes for floating point
    comparisons, but the unordered case was not correctly commuted.
    
    Review URL: https://codereview.chromium.org/1356283003
    
    Cr-Commit-Position: refs/heads/master@{#30881}
    e28ae8ca
Name
Last commit
Last update
..
benchmarks Loading commit data...
cctest Loading commit data...
intl Loading commit data...
js-perf-test Loading commit data...
memory Loading commit data...
message Loading commit data...
mjsunit Loading commit data...
mozilla Loading commit data...
preparser Loading commit data...
promises-aplus Loading commit data...
simdjs Loading commit data...
test262 Loading commit data...
test262-es6 Loading commit data...
unittests Loading commit data...
webkit Loading commit data...