This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [COMMITTED] Add convenience target to automatically update ULPs for your machine.


On 04/06/2013 03:57 PM, Carlos O'Donell wrote:
> On 04/06/2013 03:52 PM, Andreas Jaeger wrote:
>> On 04/06/2013 06:56 PM, Carlos O'Donell wrote:
>>> On 04/05/2013 11:14 AM, Carlos O'Donell wrote:
>>>> On 04/05/2013 05:38 AM, Andreas Schwab wrote:
>>>>> "Carlos O'Donell" <carlos@redhat.com> writes:
>>>>>
>>>>>> +         eval $(make-test-out) -u -o $(objpfx); \
>>>>>
>>>>> eval is evil.  Why do you need that?
>>>>
>>>> No. It's not required. Thanks for noticing.
>>>>
>>>> I have to rewrite this anyway, I didn't notice $(make-test-out)
>>>> relies upon $^ and that doesn't work here.
>>>>
>>>> I have to do something similar to what Siddhesh did for `make bench'.
>>>
>>> Given that Jaegar and Schwab reviewed this I'm going to commit this
>>> to make our lives easier :-)
>>>
>>> v2
>>> - Remove use of evil `eval'.
>>> - Added custom variable to run math tests.
>>> - Rename `regenulps' to `regen-ulps'.
>>> - Updated wiki to mention new instructions.
>>
>> As a followup, could you update math/README.libm-test as well?
> 
> Certainly, I hadn't pushed this yet because I accidentally
> added a trailing new line :/ ... I'll just ammend the commit
> and push.
> 
> Cheers,
> Carlos.
> 

Andreas,

Now pushed as commit 26510bdda1ab999041292737d1fad6aa25f9e06d.

The changes to README.libm-test are as follows, and describe how
to update automatically or manually. It also corrects the manual
step to tell you to use the newly built ld.so and libraries,
under the assumption you didn't install the new libs (which is
probably the case for most of us... unless you want to brick
your system frequently).

If you have any comments we can fix it up in follow-on patches.

diff --git a/math/README.libm-test b/math/README.libm-test
index 7a46155..2929499 100644 (file)
--- a/math/README.libm-test
+++ b/math/README.libm-test
@@ -39,24 +39,33 @@ platform specific sysdep directory.
 How can I generate "libm-test-ulps"?
 ====================================
 
-The test drivers have an option "-u" to output an unsorted list of all
-epsilons that the functions have.  The output can be read in directly
-but it's better to pretty print it first.  "gen-libm-test.pl"  has an option
-to generate a pretty-printed and sorted new ULPs file from the output
-of the test drivers.
-
-To generate a new "libm-test-ulps" file, first remove "ULPs" file in the
-current directory, then you can execute for example:
-test-double -u --ignore-max-ulp=yes
+To automatically generate a new "libm-test-ulps" run "make regen-ulps".
+This generates the file "math/NewUlps" in the build directory.  The file
+contains the sorted results of all the tests.  You can use the "NewUlps"
+file as the machine's updated "libm-test-ulps" file.  Copy "NewUlps" to
+"libm-test-ulps" in the appropriate machine sysdep directory.  Verify
+the changes, post your patch, and check it in after review.
+
+To manually generate a new "libm-test-ulps" file, first remove "ULPs"
+file in the current directory, then you can execute for example:
+  /build/elf/ld.so --library--path /build/:/build/elf:/build/math \
+    test-double -u --ignore-max-ulp=yes
 This generates a file "ULPs" with all double ULPs in it, ignoring any
-previous calculated ULPs.
-Now generate the ULPs for all other formats, the tests will be appending
-the data to the "ULPs" file.  As final step run "gen-libm-test.pl" with the
-file as input and ask to generate a pretty printed output in the file "NewUlps":
+previously calculated ULPs, and running with the newly built dynamic
+loader and math library (assumes you didn't install your build).  Now
+generate the ULPs for all other formats, the tests will be appending the
+data to the "ULPs" file.  As final step run "gen-libm-test.pl" with the
+file as input and ask to generate a pretty printed output in the file
+"NewUlps":
   gen-libm-test.pl -u ULPs -n
-
-Now you can rename "NewUlps" to "libm-test-ulps" and move it into
-sysdeps.
+Copy "NewUlps" to "libm-test-ulps" in the appropriate machine sysdep
+directory.
+
+Note that the test drivers have an option "-u" to output an unsorted
+list of all epsilons that the functions have.  The output can be read
+in directly but it's better to pretty print it first.
+"gen-libm-test.pl" has an option to generate a pretty-printed and
+sorted new ULPs file from the output of the test drivers.
 
 Contents of libm-test-ulps
 ==========================
---

Cheers,
Carlos.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]