OSDN Git Service

Fix incorrect redundant expression in target AMDGPU.
authorEtienne Bergeron <etienneb@google.com>
Mon, 25 Apr 2016 15:06:33 +0000 (15:06 +0000)
committerEtienne Bergeron <etienneb@google.com>
Mon, 25 Apr 2016 15:06:33 +0000 (15:06 +0000)
Summary:
The expression is detected as a redundant expression.
Turn out, this is probably a bug.

```
/home/etienneb/llvm/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp:306:26: warning: both side of operator are equivalent [misc-redundant-expression]
  if (isSMRD(*FirstLdSt) && isSMRD(*FirstLdSt)) {
```

Reviewers: rnk, tstellarAMD

Subscribers: arsenm, cfe-commits

Differential Revision: http://reviews.llvm.org/D19460

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@267415 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/AMDGPU/SIInstrInfo.cpp

index 2520291..ed98b27 100644 (file)
@@ -303,7 +303,7 @@ bool SIInstrInfo::shouldClusterMemOps(MachineInstr *FirstLdSt,
     SecondDst = getNamedOperand(*SecondLdSt, AMDGPU::OpName::vdst);
   }
 
-  if (isSMRD(*FirstLdSt) && isSMRD(*FirstLdSt)) {
+  if (isSMRD(*FirstLdSt) && isSMRD(*SecondLdSt)) {
     FirstDst = getNamedOperand(*FirstLdSt, AMDGPU::OpName::sdst);
     SecondDst = getNamedOperand(*SecondLdSt, AMDGPU::OpName::sdst);
   }