compiler / preprocessor_line_error PASS

Test metadata

Name preprocessor_line_error
Category compiler
Suite Khronos OpenCL CTS
Suite version 80a4a833
Executable path /test_conformance/compiler/bin/test_compiler
Arguments preprocessor_line_error

Run metadata

Parent job Job 125
Revision 147ff1b494bc6a3… / [SPIR-V] Fix llvm deprecated warnings
Driver version NEO 22.34.24023; IGC 1.0.11702.1
Date run 03/20/2023
Duration 0 minutes
Status PASS

Runner output

Stdout from the runner of the corresponding OpenCL CTS test:

Initializing random seed to 0.
Requesting Default device based on command line for platform index 0 and device index 0
Compute Device Name = Intel(R) UHD Graphics 630 [0x3e98], Compute Device Vendor = Intel(R) Corporation, Compute Device Version = OpenCL 3.0 NEO , CL C Version = OpenCL C 1.2
Device latest conformance version passed: v2022-04-22-00
Supports single precision denormals: YES
sizeof( void*) = 8 (host)
sizeof( void*) = 8 (device)
preprocessor_line_error...
test_preprocessor_line_error may report spurious ERRORS in the conformance log.
Build error detected at clBuildProgram.Build failed as expected with #error in source:
Build log is: ------------
fictitious/file/name.c:124:2: error: some error
#error some error
^

Original source is: ------------
__kernel void line_error_test(__global int *dstA)
{
int tid = get_global_id(0);
#line 124 "fictitious/file/name.c"
#error some error
dstA[tid] = tid;

}

----------
Found file name from #line param in log output.
Found line number from #line param in log output.
test_preprocessor_line_error PASSED.
preprocessor_line_error passed
PASSED sub-test.
PASSED test.

Stderr from the runner of the corresponding OpenCL CTS test:

Runner dumps

The files below were generated by the Intel Graphics Compiler after setting the IGC_ShaderDumpEnable=1 variable. OCL_asmX_before_spirv_backend.spv is the input binary SPIR-V generated by the IGC's OpenCL frontend, from which the SPIRV-LLVM-Translator generates OCL_asmX_before_spirv_backend.ll module which is passed to the SPIR-V backend. The backend outputs OCL_asmX_after_spirv_backend.spv SPIR-V binary which returns to IGC to be translated to LLVM module OCL_asmX_after_spirv_backend.ll for further compilation.