• bmeurer@chromium.org's avatar
    Fix combined string length computation. · 7158b511
    bmeurer@chromium.org authored
    For 31-bit smis, we don't need to explicitly check whether the
    combined string length exceeds the max supported string length,
    since the value must be converted to a smi at some point (i.e.
    when it is stored into the string length field of the resulting
    string), which will emit an overflow check.
    
    For 32-bit smis, we insert an explicit check that the combined
    string length does not exceed String::kMaxLength.
    
    This also enables to get rid of the JoinContinuation() usage in
    BuildUncheckedStringAdd().
    
    BUG=v8:2990
    LOG=n
    R=mvstanton@chromium.org
    
    Review URL: https://codereview.chromium.org/82733003
    
    git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    7158b511
hydrogen.cc 369 KB