[llvm] r180734 - R600: Fix encoding of CF_END_{EG, R600} instructions

Tom Stellard thomas.stellard at amd.com
Mon Apr 29 15:23:54 PDT 2013


Author: tstellar
Date: Mon Apr 29 17:23:54 2013
New Revision: 180734

URL: http://llvm.org/viewvc/llvm-project?rev=180734&view=rev
Log:
R600: Fix encoding of CF_END_{EG, R600} instructions

The EOP bit was not being encoded.

Added:
    llvm/trunk/test/CodeGen/R600/cf_end.ll
Modified:
    llvm/trunk/lib/Target/R600/R600Instructions.td

Modified: llvm/trunk/lib/Target/R600/R600Instructions.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/R600/R600Instructions.td?rev=180734&r1=180733&r2=180734&view=diff
==============================================================================
--- llvm/trunk/lib/Target/R600/R600Instructions.td (original)
+++ llvm/trunk/lib/Target/R600/R600Instructions.td Mon Apr 29 17:23:54 2013
@@ -906,6 +906,7 @@ class CF_WORD1_EG {
   let Word1{9-8} = COND;
   let Word1{15-10} = COUNT;
   let Word1{20} = VALID_PIXEL_MODE;
+  let Word1{21} = END_OF_PROGRAM;
   let Word1{29-22} = CF_INST;
   let Word1{31} = BARRIER;
 }

Added: llvm/trunk/test/CodeGen/R600/cf_end.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/R600/cf_end.ll?rev=180734&view=auto
==============================================================================
--- llvm/trunk/test/CodeGen/R600/cf_end.ll (added)
+++ llvm/trunk/test/CodeGen/R600/cf_end.ll Mon Apr 29 17:23:54 2013
@@ -0,0 +1,6 @@
+; RUN: llc < %s -march=r600 -mcpu=redwood --show-mc-encoding | FileCheck %s
+
+; CHECK: CF_END ; encoding: [0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x80]
+define void @eop() {
+  ret void
+}





More information about the llvm-commits mailing list