[llvm-branch-commits] [llvm-branch] r182825 - Merging r182253:

Bill Wendling isanbard at gmail.com
Tue May 28 23:53:36 PDT 2013


Author: void
Date: Wed May 29 01:53:35 2013
New Revision: 182825

URL: http://llvm.org/viewvc/llvm-project?rev=182825&view=rev
Log:
Merging r182253:
------------------------------------------------------------------------
r182253 | jholewinski | 2013-05-20 05:13:28 -0700 (Mon, 20 May 2013) | 1 line

[NVPTX] Fix i1 kernel parameters and global variables.  ABI rules say we need to use .u8 for i1 parameters for kernels.
------------------------------------------------------------------------

Added:
    llvm/branches/release_33/test/CodeGen/NVPTX/i1-global.ll
      - copied unchanged from r182253, llvm/trunk/test/CodeGen/NVPTX/i1-global.ll
    llvm/branches/release_33/test/CodeGen/NVPTX/i1-param.ll
      - copied unchanged from r182253, llvm/trunk/test/CodeGen/NVPTX/i1-param.ll
Modified:
    llvm/branches/release_33/   (props changed)
    llvm/branches/release_33/lib/Target/NVPTX/NVPTXAsmPrinter.cpp

Propchange: llvm/branches/release_33/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed May 29 01:53:35 2013
@@ -1,3 +1,3 @@
 /llvm/branches/Apple/Pertwee:110850,110961
 /llvm/branches/type-system-rewrite:133420-134817
-/llvm/trunk:155241,181286,181296,181313,181363,181366,181397,181423,181450,181524,181529,181540,181576-181580,181586,181600,181678,181706,181792,181800,181842,181864,182072,182112-182113,182344,182364,182385,182387,182485-182486,182656
+/llvm/trunk:155241,181286,181296,181313,181363,181366,181397,181423,181450,181524,181529,181540,181576-181580,181586,181600,181678,181706,181792,181800,181842,181864,182072,182112-182113,182253,182344,182364,182385,182387,182485-182486,182656

Modified: llvm/branches/release_33/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/release_33/lib/Target/NVPTX/NVPTXAsmPrinter.cpp?rev=182825&r1=182824&r2=182825&view=diff
==============================================================================
--- llvm/branches/release_33/lib/Target/NVPTX/NVPTXAsmPrinter.cpp (original)
+++ llvm/branches/release_33/lib/Target/NVPTX/NVPTXAsmPrinter.cpp Wed May 29 01:53:35 2013
@@ -1199,7 +1199,11 @@ void NVPTXAsmPrinter::printModuleLevelGV
 
   if (ETy->isPrimitiveType() || ETy->isIntegerTy() || isa<PointerType>(ETy)) {
     O << " .";
-    O << getPTXFundamentalTypeStr(ETy, false);
+    // Special case: ABI requires that we use .u8 for predicates
+    if (ETy->isIntegerTy(1))
+      O << "u8";
+    else
+      O << getPTXFundamentalTypeStr(ETy, false);
     O << " ";
     O << *Mang->getSymbol(GVar);
 
@@ -1564,7 +1568,13 @@ void NVPTXAsmPrinter::emitFunctionParamL
         }
 
         // non-pointer scalar to kernel func
-        O << "\t.param ." << getPTXFundamentalTypeStr(Ty) << " ";
+        O << "\t.param .";
+        // Special case: predicate operands become .u8 types
+        if (Ty->isIntegerTy(1))
+          O << "u8";
+        else
+          O << getPTXFundamentalTypeStr(Ty);
+        O << " ";
         printParamName(I, paramIndex, O);
         continue;
       }





More information about the llvm-branch-commits mailing list