diff options
author | Pierre van Houtryve <pierre.vanhoutryve@amd.com> | 2023-01-24 10:33:29 +0100 |
---|---|---|
committer | pvanhout <pierre.vanhoutryve@amd.com> | 2023-02-10 08:34:23 +0100 |
commit | d9a6fc82f56f1e4ebb6ba053a57a5839c3907a7e (patch) | |
tree | 0e645a2535d14b97d78b3caec02a320edd8aceb6 /llvm/lib/Object | |
parent | 90f5176ab2c6f46449c9a7050f7269a7356f7a41 (diff) | |
download | llvm-d9a6fc82f56f1e4ebb6ba053a57a5839c3907a7e.zip llvm-d9a6fc82f56f1e4ebb6ba053a57a5839c3907a7e.tar.gz llvm-d9a6fc82f56f1e4ebb6ba053a57a5839c3907a7e.tar.bz2 |
[AMDGPU] Run unmerge combines post regbankselect
RegBankSelect can insert G_UNMERGE_VALUES in a lot of places which
left us with a lot of unmerge/merge pairs that could be simplified.
These often got in the way of pattern matching and made codegen
worse.
This patch:
- Makes the necessary changes to the merge/unmerge combines so they can run post RegBankSelect
- Adds relevant unmerge combines to the list of RegBankSelect combines for AMDGPU
- Updates some tablegen patterns that were missing explicit cross-regbank copies (V_BFI patterns were causing constant bus violations with this change).
This seems to be mostly beneficial for code quality.
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D142192
Diffstat (limited to 'llvm/lib/Object')
0 files changed, 0 insertions, 0 deletions