manual: Avoid name collision in libm ULP table [BZ #28956]
commitd2265570a7694b5b01d5a0a2d56d3482ac1a5d97
authorTom Coldrick <thomas.coldrick@codethink.co.uk>
Tue, 5 Apr 2022 09:46:54 +0000 (5 10:46 +0100)
committerCarlos O'Donell <carlos@redhat.com>
Mon, 11 Apr 2022 15:46:10 +0000 (11 11:46 -0400)
tree2a2fd0d59e76ecb620e916e4909751215ee8ed6d
parent1a85970f41ea1e5abe6da2298a5e8fedcea26b70
manual: Avoid name collision in libm ULP table [BZ #28956]

The 32-bit and 64-bit variants of RISC-V share the same name - "RISC-V"
- when generating the libm error table for the info pages. This
collision, and the way how the table is generated, mean that the values
in the final table for "RISC-V" may be either for the 32- or 64-bit
variant, with no indication as to which.

As an additional side-effect, this makes the build non-reproducible, as
the error table generated is dependent upon the host filesystem
implementation.

To solve this issue, the libm-test-ulps-name files for both variants
have been modified to include their word size, so as to remove the
collision and provide more accurate information in the table.

An alternative proposed was to merge the two variants' ULP values into a
single file, but this would mean that information about error values is
lost, as the two variants are not identical. Some differences are
considerable, notably the values for the exp() function are large.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
sysdeps/riscv/rv32/rvd/libm-test-ulps-name
sysdeps/riscv/rv64/rvd/libm-test-ulps-name