From 93e06894ae5d4faa8b335e39a8bfdd494d4a96b2 Mon Sep 17 00:00:00 2001
From: foreman
Date: Wed, 6 Aug 2014 15:13:39 -0400
Subject: [PATCH] P4 to Git Change 1063520 by kanarayan@kanarayan-ubun-stream
on 2014/08/06 15:03:51
ECR #333753 - RS compilation path.
RS compilation will be in 2 stages, first generates BRIG and the next is done via HSA Finalize API (that involves a load step).
Existing code in compiler/lib has a bug in that when the final output expected is HSAIL_BINARY, compilation should stop with invoking the llvm compiler (and the built-in assembler), not go all the way to ISA.
Tests: precheckin, hsa smoke
hsa/tests/RS/ test harness will be changed in a separate changelist.
Affected files ...
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#44 edit
... //depot/stg/opencl/drivers/opencl/compiler/tools/aoc2/aoc2.cpp#57 edit
[ROCm/clr commit: 587b0697375e92a821df2580494fc4395804ed12]
---
.../clr/rocclr/compiler/lib/backends/common/v0_8/if_acl.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/projects/clr/rocclr/compiler/lib/backends/common/v0_8/if_acl.cpp b/projects/clr/rocclr/compiler/lib/backends/common/v0_8/if_acl.cpp
index c1715f4077..14608bb8e8 100644
--- a/projects/clr/rocclr/compiler/lib/backends/common/v0_8/if_acl.cpp
+++ b/projects/clr/rocclr/compiler/lib/backends/common/v0_8/if_acl.cpp
@@ -1381,7 +1381,7 @@ if_aclCompile(aclCompiler *cl,
bool stages[5] = {false};
uint8_t sectable[ACL_TYPE_LAST] =
- { 0, 0, 1, 1, 1, 1, 0, 6, 0, 6, 4, 4, 4, 0, 5, 0, 1 };
+ { 0, 0, 1, 1, 1, 1, 0, 6, 0, 4, 4, 4, 4, 0, 5, 0, 1 };
aclSections d_section[7] =
{ aclSOURCE, aclLLVMIR, aclSPIR, aclSOURCE, aclCODEGEN, aclTEXT, aclINTERNAL };
uint8_t start = sectable[from];
@@ -2734,7 +2734,7 @@ bool aclRenderscriptCompile(
#if 1
// Dump HSAIL and ISA to a temporary file in the working directory.
- error_code = aclCompile(aoc, aoe, "-save-temps=tmp", ACL_TYPE_RSLLVMIR_BINARY, ACL_TYPE_ISA, myLogFunc);
+ error_code = aclCompile(aoc, aoe, "-save-temps=tmp", ACL_TYPE_RSLLVMIR_BINARY, ACL_TYPE_HSAIL_BINARY, myLogFunc);
#else
error_code = aclCompile(aoc, aoe, NULL, ACL_TYPE_RSLLVMIR_BINARY, ACL_TYPE_ISA, myLogFunc);
#endif