[PATCH 00/11] Cleanup headers

This series cleans up the headers of few unary functions.
It removes the intrinsic declarations and provides proper function
definitions.

I've tested the changes by running corresponding piglits on my raven
machine. There's also the check script that is run by CI. [0,1]

Bugzilla: https://bugs.llvm.org/show_bug.cgi?id=41031
[0] https://travis-ci.org/jvesely/libclc/builds/505088508
[1] https://ci.appveyor.com/project/jvesely/libclc/builds/23002690

thanks,
Jan

Jan Vesely (11):
  mad: Convert to standard ternary header
  sqrt: Split function generation to a shared inc file.
  ceil: Remove llvm intrinsic from the header.
  fabs: Remove llvm intrinsic from the header.
  floor: Remove llvm isntrinsic from the header.
  rint: Remove llvm intrinsic from the header.
  round: Remove llvm intrinsic from the header
  trunc: Remove llvm intrinsic from the header.
  Move ternary_intrinsic.h to private headers.
  Move binary_intrinsic.h to private headers.
  Move unary_instrinsic.inc to private headers.

generic/include/clc/math/ceil.h | 11 +++++----
generic/include/clc/math/fabs.h | 11 +++++----
generic/include/clc/math/floor.h | 11 +++++----
generic/include/clc/math/mad.h | 7 +++++-
generic/include/clc/math/mad.inc | 1 -
generic/include/clc/math/rint.h | 11 +++++----
generic/include/clc/math/round.h | 10 ++++----
generic/include/clc/math/trunc.h | 10 ++++----
.../include/{clc => }/math/binary_intrin.inc | 0
generic/include/math/clc_fma.h | 2 +-
.../include/{clc => }/math/ternary_intrin.inc | 0
.../include/{clc => }/math/unary_intrin.inc | 0
generic/lib/SOURCES | 6 +++++
generic/lib/math/ceil.cl | 11 +++++++++
generic/lib/math/clc_sqrt.cl | 2 +-
generic/lib/math/fabs.cl | 11 +++++++++
generic/lib/math/floor.cl | 11 +++++++++
generic/lib/math/native_unary_intrinsic.inc | 2 +-
generic/lib/math/rint.cl | 10 ++++++++
generic/lib/math/round.cl | 10 ++++++++
generic/lib/math/sqrt.cl | 20 ++--------------
generic/lib/math/trunc.cl | 10 ++++++++
generic/lib/math/unary_builtin.inc | 24 +++++++++++++++++++
23 files changed, 136 insertions(+), 55 deletions(-)
delete mode 100644 generic/include/clc/math/mad.inc
rename generic/include/{clc => }/math/binary_intrin.inc (100%)
rename generic/include/{clc => }/math/ternary_intrin.inc (100%)
rename generic/include/{clc => }/math/unary_intrin.inc (100%)
create mode 100644 generic/lib/math/ceil.cl
create mode 100644 generic/lib/math/fabs.cl
create mode 100644 generic/lib/math/floor.cl
create mode 100644 generic/lib/math/rint.cl
create mode 100644 generic/lib/math/round.cl
create mode 100644 generic/lib/math/trunc.cl
create mode 100644 generic/lib/math/unary_builtin.inc

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

This will be reused by other functions.
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

This follows the same pattern as lgamma_r.
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>

Hi Tom,

sorry about the noise, got the patch directories mixed up.
I'll send the second series separately.

Jan

This series cleans up the headers of few unary functions.
It removes the intrinsic declarations and provides proper function
definitions.

I've looked through this series, and it looks fine to me.

I ran the modified functions through a wimpy CTS math_brute_force and
they came back clean on my RX580. Given the nature of the changes, I
don't see a reason for a full run.

--Aaron