diff options
Diffstat (limited to 'doc/testfloat.html')
-rw-r--r-- | doc/testfloat.html | 48 |
1 files changed, 26 insertions, 22 deletions
diff --git a/doc/testfloat.html b/doc/testfloat.html index 8d8177f..25f0d95 100644 --- a/doc/testfloat.html +++ b/doc/testfloat.html @@ -7,11 +7,11 @@ <BODY> -<H1>Berkeley TestFloat Release 3b: <CODE>testfloat</CODE></H1> +<H1>Berkeley TestFloat Release 3c: <CODE>testfloat</CODE></H1> <P> John R. Hauser<BR> -2016 July 22<BR> +2017 February 10<BR> </P> @@ -58,8 +58,9 @@ or may not be the same as the computer’s floating-point hardware, if any. <P> The <CODE>testfloat</CODE> program will ordinarily test an operation for all -rounding modes defined by the IEEE Floating-Point Standard, one after the -other. +five rounding modes defined by the IEEE Floating-Point Standard, one after the +other, plus possibly a sixth mode, <I>round to odd</I> (depending on the +options selected when <CODE>testfloat</CODE> was compiled). If the rounding mode is not supposed to have any affect on the results—for instance, some operations do not require rounding—only the nearest/even rounding mode is checked. @@ -83,13 +84,13 @@ output, refer to The <CODE>testfloat</CODE> program is executed as a command with this syntax: <BLOCKQUOTE> <PRE> -testfloat [<option>...] <function> +testfloat [<<I>option</I>>...] <<I>function</I>> </PRE> </BLOCKQUOTE> Square brackets (<CODE>[ ]</CODE>) denote optional arguments, -<CODE><option></CODE> is a supported option, and -<CODE><function></CODE> is the name of either a testable operation or a -function set. +<CODE><<I>option</I>></CODE> is a supported option, and +<CODE><<I>function</I>></CODE> is the name of either a testable operation +or a function set. The available options and function sets are documented below. The <CODE>-list</CODE> option can be used to obtain a list of all testable operations for a given build of <CODE>testfloat</CODE>. @@ -117,11 +118,11 @@ after which the program exits. <P> The <CODE>-list</CODE> option causes a list of testable operations to be written, after which the program exits. -The set of testable operations is just the set of operations that this build of -<CODE>testfloat</CODE> has some way to invoke for testing. +An operation is testable by <CODE>testfloat</CODE> if the program knows some +way to invoke the operation. </P> -<H3><CODE>-seed <num></CODE></H3> +<H3><CODE>-seed <<I>num</I>></CODE></H3> <P> The <CODE>-seed</CODE> option sets the seed for the pseudo-random number @@ -134,7 +135,7 @@ should result in a different sequence of tests. The default seed number <NOBR>is 1</NOBR>. </P> -<H3><CODE>-level <num></CODE></H3> +<H3><CODE>-level <<I>num</I>></CODE></H3> <P> The <CODE>-level</CODE> option sets the level of testing. @@ -144,7 +145,7 @@ Level 2 performs many more tests than <NOBR>level 1</NOBR> and thus can reveal bugs not found by <NOBR>level 1</NOBR>. </P> -<H3><CODE>-errors <num></CODE></H3> +<H3><CODE>-errors <<I>num</I>></CODE></H3> <P> The <CODE>-errors</CODE> option instructs <CODE>testfloat</CODE> to report no @@ -209,11 +210,11 @@ control. </P> <P> -The precision-control options may not be accepted at all if no +The precision-control options may not be supported at all if no double-extended-precision operations are testable. </P> -<H3><CODE>-rnear_even, -rnear_maxMag, -rminMag, -rmin, -rmax</CODE></H3> +<H3><CODE>-rnear_even, -rnear_maxMag, -rminMag, -rmin, -rmax, -rodd</CODE></H3> <P> The <CODE>-rnear_even</CODE> option restricts testing to only the cases in @@ -222,9 +223,12 @@ The other rounding mode choices are not tested. Likewise, <CODE>-rnear_maxMag</CODE> forces rounding to nearest/maximum magnitude (nearest-away), <CODE>-rminMag</CODE> forces rounding to minimum magnitude (toward zero), <CODE>-rmin</CODE> forces rounding to minimum (down, -toward negative infinity), and <CODE>-rmax</CODE> forces rounding to maximum -(up, toward positive infinity). -These options are ignored for operations that are exact and thus do not round. +toward negative infinity), <CODE>-rmax</CODE> forces rounding to maximum (up, +toward positive infinity), and <CODE>-rodd</CODE>, if supported, forces +rounding to odd. +These options are ignored for operations that are exact and thus do not round, +or that have the rounding mode included in the function name (such as +<CODE>f32_to_i32_r_near_maxMag</CODE>). </P> <H3><CODE>-tininessbefore, -tininessafter</CODE></H3> @@ -245,9 +249,9 @@ Choosing the wrong one of these two options should cause error reports for some <H2>Function Sets</H2> <P> -Just as <CODE>testfloat</CODE> can test an operation for all five rounding -modes in sequence, multiple operations can be tested with a single execution of -<CODE>testfloat</CODE>. +Just as <CODE>testfloat</CODE> can test an operation for all five or six +rounding modes in sequence, multiple operations can be tested with a single +execution of <CODE>testfloat</CODE>. Two sets are recognized: <CODE>-all1</CODE> and <CODE>-all2</CODE>. The set <CODE>-all1</CODE> is all one-operand operations, while <CODE>-all2</CODE> is all two-operand operations. @@ -255,7 +259,7 @@ A function set is used in place of an operation name in the <CODE>testfloat</CODE> command line, such as <BLOCKQUOTE> <PRE> -testfloat [<option>...] -all1 +testfloat [<<I>option</I>>...] -all1 </PRE> </BLOCKQUOTE> </P> |