summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix a build problem when the llvm version has the fix version digit.Zhigang Gong2013-11-271-1/+1
| | | | | | | | | | If the llvm version is something like 3.3.1, the previous cmake script will generate an incorrect cflags as: -DLLVM_33 1 which breaks the build. This commit also update the stable llvm version from 3.1 to 3.3. Signed-off-by: Zhigang Gong <zhigang.gong@intel.com> Reviewed-by: Yang Rong <rong.r.yang@intel.com>
* Bump to version 0.3.Zhigang Gong2013-10-221-1/+1
| | | | | | Also update some documents accordingly. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com>
* GBE/Runtime: implement workaround for IVB sampler bugZhigang Gong2013-09-261-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Per IVB spec, If the surface format of the associated surface is UINT or SINT, the Surface Type cannot be SURFTYPE_3D or SURFTYPE_CUBE and Address Control Mode cannot be CLAMP_BORDER or HALF_BORDER. Besides this bug, there is another undocumented issue. If a surface data type is IEEE float. Then when we use sampler to sample the pixel, if the value is betweeo -1p-20 to 0, the sampler will rounding it to zero. And this will also bring problem when we are using the clamp mode. This patch is to workaround the above two hardware issues. It introduces a new intrinsic get_sampler_info to get a sampler type at runtime. When calling to read_image, it will check whether it hits the above two cases. If it hit case 1, then we will force it to use clamp to edge for those pixels within the box, And for those pixel out of the box, we manually set the border color. To achieve this solution, we have to prepare two sampler slot for each CL_ADDRESS_CLAMP sampler. And the first has slot_1 which is using CL_ADDRESS_CLAMP, the second use slot_1 + 8. Thus we can only use half of 16 samplers. Fortunately, 8 samplers comply with the OpenCL's minimal requirement. If it hits case 2, then we minor a epsilon to the coordinate, and let it not rounds to zero. If possible, programer should avoid to use float coordinates and/or int/uint format image. Otherwise, it will hit the very slow path. With this workaround, the compiler_copy_image1 can pass now. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Reviewed-by: "Yang, Rong R" <rong.r.yang@intel.com>
* Refine cmake script file.Zhigang Gong2013-09-181-9/+6
| | | | | | | | | Remove GBM which is not needed. Adjust the header file including sequence to avoid including incorrect cl header file when compile with mesa source code package. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Tested-by: "Yang, Rong R" <rong.r.yang@intel.com>
* check whether python is installed.Zhigang Gong2013-07-241-0/+2
| | | | | | | | We need python to do some source code generation things. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Reviewed-by: He Junyan <junyan.he@inbox.com> Reviewed-by: Simon Richter <Simon.Richter@hogyros.de>
* CL: Refine the version string handling.Zhigang Gong2013-07-121-2/+4
| | | | | | | | | Now concentrate the version assignment at the root cmake files. All the other place will refer the specified macros other than hard coded a number. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Reviewed-by: Song, Ruiling <ruiling.song@intel.com>
* Bump the version number.Release_v0.2Zhigang Gong2013-07-051-1/+1
| | | | | | The library version is now 0.2, and the Opencl spec number is 1.1. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com>
* Change CMake to support LLVM 3.1.Yang Rong2013-05-231-1/+1
| | | | | | | Also fix LLVM 3.1 build errors caused by my vector scalarize commit. Signed-off-by: Yang Rong <rong.r.yang@intel.com> Reviewed-by: Zhigang Gong <zhigang.gong@linux.intel.com>
* CMakeLists.txt enable custom C/CXXFLAGSMario Kicherer2013-05-081-2/+2
| | | | | Signed-off-by: Mario Kicherer <dev@kicherer.org> Reviewed-by: Zhigang Gong <zhigang.gong@linux.intel.com>
* Implement KHR ICD extensionSimon Richter2013-04-181-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | This adds a pointer to the dispatch table at the beginning of every object of type - cl_command_queue - cl_context - cl_device_id - cl_event - cl_kernel - cl_mem - cl_platform_id - cl_program - cl_sampler as required by the ICD specification. The layout of the dispatch table comes from the OpenCL ICD loader by Brice Videau <brice.videau@imag.fr> and Vincent Danjean <Vincent.Danjean@ens-lyon.org>. To avoid dispatch table entries being overwritten with the ICD loader's implementations of the CL functions (as would be the proper behaviour for the ELF loader), the -Bsymbolic option is given to the linker. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com>
* --no-rtti should be changed to -fno-rtti in clang++Lu Guanqun2013-04-171-1/+1
| | | | | Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Reviewed-by: Zhigang Gong <zhigang.gong@linux.intel.com>
* Set the initial library versions to 0.1.Zhigang Gong2013-04-101-1/+8
| | | | | | | | We have two libraries here, one is the gen backend and the other is libcl runtime library. We set both initial versions to 0.1. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Reviewed-by: Lu Guanqun <guanqun.lu@intel.com>
* Implement cl_khr_gl_sharing by using upstream technology.Zhigang Gong2013-04-101-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | The previous implementation use a modified mesa library and can't work with upstream mesa. Now I managed to use existing egl extension and gbm to import a gl texture to a cl image. Actually, the gbm can't fully support our purpose, as it can't lookup image for egl x11 platform. We have to touch gbm's internal data structure to manually initialize its image extension. Furthermore, gbm only provide the API to get the image's handle, and doesn't provide the one to get image's name. As we are using different fd from the existing GL loader. The handle is useless for us. I use the DRI2 image extension function directly to get the name rather than the handle. And it works well. Now, after this patch applied. The cl_khr_gl_sharing could work with upstream mesa. I recommend you use the latest git master version. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Tested-by: Homer Hsing <homer.xing@intel.com>
* Don't always set build type to DEBUGO0.Zhigang Gong2013-04-101-1/+0
| | | | | | | This line was committed by accident. Now remove it. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Reviewed-by: Lu Guanqun <guanqun.lu@intel.com>
* Find GBM/EGL library at build time.Zhigang Gong2013-04-101-0/+19
| | | | | | | | We will change to use EGL_KHR_gl_texture_2D_image and GBM library to implement OCL and OGL interoperation. We need to check GBM. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Tested-by: Homer Hsing <homer.xing@intel.com>
* backend: Add LLVM stable version supportFeng, Boqun2013-04-101-1/+1
| | | | | | | | | | | support current llvm stable version 3.2 modify cmake file to check the version of llvm provided by system or configured by LLVM_INSTALL_DIR, and add a macro define in the format LLVM_<MAJOR><MINOR> according the version, this macro can be used for llvm version-specific code. Signed-off-by: Feng, Boqun <boqun.feng@intel.com> Reviewed-by: Homer Hsing <homer.xing@intel.com>
* Refine CMake to check llvm version.Zhigang Gong2013-04-101-12/+18
| | | | | | | | This branch need llvm 3.3 or newer version. We need to modify the cmake to check the version. This commit also fixed some minor bugs in the find_packages, and removed those useless files. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com>
* CMake fixup.Zhigang Gong2013-03-291-3/+7
| | | | | | | Add a FindLLVM to handle the llvm package finding function. Fixed the broken CMake files in backend. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com>
* Reenabled the CMake build path. It is really imperfect and the build CMakebsegovia2012-08-131-1/+4
| | | | scripts should be cleanly unified later
* Cleaned up the code from previous unused dependencies Upate the READMEBenjamin Segovia2012-08-101-8/+7
|
* tests -> utestsBenjamin Segovia2012-08-101-1/+1
|
* Added some functionalities for the test frameworkBenjamin Segovia2012-08-101-1/+1
|
* Moved tests in a separate directoryBenjamin Segovia2012-08-101-0/+1
|
* Removed Gen6 Stripped out all dependencies from previous compiler Added a ↵Benjamin Segovia2012-08-101-0/+8
| | | | dependency on the new compiler
* Ported the code to HSWbsegovia2012-08-101-3/+10
|
* Silent GCC warnings in release modebsegovia2012-08-101-2/+5
|
* Removed warningsbsegovia2012-08-101-1/+0
|
* Started to support Gen7 Implemented new surface state for Gen7bsegovia2012-08-101-1/+15
|
* Cleaned and simplified CMakeLists file Fixed some warnings with latest GCCbsegovia2012-08-101-13/+3
|
* Added all miniCL filesbsegovia2012-08-101-0/+80