• jarin's avatar
    [turbofan] Only use Tagged machine representation for tagged state values. · 6cd2d4ba
    jarin authored
    This avoids using kTaggedSigned and kTaggedPointer because the
    semantic information of those type could be invalid in unreachable
    code.
    
    For example, SmiCheck(0.1) has representation TaggedSigned, but it is
    later compiled to DeoptimizeUnless(ObjectIsSmi(0.1)) with the constant
    0.1 directly connected to the uses. If the use is state-values, which
    recorded the TaggedSigned representation of CheckSmi, the code
    generator will be confused because it will see constant 0.1 that
    claims to be TaggedSigned value.
    
    BUG=chromium:675704
    
    Review-Url: https://codereview.chromium.org/2656243004
    Cr-Commit-Position: refs/heads/master@{#42756}
    6cd2d4ba
code-generator.cc 38.4 KB