summaryrefslogtreecommitdiffstats
path: root/libclc/configure.py
Commit message (Collapse)AuthorAgeFilesLines
* libclc: Drop the old python based build systemJan Vesely2019-11-081-318/+0
| | | | | Reviewer: tstellar Differential Revision: https://reviews.llvm.org/D69966
* configure: Add target specific asm rule.Jan Vesely2018-11-271-1/+3
| | | | | | | | Run the file through target specific preprocessing stage. Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewer: Aaron Watry llvm-svn: 347664
* configure: provide llvm_as helper variableJan Vesely2018-11-271-2/+2
| | | | | | Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewer: Aaron Watry llvm-svn: 347663
* configure: Provide symlink for amdgcn-mesa3d instead of configure hackJan Vesely2018-11-041-2/+0
| | | | | | Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-By: Aaron Watry <awatry@gmail.com> llvm-svn: 346085
* configure: Rework support for gfx9+ devices that were added post LLVM 3.9Jan Vesely2018-09-151-2/+12
| | | | | | | | v2: Fix reference to Vega12/20 enabling commit Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewer: Aaron Watry llvm-svn: 342341
* configure.py: Add gfx900 (Vega, Raven)Vedran Miletic2017-11-271-2/+2
| | | | | | Sort amdgcn-- and amdgcn--amdhsa in a consistent way. llvm-svn: 319017
* configure: Fix handling of directories with compats only source listsJan Vesely2017-10-051-3/+7
| | | | | | Reviewer: Jeroen Ketema Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 315018
* Restore support for llvm-3.9Jan Vesely2017-09-291-4/+16
| | | | | | Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Acked-by: Aaron Watry <awatry@gmail.com> llvm-svn: 314543
* Add missing HAVE_LLVM define to fix build with latest llvmJan Vesely2017-09-261-1/+2
| | | | | | | | | | | | Broken since r314111 V2: pointed out by Jan Vesely - Use format() instead of % formating Patch-by: Pavel Ondračka <pavel.ondracka@gmail.com> Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com> Reviewed-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 314261
* configure.py: Simplify compatibility sourcesJan Vesely2017-09-081-6/+4
| | | | | | | | Just add the SOURCE_X.Y list to the list of sources if X.Y is the current llvm version. Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-by: Tom Stellard <tstellar@redhat.com> llvm-svn: 312837
* configure.py: Drop explicit import of int builtinJan Vesely2017-08-151-6/+0
| | | | | | | | | | I can't reproduce the error that made me add this. Reported-by: Kim Gräsman <kim.grasman@gmail.com> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-by: Kim Gräsman <kim.grasman@gmail.com> Reviewed-by: Aaron Watry <awatry@gmail.com> llvm-svn: 310968
* configure.py: Make python3 friendlyJan Vesely2017-08-021-5/+18
| | | | | | | | | | mostly prints and exceptions. Few behavioral changes are documented in the text Generated Makefile is identical between python2 and python3 Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-by: Aaron Watry <awatry@gmail.com> llvm-svn: 309820
* Fix build since llvm r286566 and require at least llvm 4.0Tom Stellard2016-11-111-2/+2
| | | | llvm-svn: 286634
* configure: Add amdgcn-mesa-mesa3d targetTom Stellard2016-09-161-1/+5
| | | | llvm-svn: 281793
* configure.py: Add polaris10 and polaris11Niels Ole Salscheider2016-08-301-2/+2
| | | | llvm-svn: 280121
* configure: Remove device specific definesJan Vesely2016-06-171-25/+11
| | | | | | Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-by: Tom Stellard <tom@stellard.net> llvm-svn: 273044
* nvptx: Drop feature defines.Jan Vesely2016-06-171-6/+4
| | | | | | | | This is now handled by clang Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-by: Tom Stellard <tom@stellard.net> llvm-svn: 273043
* 64 bit integers are legal in full profile without an extensionJan Vesely2016-06-171-1/+0
| | | | | | Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-by: Tom Stellard <tom@stellard.net> llvm-svn: 273042
* [AMDGPU] Implement get_local_size for amdgcn--amdhsa tripleKonstantin Zhuravlyov2016-04-071-1/+4
| | | | | | Differential Revision: http://reviews.llvm.org/D18284 llvm-svn: 265713
* Split sources for amdgcn and r600Matt Arsenault2016-02-131-4/+4
| | | | | | | | | | | Most files remain in a common amdgpu directory. Also switches barriers to to use convergent, and use llvm.amdgcn.s.barrier. This now requires 3.9/trunk to build amdgcn. llvm-svn: 260777
* configure: Remove llvm 3.6 definesJan Vesely2016-02-091-3/+3
| | | | | | | | we require llvm 3.7 reviewer: tstellard Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 260304
* configure: Remove cl_khr_fp64 for device that don't support doublesJan Vesely2016-02-091-5/+5
| | | | | | | | | Also remove definitions if provided by clang (3.7+) This halves the size of builtin.opt.{cedar,barts}.bc reviewer: tstellard Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 260303
* configure: Introduce per device definesJan Vesely2016-02-091-11/+24
| | | | | | | | | | | Make cl_khr_fp64 define per-device. This patch does not change the generated Makefile (for llvm 3.6, 3.7) v2: Make the device defines per LLVM version, 'all' for all versions reviewer: tstellard Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 260302
* 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
OpenPOWER on IntegriCloud