[llvm-branch-commits] [llvm-branch] r227365 - Merging r226970:

Tom Stellard thomas.stellard at amd.com
Wed Jan 28 12:46:16 PST 2015


Author: tstellar
Date: Wed Jan 28 14:46:16 2015
New Revision: 227365

URL: http://llvm.org/viewvc/llvm-project?rev=227365&view=rev
Log:
Merging r226970:

------------------------------------------------------------------------
r226970 | thomas.stellard | 2015-01-23 18:59:08 -0500 (Fri, 23 Jan 2015) | 2 lines

R600/SI: Emit .hsa.version section for amdhsa OS

------------------------------------------------------------------------

Modified:
    llvm/branches/release_36/lib/Target/R600/AMDGPUAsmPrinter.cpp
    llvm/branches/release_36/test/CodeGen/R600/hsa.ll

Modified: llvm/branches/release_36/lib/Target/R600/AMDGPUAsmPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/release_36/lib/Target/R600/AMDGPUAsmPrinter.cpp?rev=227365&r1=227364&r2=227365&view=diff
==============================================================================
--- llvm/branches/release_36/lib/Target/R600/AMDGPUAsmPrinter.cpp (original)
+++ llvm/branches/release_36/lib/Target/R600/AMDGPUAsmPrinter.cpp Wed Jan 28 14:46:16 2015
@@ -116,7 +116,6 @@ bool AMDGPUAsmPrinter::runOnMachineFunct
   const AMDGPUSubtarget &STM = TM.getSubtarget<AMDGPUSubtarget>();
   SIProgramInfo KernelInfo;
   if (STM.isAmdHsaOS()) {
-    OutStreamer.SwitchSection(getObjFileLowering().getTextSection());
     getSIProgramInfo(KernelInfo, MF);
     EmitAmdKernelCodeT(MF, KernelInfo);
     OutStreamer.EmitCodeAlignment(2 << (MF.getAlignment() - 1));
@@ -509,6 +508,19 @@ void AMDGPUAsmPrinter::EmitAmdKernelCode
 
   header.wavefront_size = STM.getWavefrontSize();
 
+  const MCSectionELF *VersionSection = OutContext.getELFSection(".hsa.version",
+      ELF::SHT_PROGBITS, 0, SectionKind::getReadOnly());
+  OutStreamer.SwitchSection(VersionSection);
+  OutStreamer.EmitBytes(Twine("HSA Code Unit:" +
+                        Twine(header.hsail_version_major) + "." +
+                        Twine(header.hsail_version_minor) + ":" +
+                        "AMD:" +
+                        Twine(header.amd_code_version_major) + "." +
+                        Twine(header.amd_code_version_minor) +  ":" +
+                        "GFX8.1:0").str());
+
+  OutStreamer.SwitchSection(getObjFileLowering().getTextSection());
+
   if (isVerbose()) {
     OutStreamer.emitRawComment("amd_code_version_major = " +
                                Twine(header.amd_code_version_major), false);

Modified: llvm/branches/release_36/test/CodeGen/R600/hsa.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/release_36/test/CodeGen/R600/hsa.ll?rev=227365&r1=227364&r2=227365&view=diff
==============================================================================
--- llvm/branches/release_36/test/CodeGen/R600/hsa.ll (original)
+++ llvm/branches/release_36/test/CodeGen/R600/hsa.ll Wed Jan 28 14:46:16 2015
@@ -1,6 +1,8 @@
 ; RUN: llc < %s -mtriple=r600--amdhsa -mcpu=kaveri | FileCheck --check-prefix=HSA %s
 
 ; HSA: {{^}}simple:
+; HSA: .section        .hsa.version
+; HSA-NEXT: .ascii  "HSA Code Unit:0.0:AMD:0.1:GFX8.1:0"
 ; Make sure we are setting the ATC bit:
 ; HSA: s_mov_b32 s[[HI:[0-9]]], 0x100f000
 ; HSA: buffer_store_dword v{{[0-9]+}}, s[0:[[HI]]], 0





More information about the llvm-branch-commits mailing list