[all-commits] [llvm/llvm-project] a6dabe: [AMDGPU] Fix nondeterminism in SIFixSGPRCopies (#7...
Jay Foad via All-commits
all-commits at lists.llvm.org
Tue Oct 31 04:47:55 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a6dabed3483c60469ff53d51622b22efc4b7b7d2
https://github.com/llvm/llvm-project/commit/a6dabed3483c60469ff53d51622b22efc4b7b7d2
Author: Jay Foad <jay.foad at amd.com>
Date: 2023-10-31 (Tue, 31 Oct 2023)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-nondeterminism.ll
M llvm/test/CodeGen/AMDGPU/sdwa-peephole.ll
M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
Log Message:
-----------
[AMDGPU] Fix nondeterminism in SIFixSGPRCopies (#70644)
There are a couple of loops that iterate over V2SCopies. The iteration
order needs to be deterministic, otherwise we can call moveToVALU in
different orders, which causes temporary vregs to be allocated in
different orders, which can affect register allocation heuristics.
More information about the All-commits
mailing list