[PATCH] D10936: AMDGPU: Avoid using 64-bit shift for i64 (shl x, 32)

Matt Arsenault Matthew.Arsenault at amd.com
Fri Jul 3 16:32:19 PDT 2015


arsenm created this revision.
arsenm added a subscriber: llvm-commits.

This can be done only with moves which theoretically
will optimize better later.
    
Although this transform increases the instruction count,
it should be code size / cycle count neutral in the worst
VALU case. It also seems to slightly improve a couple
of testcases due to other DAG combines this exposes.
    
This is probably slightly worse for the SALU case, so
it might be better to handle this during moveToVALU,
although then you lose some simplifications like
the load width reducing in the simple testcase.

http://reviews.llvm.org/D10936

Files:
  lib/Target/AMDGPU/AMDGPUISelLowering.cpp
  lib/Target/AMDGPU/AMDGPUISelLowering.h
  test/CodeGen/AMDGPU/array-ptr-calc-i64.ll
  test/CodeGen/AMDGPU/mul_uint24.ll
  test/CodeGen/AMDGPU/shl.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D10936.29038.patch
Type: text/x-patch
Size: 6274 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150703/ba0494cf/attachment.bin>


More information about the llvm-commits mailing list