| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 296164
|
|
|
|
|
|
|
|
|
|
| |
Trivially define native_tan as a redirect to tan.
If there are any targets with a native implementation, we can deal with it later.
Signed-off-by: Aaron Watry <awatry@gmail.com>
Reviewed-by: Matt Arsenault <arsenm2@gmail.com>
llvm-svn: 295920
|
|
|
|
|
|
|
| |
The previous location outside the block would crash prepare-builtins
when no the builtins file accidentially not passed on the command line.
llvm-svn: 294916
|
|
|
|
| |
llvm-svn: 294915
|
|
|
|
|
|
|
|
| |
Trivial define to rsqrt.
Patch by Vedran Miletić <vedran@miletic.net>
llvm-svn: 294608
|
|
|
|
|
|
|
|
|
| |
Ported from the amd-builtins branch.
Signed-off-by: Aaron Watry <awatry@gmail.com>
Reviewed-by: Matt Arsenault <Matthew.Arsenault@amd.com>
CC: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 292335
|
|
|
|
|
|
|
|
|
| |
Ported from the amd-builtins branch.
Signed-off-by: Aaron Watry <awatry@gmail.com>
Reviewed-by: Matt Arsenault <Matthew.Arsenault@amd.com>
CC: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 292334
|
|
|
|
| |
llvm-svn: 286839
|
|
|
|
| |
llvm-svn: 286634
|
|
|
|
|
|
| |
clang won't accept half precision loads and stores without cl_khr_fp16 since r281904
llvm-svn: 282106
|
|
|
|
| |
llvm-svn: 281793
|
|
|
|
| |
llvm-svn: 281792
|
|
|
|
| |
llvm-svn: 281791
|
|
|
|
|
|
| |
Signed-off-by: Aaron Watry <awatry@gmail.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 281566
|
|
|
|
|
|
|
|
| |
Just use lgamma_r and ignore the value returned in the second argument
Signed-off-by: Aaron Watry <awatry@gmail.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 281565
|
|
|
|
|
|
|
|
|
| |
Ported from the amd-builtins branch, which is itself based on the
Sun Microsystems implementation.
Signed-off-by: Aaron Watry <awatry@gmail.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 281564
|
|
|
|
|
|
|
|
|
|
|
| |
This macro is currently unused, but I plan to use it shortly.
The previous form did casts of pointers without an address space, which
doesn't work so well for CL 1.x.
Signed-off-by: Aaron Watry <awatry@gmail.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 281563
|
|
|
|
|
|
| |
This one passes conformance.
llvm-svn: 280961
|
|
|
|
|
|
|
|
|
|
| |
clang (since r280553) allows pointer casts in function overloads,
so we need to disambiguate the second argument.
clang might be smarter about overloads in the future
see https://reviews.llvm.org/D24113, but let's be safe in libclc anyway.
llvm-svn: 280871
|
|
|
|
| |
llvm-svn: 280121
|
|
|
|
| |
llvm-svn: 279723
|
|
|
|
|
|
|
|
|
|
| |
This should be uniqued when linking, but right now it creates
a lot of metadata spam listing the same version. This should also
probably be reporting the compiled version of the user program,
which may differ from the library. Currently the library IR files report
1.0 while 1.1/1.2 are the default for user programs.
llvm-svn: 279692
|
|
|
|
| |
llvm-svn: 279656
|
|
|
|
| |
llvm-svn: 279644
|
|
|
|
| |
llvm-svn: 279359
|
|
|
|
| |
llvm-svn: 279350
|
|
|
|
| |
llvm-svn: 279343
|
|
|
|
|
| |
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
llvm-svn: 278962
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
OpenCL 1.0: "Returns y if y < x, otherwise it returns x. If x *and* y
are infinite or NaN, the return values are undefined."
OpenCL 1.1+: "Returns y if y < x, otherwise it returns x. If x *or* y
are infinite or NaN, the return values are undefined."
The 1.0 version is stricter so use that one.
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
llvm-svn: 276704
|
|
|
|
|
|
|
| |
This implementation was ported from the AMD builtin library
and has been tested with piglit, OpenCV, and the ocl conformance tests.
llvm-svn: 276497
|
|
|
|
|
|
|
| |
This implementation was ported from the AMD builtin library
and has been tested with piglit, OpenCV, and the ocl conformance tests.
llvm-svn: 276496
|
|
|
|
| |
llvm-svn: 276495
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also fix get_global_id to consider offset
No idea how to add this for ptx, so they are stuck with the old get_global_id
implementation.
v2: split to a separate patch
v3: Switch R600 to use implictarg.ptr
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
llvm-svn: 276443
|
|
|
|
|
|
|
|
|
|
|
| |
v2: split into 2 patches
use clang builtins for other intrinsics as well
v3: Fix warnings
Switch r600 to use implictarg.ptr
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
llvm-svn: 276442
|
|
|
|
|
|
| |
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Acked-By: Aaron Watry <awatry@gmail.com>
llvm-svn: 276423
|
|
|
|
|
|
|
| |
The r600 path has never actually worked sinced double is not implemented
there.
llvm-svn: 276009
|
|
|
|
| |
llvm-svn: 275874
|
|
|
|
|
|
|
| |
It didn't really work on r600 to begin with, which should
get its own intrinsic.
llvm-svn: 275813
|
|
|
|
|
|
| |
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Reviewed-by: Tom Stellard <tom@stellard.net>
llvm-svn: 273044
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Reviewed-by: Tom Stellard <tom@stellard.net>
llvm-svn: 273042
|
|
|
|
|
|
|
|
|
|
| |
Fixes fdim piglit on Turks
v2: use CL fmax instead of __builtin
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Reviewed-by: Tom Stellard <tom.stellard@amd.com>
llvm-svn: 269807
|
|
|
|
|
|
|
|
|
|
|
|
| |
The scalar float/double function bodies are a direct copy/paste,
aside from the removed (optional) code in float function body that
requires subnormals.
reviewers: jvesely
Patch by: Vedran Miletić <rivanvx@gmail.com>
llvm-svn: 268766
|
|
|
|
|
|
|
|
|
|
|
| |
Based on the amd-builtin, but explicitly vectorized for all sizes (not just
float4), and includes a vectorized double implementation.
Passes piglit (float) tests on pitcairn.
Signed-off-by: Aaron Watry <awatry@gmail.com>
Reviewed-by: Jan Vesely <jan.vesely@rutgers.edu>
llvm-svn: 268708
|
|
|
|
|
|
|
|
| |
This function has been removed from LLVM.
Patch By: Laurent Carlier
llvm-svn: 266430
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D18284
llvm-svn: 265713
|
|
|
|
| |
llvm-svn: 264949
|
|
|
|
|
|
| |
Signed-off-by: Aaron Watry <awatry@gmail.com>
Reviewed-by: Jan Vesely <jan.vesely@rutgers.edu>
llvm-svn: 261714
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The scalar float/double function bodies are a direct copy/paste
with usage of the CLC wrappers to vectorize them.
This commit also adds in the FP_ILOGB0 and FP_ILOGBNAN macros which are
equal to the results of ilogb(0.0f) and ilogb(float nan) respectively.
v2: Add FP_ILOGB0 and FP_ILOGBNAN definitions
Signed-off-by: Aaron Watry <awatry@gmail.com>
Reviewed-by: Jan Vesely <jan.vesely@rutgers.edu>
v1 Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 261639
|
|
|
|
| |
llvm-svn: 261043
|