diff options
author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2025-05-17 08:18:01 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-05-17 08:18:01 +0200 |
commit | 4ddab1252fe6a90111a034cef184549882aaba2b (patch) | |
tree | fa0b1353ce5086f15f957844c3b4fc78250dc6c8 /llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp | |
parent | 578741b5e85110565b9b2de84d93b2c993ac0b79 (diff) | |
download | llvm-4ddab1252fe6a90111a034cef184549882aaba2b.zip llvm-4ddab1252fe6a90111a034cef184549882aaba2b.tar.gz llvm-4ddab1252fe6a90111a034cef184549882aaba2b.tar.bz2 |
AMDGPU: Move reg_sequence splat handling (#140313)
This code clunkily tried to find a splat reg_sequence by
looking at every use of the reg_sequence, and then looking
back at the reg_sequence to see if it's a splat. Extract this
into a separate helper function to help clean this up. This now
parses whether the reg_sequence forms a splat once, and defers the
legal inline immediate check to the use check (which is really use
context dependent)
The one regression is in globalisel, which has an extra
copy that should have been separately folded out. It was getting
dealt with by the handling of foldable copies in tryToFoldACImm.
This is preparation for #139908 and #139317
Diffstat (limited to 'llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions