<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/library/compiler-builtins/libm-test/src, branch master</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=master</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2025-07-27T21:27:40+00:00</updated>
<entry>
<title>Implement `floor` and `ceil` in assembly on `i586`</title>
<updated>2025-07-27T21:27:40+00:00</updated>
<author>
<name>Folkert de Vries</name>
<email>folkert@folkertdev.nl</email>
</author>
<published>2025-07-27T21:27:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9c683d3487d8966dad182bc7ad2524bf0bb6d797'/>
<id>urn:sha1:9c683d3487d8966dad182bc7ad2524bf0bb6d797</id>
<content type='text'>
Fixes: https://github.com/rust-lang/compiler-builtins/issues/837

The assembly is based on

- https://github.com/NetBSD/src/blob/20433927938987dd64c8f6aa46904b7aca3fa39e/lib/libm/arch/i387/s_floor.S
- https://github.com/NetBSD/src/blob/20433927938987dd64c8f6aa46904b7aca3fa39e/lib/libm/arch/i387/s_ceil.S

Which both state

    /*
     * Written by J.T. Conklin &lt;jtc@NetBSD.org&gt;.
     * Public domain.
     */

Which I believe means we're good in terms of licensing.</content>
</entry>
<entry>
<title>libm-test: Fix unintentional skips in `binop_common`</title>
<updated>2025-06-02T22:47:15+00:00</updated>
<author>
<name>Trevor Gross</name>
<email>tmgross@umich.edu</email>
</author>
<published>2025-06-02T20:20:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=57786431746f495f4205e26ee1badd142a380fff'/>
<id>urn:sha1:57786431746f495f4205e26ee1badd142a380fff</id>
<content type='text'>
`binop_common` emits a `SKIP` that is intended to apply only to
`copysign`, but is instead applying to all binary operators. Correct the
general case but leave the currently-failing `maximum_num` tests as a
FIXME, to be resolved separately in [1].

Also simplify skip logic and NaN checking, and add a few more `copysign`
checks.

[1]: https://github.com/rust-lang/compiler-builtins/pull/939
</content>
</entry>
<entry>
<title>cleanup: Use `x.biteq(y)` rather than `x.to_bits() == y.to_bits()`</title>
<updated>2025-06-02T16:10:49+00:00</updated>
<author>
<name>Trevor Gross</name>
<email>tmgross@umich.edu</email>
</author>
<published>2025-06-02T16:10:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e83ca863412a950f19fbc4e8fc632f19107dd0a2'/>
<id>urn:sha1:e83ca863412a950f19fbc4e8fc632f19107dd0a2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>libm-test: Make `extensive` an attribute rather than a test type</title>
<updated>2025-05-29T21:06:44+00:00</updated>
<author>
<name>Trevor Gross</name>
<email>tmgross@umich.edu</email>
</author>
<published>2025-05-29T20:53:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=8edaa6e5c88e14df20b095016514d381c697e49a'/>
<id>urn:sha1:8edaa6e5c88e14df20b095016514d381c697e49a</id>
<content type='text'>
Currently we run logspace tests for extensive tests, but there isn't any
reason we couldn't also run more kinds of tests more extensively (e.g.
more edge cases, combine edge cases with logspace for multi-input
functions, etc). As a first step toward making this possible, make
`extensive` a new field in `CheckCtx`, and rename `QuickSpaced` to
`Spaced`.
</content>
</entry>
<entry>
<title>fmaf: Add a test case from a MinGW failure</title>
<updated>2025-05-02T01:24:34+00:00</updated>
<author>
<name>Trevor Gross</name>
<email>tmgross@umich.edu</email>
</author>
<published>2025-05-02T00:46:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1c5f8cc72df4b82f2265737c9e86a4e4365cae8c'/>
<id>urn:sha1:1c5f8cc72df4b82f2265737c9e86a4e4365cae8c</id>
<content type='text'>
This is a known problem in the MinGW fmaf implementation, identified at
[1].  Make sure our implementation passes this edge case.

[1]: https://github.com/rust-lang/rust/issues/140515
</content>
</entry>
<entry>
<title>libm-macros: Start tracking which functions are public</title>
<updated>2025-04-23T07:48:02+00:00</updated>
<author>
<name>Trevor Gross</name>
<email>tmgross@umich.edu</email>
</author>
<published>2025-04-23T06:46:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1dd39e27f06d0028bc62452283cf00a2d932d981'/>
<id>urn:sha1:1dd39e27f06d0028bc62452283cf00a2d932d981</id>
<content type='text'>
It would be nice to reuse some of the macro structure for internal
functions, like `rem_pio2`. To facilitate this, add a `public` field and
make it available in the macro's API.
</content>
</entry>
<entry>
<title>Fix the libm-test logfile path</title>
<updated>2025-04-20T04:58:50+00:00</updated>
<author>
<name>Trevor Gross</name>
<email>tmgross@umich.edu</email>
</author>
<published>2025-04-20T04:48:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d02b25fd6e6c8da41f0248333df93a03dc53fec1'/>
<id>urn:sha1:d02b25fd6e6c8da41f0248333df93a03dc53fec1</id>
<content type='text'>
This was broken since the crate's location relative to the target
directory had changed.
</content>
</entry>
<entry>
<title>Run `cargo fmt` on all projects</title>
<updated>2025-04-19T23:05:49+00:00</updated>
<author>
<name>Trevor Gross</name>
<email>tmgross@umich.edu</email>
</author>
<published>2025-04-19T22:39:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=8d70be87e6e8f88fdad0f469b894a3ec9a87d3ce'/>
<id>urn:sha1:8d70be87e6e8f88fdad0f469b894a3ec9a87d3ce</id>
<content type='text'>
Apply the same formatting rules to both `libm` and `compiler-builtins`.
</content>
</entry>
<entry>
<title>libm: Fix crate compilation</title>
<updated>2025-04-19T22:23:45+00:00</updated>
<author>
<name>Trevor Gross</name>
<email>tmgross@umich.edu</email>
</author>
<published>2025-04-19T22:15:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=cab8700e84dd49d30cf7a4331a7269c36edf6ae9'/>
<id>urn:sha1:cab8700e84dd49d30cf7a4331a7269c36edf6ae9</id>
<content type='text'>
Update paths and submodules to fix `libm-test` and `util` building so we
will be able to add them to the workspace.
</content>
</entry>
<entry>
<title>libm: Reorganize into compiler-builtins</title>
<updated>2025-04-19T21:20:24+00:00</updated>
<author>
<name>Trevor Gross</name>
<email>tmgross@umich.edu</email>
</author>
<published>2025-04-19T20:58:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=911a70381a9e7c84400b156e3cbcd805f3e64034'/>
<id>urn:sha1:911a70381a9e7c84400b156e3cbcd805f3e64034</id>
<content type='text'>
Distribute everything from `libm/` to better locations in the repo.
`libm/libm/*` has not moved yet to avoid Git seeing the move as an edit
to `Cargo.toml`.

Files that remain to be merged somehow are in `etc/libm`.
</content>
</entry>
</feed>
