• Joey Gouly's avatar
    [ptr-compr][turbofan] Add some simplified reducers for compressions · e68a51f7
    Joey Gouly authored
    ChangeTaggedSignedToInt32(ChangeCompressedSignedToTaggedSigned((x)) ->
      ChangeCompressedSignedToInt32(x)
    
    This pattern shows up in the Octane Richards benchmark (on arm64):
    
        sxtw x11, w10
        asr w11, w11, #1
    
    This patch will remove the sxtw.
    
    ChangeCompressedSignedToInt32(CheckedInt32ToCompressedSigned(x)) -> x
    
    This pattern shows up in the Octane Richards benchmark (on arm64):
    
        adds w10, w10, w10
        b.vs #+0x1118
        asr w11, w10, #1
        stur w10, [x6, #19]
        cmp w11, #0x1a
    
    This patch will remove the asr, and produce:
    
        adds w11, w10, w10
        b.vs #+0x1108
        stur w11, [x6, #19]
        cmp w10, #0x1a
    
    Bug: v8:7703
    Change-Id: I5843e0a4f723b202857ee86130f835cd048d7e31
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1763529Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
    Reviewed-by: 's avatarSantiago Aboy Solanes <solanes@chromium.org>
    Commit-Queue: Rodolph Perfetta <rodolph.perfetta@arm.com>
    Cr-Commit-Position: refs/heads/master@{#63389}
    e68a51f7
simplified-operator-reducer.cc 11 KB