diff options
author | Luo Xionghu <xionghu.luo@intel.com> | 2015-05-12 13:45:18 +0800 |
---|---|---|
committer | Zhigang Gong <zhigang.gong@intel.com> | 2015-05-15 10:43:21 +0800 |
commit | d8ecbcd53a6a1bd317ddba2b93efb55ae3c4b9bd (patch) | |
tree | 6af018012ca0feeac3b7e6f43fdb87e2b670262c | |
parent | 9ff560d00932eb3e97b9fece016704ad81ac3041 (diff) |
add environment variable OCL_OUTPUT_KERNEL_SOURCE.
export the variable to 1 to view the building or compiling kernel's
source code. By default, it is false and GBE will not print any code.
v2: also output the build options if not empty.
Signed-off-by: Luo Xionghu <xionghu.luo@intel.com>
Reviewed-by: "Song, Ruiling" <ruiling.song@intel.com>
-rw-r--r-- | backend/src/backend/program.cpp | 9 | ||||
-rw-r--r-- | docs/Beignet/Backend.mdwn | 3 |
2 files changed, 12 insertions, 0 deletions
diff --git a/backend/src/backend/program.cpp b/backend/src/backend/program.cpp index eee7c3c5..5d1ea23a 100644 --- a/backend/src/backend/program.cpp +++ b/backend/src/backend/program.cpp @@ -634,6 +634,7 @@ namespace gbe { SVAR(OCL_PCH_PATH, OCL_PCH_OBJECT); SVAR(OCL_HEADER_FILE_DIR, OCL_HEADER_DIR); + BVAR(OCL_OUTPUT_KERNEL_SOURCE, false); static bool processSourceAndOption(const char *source, const char *options, @@ -665,6 +666,14 @@ namespace gbe { } } assert(findOcl); + if (OCL_OUTPUT_KERNEL_SOURCE) { + if(options) { + std::cout << "Build options:" << std::endl; + std::cout << options << std::endl; + } + std::cout << "CL kernel source:" << std::endl; + std::cout << source; + } std::string includePath = "-I" + headerFilePath; clOpt.push_back(includePath); bool useDefaultCLCVersion = true; diff --git a/docs/Beignet/Backend.mdwn b/docs/Beignet/Backend.mdwn index cf803180..583e5d2d 100644 --- a/docs/Beignet/Backend.mdwn +++ b/docs/Beignet/Backend.mdwn @@ -45,6 +45,9 @@ Environment variables are used all over the code. Most important ones are: Normally, you don't need to set it, we will select suitable simd width for a given kernel. Default value is 16. +- `OCL_OUTPUT_KENERL_SOURCE` `(0 or 1)`. Output the building or compiling kernel's + source code. + - `OCL_OUTPUT_GEN_IR` `(0 or 1)`. Output Gen IR (scalar intermediate representation) code |