[all-commits] [llvm/llvm-project] b28bb8: [AMDGPU] Remove old operand from VOPC DPP
Joe Nash via All-commits
all-commits at lists.llvm.org
Tue Jul 19 07:05:20 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: b28bb8cc9c8489fb53421b5eb0138e79fa098060
https://github.com/llvm/llvm-project/commit/b28bb8cc9c8489fb53421b5eb0138e79fa098060
Author: Joe Nash <Joseph.Nash at amd.com>
Date: 2022-07-19 (Tue, 19 Jul 2022)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOPCInstructions.td
A llvm/test/CodeGen/AMDGPU/vopc_dpp.ll
M llvm/test/CodeGen/AMDGPU/vopc_dpp.mir
Log Message:
-----------
[AMDGPU] Remove old operand from VOPC DPP
For most DPP instructions, the old operand stores the value that was in
the current lane before the DPP operation, and is tied to the
destination. For VOPC DPP, this is unnecessary and incorrect.
There appears to have been a latent bug related to D122737 with
SIInstrInfo::isOperandLegal. If you checked if a register operand was legal
when the InstructionDesc expected an immediate, it reported that is valid.
Its fix is necessary for and tested in this patch.
Reviewed By: foad, rampitec
Differential Revision: https://reviews.llvm.org/D130040
More information about the All-commits
mailing list