• Deepti Gandluri's avatar
    [compiler] Remove AtomicNarrow machine operators, macroize tests · 9a0f2546
    Deepti Gandluri authored
    The AtomicNarrow operations are currently used for wider 64-bit
    operations, that only operate on 32-bits of data or less
    (Ex:I64AtomicAdd8U). Removing these because this can be handled
    in int64-lowering by zeroing the higher order node.
    Explicitly zeroing these in code-gen is not
    required because -
    
     - The spec requires only the data exchange to be atomic, for narrow
       ops this uses only the low word.
     - The return values are not in memory, so are not visible to other
       workers/threads
    
    BUG:v8:6532
    
    Change-Id: I90a795ab6c21c70cb096f59a137de653c9c6a178
    Reviewed-on: https://chromium-review.googlesource.com/1194428Reviewed-by: 's avatarBen Titzer <titzer@chromium.org>
    Reviewed-by: 's avatarBen Smith <binji@chromium.org>
    Commit-Queue: Deepti Gandluri <gdeepti@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#55499}
    9a0f2546
code-generator-ia32.cc 165 KB