• jarin's avatar
    [turbofan] Introduce CheckUnless. · 85fde59d
    jarin authored
    Similarly to CheckIf, CheckUnless is a deoptimization without a specific
    frame state. A frame state is assigned during effect-control linearization
    (and CheckUnless is turned into DeoptimizeUnless).
    
    At the moment, the new operator is only used at one place in native context
    specialization, but we should use it everywhere. The advantage of
    CHeckUnless is that it avoids non-truncating uses of values by frame
    states. This particular change is aimed at Octane's crypto, where this
    enables to turn one NumberMultiply into Int32Mul, and thus improve
    the score by more than 10% (it also needs minus zero truncation and
    typing to be improved, but those CLs are already in flight).
    
    BUG=v8:4470
    R=bmeurer@chromium.org
    
    Review-Url: https://codereview.chromium.org/2080113002
    Cr-Commit-Position: refs/heads/master@{#37085}
    85fde59d
effect-control-linearizer.cc 62.6 KB