Page MenuHomePhabricator
Feed Advanced Search

Feb 14 2019

shibatch added a comment to D53927: [AArch64] Enable libm vectorized functions via SLEEF.

tgamma stands for "true gamma", and it is the function name specified in the ANSI C standard.

Feb 14 2019, 3:17 AM · Restricted Project

Dec 11 2018

shibatch added a comment to D53927: [AArch64] Enable libm vectorized functions via SLEEF.

Where, when, how and by whom are these #pragmas inserted? Are they silently inserted by clang? Do they have to be manually inserted in existing code?
What is the effect of these #pragmas? The ARM closed-source commercial compiler requires OpenMP. How will these #pragmas be implemented in the open-source clang? Will they import OpenMP interfaces in the open-source clang as well?
If importing OpenMP interfaces is not triggered by the insertion of these #pragmas, why is the argument to -fveclib called 'openmp'? I would find it baffling to have to type -fveclib=openmp on compile-line, but ending up not using OpenMP.

Dec 11 2018, 8:55 PM · Restricted Project
shibatch added a comment to D53927: [AArch64] Enable libm vectorized functions via SLEEF.

The RFC for reimplementing -fveclib with OpenMP is titled "OpenMP" because the corresponding code for ARM HPC compiler requires OpenMP.
However, the proposal in RFC does not require OpenMP, as quoted below.

Dec 11 2018, 8:33 PM · Restricted Project
shibatch added a comment to D53927: [AArch64] Enable libm vectorized functions via SLEEF.

A header file that wasn't there before is now automagically included, and there's nothing they can do to not include it. Boom! - source code change. Happy re-certification planning.

Dec 11 2018, 7:51 PM · Restricted Project
shibatch added a comment to D53927: [AArch64] Enable libm vectorized functions via SLEEF.

That's because no commercial distro - if they ever decide to include SLEEF - will compile SLEEF for the maximum CPU feature-set possible. They do the exact opposite - they compile it for the lowest possible common denominator.

For example, on AArch64, you won't get distro libraries compiled specifically for -mcpu=thunderx2t99. Or on x86_64 you'll never get -mavx512ifma, for example.

Dec 11 2018, 9:42 AM · Restricted Project
shibatch added a comment to D53927: [AArch64] Enable libm vectorized functions via SLEEF.

I am taking it on faith that SLEEF won't keep changing their mangling and ABI.

Dec 11 2018, 7:52 AM · Restricted Project
shibatch added a comment to D53927: [AArch64] Enable libm vectorized functions via SLEEF.

Hello Renato,

Dec 11 2018, 5:01 AM · Restricted Project

Nov 9 2018

shibatch added a comment to D53927: [AArch64] Enable libm vectorized functions via SLEEF.

@shibatch, do you know for sure that we shouldn't use the 3.5 ULP version of the function?

Nov 9 2018, 9:14 PM · Restricted Project

Nov 5 2018

shibatch added a comment to D53927: [AArch64] Enable libm vectorized functions via SLEEF.

I am sorry for not reading the comments carefully, but I think 3.5-ULP functions should be used only when a fast-math option is specified.

Nov 5 2018, 9:04 PM · Restricted Project

Nov 1 2018

shibatch added a comment to D53927: [AArch64] Enable libm vectorized functions via SLEEF.

Is it easy to add pow and atan2?
Since these functions are relatively frequently used, I think people would appreciate if you could also add these two functions.

Nov 1 2018, 9:20 PM · Restricted Project