summaryrefslogtreecommitdiffstats
path: root/libclc/configure.py
Commit message (Collapse)AuthorAgeFilesLines
* AMDGPU: Add aliases for all VI targetsTom Stellard2015-12-151-1/+1
| | | | llvm-svn: 255663
* AMDGPU: Add alias for tongaTom Stellard2015-12-151-1/+1
| | | | | | Patch by: Vedran Mileti llvm-svn: 255662
* Require LLVM >=3.7 and bump version to 0.2.0Jeroen Ketema2015-08-071-5/+6
| | | | | | | | v2: Also remove LLVM 3.6 traces from prepare-builtins.cpp Patch by: EdB llvm-svn: 244310
* Allow compilation depending to the LLVM versionTom Stellard2015-04-291-1/+15
| | | | | | | | | It allows to keep temporary compatibilty with older version. For exemple, this can be use when change are not to large. Patch by: EdB llvm-svn: 236113
* configure: Add --enable-runtime-subnormal optionTom Stellard2015-04-201-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes it possible for runtime implementations to disable subnormal handling at runtime. When this flag is enabled, decisions about how to handle subnormals in the library will be controlled by an external variable called __CLC_SUBNORMAL_DISABLE. Function implementations should use these new helpers for querying subnormal support: __clc_fp16_subnormals_supported(); __clc_fp32_subnormals_supported(); __clc_fp64_subnormals_supported(); In order for the library to link correctly with this feature, users will be required to either: 1. Insert this variable into the module (if using the LLVM/Clang C++/C APIs). 2. Pass either subnormal_disable.bc or subnormal_use_default.bc to the linker. These files are distributed with liblclc and installed to $(installdir). e.g.: llvm-link -o kernel-out.bc kernel.bc builtins-nosubnormal.bc subnormal_disable.bc or llvm-link -o kernel-out.bc kernel.bc builtins-nosubnormal.bc subnormal_use_default.bc If you do not supply the --enable-runtime-subnormal then the library behaves the same as it did before this commit. In addition to these changes, the patch adds helper functions that should be used when implementing library functions that need special handling for denormals: __clc_fp16_subnormals_supported(); __clc_fp32_subnormals_supported(); __clc_fp64_subnormals_supported(); llvm-svn: 235329
* Use amdgcn triple for SI+ GPUsTom Stellard2015-01-061-4/+7
| | | | llvm-svn: 225296
* Require LLVM 3.6 and bump version to 0.1.0Tom Stellard2014-12-311-5/+7
| | | | | | | | Some functions are implemented using hand-written LLVM IR, and LLVM assembly format is allowed to change between versions, so we should require a specific version of LLVM. llvm-svn: 225041
* configure: Add rpath to prepare-builtins utilJan Vesely2014-09-021-1/+2
| | | | | | | | v2: use space instead of '=' to make Mac happy Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-by: Jeroen Ketema <j.ketema@imperial.ac.uk> llvm-svn: 216922
* R600: Add aliases for hainan and mullinsTom Stellard2014-08-201-1/+1
| | | | llvm-svn: 216126
* Add generic nvptx targetsTom Stellard2014-02-141-0/+2
| | | | | | | | These do not import the code specific to nvidiacl Patch by: Jeroen Ketema llvm-svn: 201431
* Revert "Enforce python2 for systems that use python3 as their default."Tom Stellard2014-02-121-1/+1
| | | | | | | | | This reverts commit r200413. This was breaking the build on systems where the python 2.x executable was called python. llvm-svn: 201239
* Fixed rules names so they are unique when aliases are present.Tom Stellard2014-01-291-3/+5
| | | | | | | | | This is necessary for building with Ninja because it does not allow duplicate rule names. Patch by: Dan Liew llvm-svn: 200415
* Fixed ninja build issues relating to use of $(DESTDIR)Tom Stellard2014-01-291-3/+3
| | | | | | | | | | We use ${DESTDIR} syntax now instead of $(DESTDIR) because that syntax works both is the shell (at least it does for bash) and for make (at least it does for GNU Make) Patch By: Dan Liew llvm-svn: 200414
* Enforce python2 for systems that use python3 as their default.Tom Stellard2014-01-291-1/+1
| | | | | | Patch by: Dan Liew llvm-svn: 200413
* Pass -fno-builtin flag to clang to silence warningsAaron Watry2013-12-291-0/+1
| | | | | Reviewed-by: Aaron Watry <awatry@gmail.com> llvm-svn: 198168
* Fix build with LLVM 3.5Aaron Watry2013-12-291-0/+6
| | | | | Reviewed-by: Aaron Watry <awatry@gmail.com> llvm-svn: 198167
* R600: Add aliases for Sea Islands GPUsTom Stellard2013-11-181-1/+1
| | | | llvm-svn: 195023
* Make C++ compiler configurableTom Stellard2013-10-231-3/+8
| | | | | | | | | | | | The C++ compiler used to build prepare-builtins may differ from the llvm/clang for which we are building libclc. Use 'clang++' as the default compiler. Patch by: Jeroen Ketema llvm-svn: 193220
* Port pocl's gen_convert.py script to libclcTom Stellard2013-10-101-0/+3
| | | | | | | This script generates implementations for the entire set of convert_* functions, llvm-svn: 192385
* Implement nextafter() builtinTom Stellard2013-10-101-0/+1
| | | | | | | | | | | | | | There are two implementations of nextafter(): 1. Using clang's __builtin_nextafter. Clang replaces this builtin with a call to nextafter which is part of libm. Therefore, this implementation will only work for targets with an implementation of libm (e.g. most CPU targets). 2. The other implementation is written in OpenCL C. This function is known internally as __clc_nextafter and can be used by targets that don't have access to libm. llvm-svn: 192383
* Place pkg-config file in $prefix/share/pkgconfig.Tom Stellard2013-09-051-1/+1
| | | | | | | | | | libclc is ABI-agnostic, and $prefix/lib/pkgconfig causes issues on multilib setups. Using $prefix/share/pkgconfig allows us to reuse a single libclc build across all system ABIs. Patch by: Michał Górny llvm-svn: 190107
* configure: Fix build when clang is installed to a non-standard prefixTom Stellard2013-08-101-2/+3
| | | | llvm-svn: 188129
* configure: Enable building separate libraries for target variantsTom Stellard2013-06-261-44/+73
| | | | llvm-svn: 184991
* configure: fix out-of-source buildTom Stellard2013-06-261-2/+3
| | | | | | Patch by: Niels Ole Salscheider llvm-svn: 184990
* Allow targets to override generic implementationsTom Stellard2013-06-261-0/+8
| | | | | | | | | | | | Targets can override generic implementations by adding a file called OVERRIDES in $(TARGET_DIR)/lib and listing the generic implementations that it wants to override. For example, to override get_group_id() and get_global_size() you would add these lines to the OVERRIDES file: workitem/get_group_id.cl workitem/get_global_size.cl llvm-svn: 184982
* Make libclc more Linux FHS conform.Tom Stellard2013-06-261-14/+51
| | | | | | | | | | | | | | | - First introducing a versioning scheme - Add --libexecdir, --includedir and --pkgconfigdir and prefill them as well as --prefix - Build all targets by default - Create clc.pc and install it in $pkgconfigdir - Use clang++ instead of c++ - Rename builtins.bc to built_libs/$triple.bc and install them in $libexecdir - Includes are installed recursively to $includedir - Finally add $(DESTDIR) for 'make install' Patch by: Johannes Obermayr llvm-svn: 184981
* r600: Initial supportTom Stellard2013-06-261-1/+1
| | | | | | | This includes a get_global_id() implementation and function stubs for the other workitem and synchronization functions. llvm-svn: 184975
* Fix build against recent versions of Clang. Based on patch by Alastair ↵Peter Collingbourne2012-12-051-2/+3
| | | | | | Donaldson! llvm-svn: 169362
* configure.py: Add an install rule.Peter Collingbourne2012-06-011-11/+26
| | | | llvm-svn: 157821
* Enable cl_khr_fp64 when building the library, and fix several bugsPeter Collingbourne2012-05-291-0/+1
| | | | | | uncovered when doing so. llvm-svn: 157617
* Switch to the NVPTX backend.Peter Collingbourne2012-05-281-2/+2
| | | | llvm-svn: 157589
* Initial commit.Peter Collingbourne2012-01-081-0/+133
llvm-svn: 147756
OpenPOWER on IntegriCloud