[PATCH] D13485: AMDGPU: Remove literal constants from VOP2b src0

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 6 15:53:27 PDT 2015


arsenm updated this revision to Diff 36672.
arsenm added a comment.

Just add comment


http://reviews.llvm.org/D13485

Files:
  lib/Target/AMDGPU/SIInstrInfo.td

Index: lib/Target/AMDGPU/SIInstrInfo.td
===================================================================
--- lib/Target/AMDGPU/SIInstrInfo.td
+++ lib/Target/AMDGPU/SIInstrInfo.td
@@ -1187,6 +1187,11 @@
 // Write out to vcc or arbitrary SGPR and read in from vcc or
 // arbitrary SGPR.
 def VOP2b_I32_I1_I32_I32_I1 : VOPProfile<[i32, i32, i32, i1]> {
+  // We use VCSrc_32 to exclude literal constants, even though the
+  // encoding normally allows them since the implicit VCC use means
+  // using one would always violate the constant bus
+  // restriction. SGPRs are still allowed because it should
+  // technically be possible to use VCC again as src0.
   let Src0RC32 = VCSrc_32;
   let Asm32 = "$dst, vcc, $src0, $src1, vcc";
   let Asm64 = "$dst, $sdst, $src0, $src1, $src2";


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D13485.36672.patch
Type: text/x-patch
Size: 787 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151006/327d5c1f/attachment.bin>


More information about the llvm-commits mailing list