Turn expensive 64 bit shift into 32 bit if shift does not overflow int:
shl (ext x) => zext (shl x)
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Paths
| Differential D33367
[AMDGPU] Narrow lshl from 64 to 32 bit if possible ClosedPublic Authored by rampitec on May 19 2017, 1:37 PM.
Details Summary Turn expensive 64 bit shift into 32 bit if shift does not overflow int:
Diff Detail
Event TimelineHerald added subscribers: t-tye, tpr, dstuttard and 4 others. · View Herald TranscriptMay 19 2017, 1:37 PM
This revision is now accepted and ready to land.May 22 2017, 9:34 AM Closed by commit rL303569: [AMDGPU] Narrow lshl from 64 to 32 bit if possible (authored by rampitec). · Explain WhyMay 22 2017, 9:58 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 99620 lib/Target/AMDGPU/AMDGPUISelLowering.cpp
test/CodeGen/AMDGPU/add.i16.ll
test/CodeGen/AMDGPU/add.v2i16.ll
test/CodeGen/AMDGPU/bfe-patterns.ll
test/CodeGen/AMDGPU/ctlz.ll
test/CodeGen/AMDGPU/ctlz_zero_undef.ll
test/CodeGen/AMDGPU/ds_write2.ll
test/CodeGen/AMDGPU/fmed3.ll
test/CodeGen/AMDGPU/llvm.amdgcn.atomic.dec.ll
test/CodeGen/AMDGPU/llvm.amdgcn.atomic.inc.ll
test/CodeGen/AMDGPU/lshl64-to-32.ll
test/CodeGen/AMDGPU/shift-and-i64-ubfe.ll
test/CodeGen/AMDGPU/srl.ll
test/CodeGen/AMDGPU/sub.i16.ll
|
What type is expected for X? I mean, can it be 16 or 8 bit type?