Add trimming of unused components of s_buffer_load.
For s_buffer_load and unformatted buffer_load also trim unused
components at the beginning of vector and update offset accordingly.
Paths
| Differential D71785
[InstCombine][AMDGPU] Trim components of s_buffer_load ClosedPublic Authored by piotr on Dec 20 2019, 1:44 PM.
Details Summary Add trimming of unused components of s_buffer_load. For s_buffer_load and unformatted buffer_load also trim unused
Diff Detail
Event TimelineComment Actions This is another attempt to trim unused components of buffer loads. Comparing to D70315, this commit does not handle formatted buffer loads, as it is not safe. Comment Actions I intend to merge the patch soon, based on the fact that the patch was reviewed in D70315. Compared to that version, 3 problematic cases were removed and tests updated. arsenm added inline comments.
Comment Actions Unit tests: fail. 62254 tests passed, 1 failed and 827 were skipped. failed: libc++.std/thread/thread_mutex/thread_mutex_requirements/thread_timedmutex_requirements/thread_timedmutex_recursive/try_lock_for.pass.cpp clang-tidy: fail. clang-tidy found 0 errors and 2 warnings. 0 of them are added as review comments below (why?). clang-format: pass. Build artifacts: diff.json, clang-tidy.txt, clang-format.patch, CMakeCache.txt, console-log.txt, test-results.xml Pre-merge checks is in beta. Report issue. Please join beta or enable it for your project. Comment Actions Unit tests: pass. 62255 tests passed, 0 failed and 827 were skipped. clang-tidy: pass. clang-format: pass. Build artifacts: diff.json, clang-tidy.txt, clang-format.patch, CMakeCache.txt, console-log.txt, test-results.xml Pre-merge checks is in beta. Report issue. Please join beta or enable it for your project. This revision is now accepted and ready to land.Jan 29 2020, 5:58 AM Closed by commit rGdd7148822bdc: [InstCombine][AMDGPU] Trim components of s_buffer_load (authored by piotr). · Explain WhyJan 30 2020, 1:49 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 241371 llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-demanded-vector-elts.ll
|
I think this goes over the 80 column limit