[llvm-branch-commits] [llvm-branch] r167126 - in /llvm/branches/R600/lib/Target/AMDGPU: SIInstrInfo.cpp SIInstrInfo.h

Tom Stellard thomas.stellard at amd.com
Wed Oct 31 08:26:13 PDT 2012


Author: tstellar
Date: Wed Oct 31 10:26:13 2012
New Revision: 167126

URL: http://llvm.org/viewvc/llvm-project?rev=167126&view=rev
Log:
SI: Prevent instructions modifying the EXEC register from being moved

Patch by: Michel Dänzer

Reviewed-by: Tom Stellard <thomas.stellar at amd.com>
Reviewed-by: Christian König <christian.koenig at amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>

Modified:
    llvm/branches/R600/lib/Target/AMDGPU/SIInstrInfo.cpp
    llvm/branches/R600/lib/Target/AMDGPU/SIInstrInfo.h

Modified: llvm/branches/R600/lib/Target/AMDGPU/SIInstrInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/R600/lib/Target/AMDGPU/SIInstrInfo.cpp?rev=167126&r1=167125&r2=167126&view=diff
==============================================================================
--- llvm/branches/R600/lib/Target/AMDGPU/SIInstrInfo.cpp (original)
+++ llvm/branches/R600/lib/Target/AMDGPU/SIInstrInfo.cpp Wed Oct 31 10:26:13 2012
@@ -85,3 +85,8 @@
     return true;
   }
 }
+
+bool
+SIInstrInfo::isSafeToMoveRegClassDefs(const TargetRegisterClass *RC) const {
+  return RC != &AMDGPU::EXECRegRegClass;
+}

Modified: llvm/branches/R600/lib/Target/AMDGPU/SIInstrInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/R600/lib/Target/AMDGPU/SIInstrInfo.h?rev=167126&r1=167125&r2=167126&view=diff
==============================================================================
--- llvm/branches/R600/lib/Target/AMDGPU/SIInstrInfo.h (original)
+++ llvm/branches/R600/lib/Target/AMDGPU/SIInstrInfo.h Wed Oct 31 10:26:13 2012
@@ -47,6 +47,7 @@
   virtual unsigned getIEQOpcode() const { assert(!"Implement"); return 0;}
   virtual bool isMov(unsigned Opcode) const;
 
+  virtual bool isSafeToMoveRegClassDefs(const TargetRegisterClass *RC) const;
   };
 
 } // End namespace llvm





More information about the llvm-branch-commits mailing list