[llvm-branch-commits] [llvm-branch] r182174 - Merging r182113:

Bill Wendling isanbard at gmail.com
Fri May 17 16:36:26 PDT 2013


Author: void
Date: Fri May 17 18:36:26 2013
New Revision: 182174

URL: http://llvm.org/viewvc/llvm-project?rev=182174&view=rev
Log:
Merging r182113:
------------------------------------------------------------------------
r182113 | tstellar | 2013-05-17 08:23:21 -0700 (Fri, 17 May 2013) | 9 lines

R600: Fix encoding for R600 family GPUs

Reviewed-by: Vincent Lejeune <vljn at ovi.com>

https://bugs.freedesktop.org/show_bug.cgi?id=64193
https://bugs.freedesktop.org/show_bug.cgi?id=64257
https://bugs.freedesktop.org/show_bug.cgi?id=64320

NOTE: This is a candidate for the 3.3 branch.
------------------------------------------------------------------------

Added:
    llvm/branches/release_33/test/CodeGen/R600/r600-encoding.ll
      - copied unchanged from r182113, llvm/trunk/test/CodeGen/R600/r600-encoding.ll
Modified:
    llvm/branches/release_33/   (props changed)
    llvm/branches/release_33/lib/Target/R600/MCTargetDesc/R600MCCodeEmitter.cpp

Propchange: llvm/branches/release_33/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri May 17 18:36:26 2013
@@ -1,3 +1,3 @@
 /llvm/branches/Apple/Pertwee:110850,110961
 /llvm/branches/type-system-rewrite:133420-134817
-/llvm/trunk:155241,181286,181296,181313,181397,181423,181450,181524,181529,181540,181576-181580,181586,181600,181678,181706,181792,181800,181842,181864,182072
+/llvm/trunk:155241,181286,181296,181313,181397,181423,181450,181524,181529,181540,181576-181580,181586,181600,181678,181706,181792,181800,181842,181864,182072,182113

Modified: llvm/branches/release_33/lib/Target/R600/MCTargetDesc/R600MCCodeEmitter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/release_33/lib/Target/R600/MCTargetDesc/R600MCCodeEmitter.cpp?rev=182174&r1=182173&r2=182174&view=diff
==============================================================================
--- llvm/branches/release_33/lib/Target/R600/MCTargetDesc/R600MCCodeEmitter.cpp (original)
+++ llvm/branches/release_33/lib/Target/R600/MCTargetDesc/R600MCCodeEmitter.cpp Fri May 17 18:36:26 2013
@@ -176,6 +176,13 @@ void R600MCCodeEmitter::EncodeInstructio
     Emit((u_int32_t) 0, OS);
   } else {
     uint64_t Inst = getBinaryCodeForInstr(MI, Fixups);
+    if ((STI.getFeatureBits() & AMDGPU::FeatureR600ALUInst) &&
+       ((Desc.TSFlags & R600_InstFlag::OP1) ||
+         Desc.TSFlags & R600_InstFlag::OP2)) {
+      uint64_t ISAOpCode = Inst & (0x3FFULL << 39);
+      Inst &= ~(0x3FFULL << 39);
+      Inst |= ISAOpCode << 1;
+    }
     Emit(Inst, OS);
   }
 }





More information about the llvm-branch-commits mailing list