P4 to Git Change 1303140 by lmoriche@lmoriche_opencl_dev on 2016/08/15 17:04:37
SWDEV-94610 - Code provided by Wilkin - Implement the roc Program Manager to call the Lightning Compiler instead of the compiler library. - Embed and use the pre-compiled header generated by the built-in library build - If LLVM_BIN is not set, try to find Clang from the libamdocl path Testing: http://ocltc.amd.com:8111/viewModification.html?modId=75068&personal=true&buildTypeId=&tab=vcsModificationBuilds&show_all_builds=true Affected files ... ... //depot/stg/opencl/drivers/opencl/compiler/lib/loaders/elf/elf.cpp#35 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/loaders/elf/elf.hpp#24 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/blitcl.cpp#9 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/device.cpp#200 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/build/Makefile.oclrocm#7 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/roccompiler.cpp#5 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#7 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rockernel.cpp#5 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rockernel.hpp#4 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmetadata.cpp#1 add ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmetadata.hpp#1 add ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#7 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.hpp#5 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#8 edit ... //depot/stg/opencl/drivers/opencl/runtime/platform/program.cpp#81 edit
This commit is contained in:
1 förälder
7aebeaacb2
incheckning
e682abb47e
14 files changed
+1923
-134
No files matched your search
@@ -97,16 +97,18 @@ namespace {
|
||||
"Dwarf debug frame" },
|
||||
{ OclElf::JITBINARY, ".text", ELF_T_BYTE, 1, SHT_PROGBITS, SHF_ALLOC | SHF_EXECINSTR,
|
||||
"x86 JIT Binary" },
|
||||
{ OclElf::CODEGEN, ".cg", ELF_T_BYTE, 1, SHT_PROGBITS, 0,
|
||||
{ OclElf::CODEGEN, ".cg", ELF_T_BYTE, 1, SHT_PROGBITS, 0,
|
||||
"Target dependent IL" },
|
||||
{ OclElf::TEXT, ".text", ELF_T_BYTE, 1, SHT_PROGBITS, SHF_ALLOC | SHF_EXECINSTR,
|
||||
"Device specific ISA" },
|
||||
{ OclElf::INTERNAL, ".internal", ELF_T_BYTE, 1, SHT_PROGBITS, 0,
|
||||
{ OclElf::INTERNAL, ".internal", ELF_T_BYTE, 1, SHT_PROGBITS, 0,
|
||||
"Internal usage" },
|
||||
{ OclElf::SPIR, ".spir", ELF_T_BYTE, 1, SHT_PROGBITS, 0,
|
||||
{ OclElf::SPIR, ".spir", ELF_T_BYTE, 1, SHT_PROGBITS, 0,
|
||||
"Vendor/Device-independent LLVM IR" },
|
||||
{ OclElf::SPIRV, ".spirv", ELF_T_BYTE, 1, SHT_PROGBITS, 0,
|
||||
"SPIR-V Binary" },
|
||||
{ OclElf::RUNTIME_METADATA,".AMDGPU.runtime_metadata", ELF_T_BYTE, 1, SHT_PROGBITS, 0,
|
||||
"AMDGPU runtime metadata" },
|
||||
};
|
||||
|
||||
// index 0 is reserved and must be there (NULL section)
|
||||
|
||||
@@ -53,12 +53,12 @@ bool isCALTarget(const char* p, signed char ec);
|
||||
// Symbol handle
|
||||
typedef struct symbol_handle *Sym_Handle;
|
||||
|
||||
class OclElf
|
||||
class OclElf
|
||||
{
|
||||
public:
|
||||
enum {
|
||||
CAL_BASE = 1001, // A number that is not dependent on libelf.h
|
||||
CPU_BASE = 2001,
|
||||
CPU_BASE = 2001,
|
||||
CPU_FEATURES_FIRST = 0, // Never generated, but keep it for simplicity.
|
||||
CPU_FEATURES_LAST = 0xF // This should be consistent with cpudevice.hpp
|
||||
} oclElfBase;
|
||||
@@ -66,23 +66,25 @@ public:
|
||||
typedef enum {
|
||||
// NOTE!!! Never remove an entry or change the order.
|
||||
|
||||
// All CAL targets are within [CAL_FIRST, CAL_LAST].
|
||||
// All CAL targets are within [CAL_FIRST, CAL_LAST].
|
||||
CAL_FIRST = CAL_TARGET_600 + CAL_BASE,
|
||||
CAL_LAST = CAL_TARGET_LAST + CAL_BASE,
|
||||
|
||||
|
||||
// All CPU targets are within [CPU_FIRST, CPU_LAST]
|
||||
CPU_FIRST = CPU_FEATURES_FIRST + CPU_BASE,
|
||||
CPU_LAST = CPU_FEATURES_LAST + CPU_BASE,
|
||||
CPU_LAST = CPU_FEATURES_LAST + CPU_BASE,
|
||||
|
||||
OCL_TARGETS_LAST,
|
||||
} oclElfTargets;
|
||||
|
||||
|
||||
typedef enum {
|
||||
CAL_PLATFORM = 0,
|
||||
CPU_PLATFORM = 1,
|
||||
COMPLIB_PLATFORM = 2,
|
||||
LAST_PLATFORM = 3
|
||||
} oclElfPlatform;
|
||||
|
||||
LC_PLATFORM = 3,
|
||||
LAST_PLATFORM = 4
|
||||
} oclElfPlatform;
|
||||
|
||||
typedef enum {
|
||||
LLVMIR = 0,
|
||||
SOURCE,
|
||||
@@ -114,6 +116,7 @@ public:
|
||||
INTERNAL,
|
||||
SPIR,
|
||||
SPIRV,
|
||||
RUNTIME_METADATA,
|
||||
OCL_ELF_SECTIONS_LAST
|
||||
} oclElfSections;
|
||||
|
||||
|
||||
Reference in new issue
Block a user