manual/libm-err-tab.pl contains a hardcoded list of libm functions for
which ulps are listed in the manual, and another hardcoded list in a
comment of functions deliberately excluded because of an expected lack
of ulps (and the two together are not in fact an exhaustive list of
libm functions tested through the libm-test machinery).
This patch removes these hardcoded lists, so eliminating this from the
places needing updating when a new libm function is added. Instead,
ulps are tabulated for functions for which they are seen in
libm-test-ulps files, in alphabetical order. The pseudo-function
names such as *_downward and *_vlen* are excluded since they are
excluded from the existing lists, and the description in the manual is
updated to explain how those entries are excluded and if a function is
not listed at all it does not have known errors.
Tested for x86_64.
* manual/libm-err-tab.pl (@all_functions): Change to
%all_functions. Initialize as empty.
(parse_ulps): Add to %all_functions based on functions found in
ulps files. Ignore results for non-default rounding modes and
vector functions.
(print_platforms): Use %all_platforms.
* manual/math.texi (Errors in Math Functions): Document omissions
from the table.