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
Dieser Commit ist enthalten in:
foreman
2014-08-06 15:13:39 -04:00
Ursprung c90818dd9a
Commit 587b069737
@@ -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