Skip to content

Deduplicated float tests and unified in floats/mod.rs#148206

Merged
rust-bors[bot] merged 2 commits intorust-lang:mainfrom
xonx4l:deduplicate-float-tests
Feb 16, 2026
Merged

Deduplicated float tests and unified in floats/mod.rs#148206
rust-bors[bot] merged 2 commits intorust-lang:mainfrom
xonx4l:deduplicate-float-tests

Conversation

@xonx4l
Copy link
Contributor

@xonx4l xonx4l commented Oct 28, 2025

In this PR Float tests are deduplicated and are unified in floats/mod.rs, as discussed in #141726.

The moved float tests are:

-> test_powf
-> test_exp
-> test_exp2
-> test_ln
-> test_log_generic
-> test_log2
-> test_log10
-> test_asinh
-> test_acosh
-> test_atanh
-> test_gamma
-> test_ln_gamma

Closes: #141726

r? tgross35

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Oct 28, 2025
@rustbot
Copy link
Collaborator

rustbot commented Oct 28, 2025

tgross35 is currently at their maximum review capacity.
They may take a while to respond.

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@xonx4l xonx4l requested a review from bjorn3 November 4, 2025 00:43
@xonx4l
Copy link
Contributor Author

xonx4l commented Nov 11, 2025

Any update @bjorn3 ?

@bjorn3
Copy link
Member

bjorn3 commented Nov 11, 2025

CI is still failing.

@xonx4l
Copy link
Contributor Author

xonx4l commented Nov 11, 2025

CI is still failing.

ok let me fix .

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rustbot
Copy link
Collaborator

rustbot commented Nov 14, 2025

Some changes occurred in compiler/rustc_codegen_cranelift

cc @bjorn3

@xonx4l xonx4l force-pushed the deduplicate-float-tests branch from b802b19 to abd73fd Compare November 14, 2025 08:43
@rustbot

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

let inf: Float = Float::INFINITY;
let neg_inf: Float = Float::NEG_INFINITY;
assert_biteq!((10.0 as Float).log(10.0), 1.0);
assert_approx_eq!((2.3 as Float).log(3.5), 0.664858, Float::LOG_APPROX);
Copy link
Contributor

@LorrensP-2158466 LorrensP-2158466 Nov 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This test here for f128 will fail because the precision is much higher, if you look at the original test, the expected value is much more precise than what you have written:

assert_approx_eq!(2.3f128.log(3.5), 0.66485771361478710036766645911922010272, TOL);

When testing higher precision floats, you need much more precise expected values or the tests will fail, as they do now. In Miri, this is even more strict.

If you look at the source of f16 constants, they use much more digits after the decimal point than needed:

pub const PI: f16 = 3.14159265358979323846264338327950288_f16;

So you should probably do that as well.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay it makes sense . Thanks

@tgross35
Copy link
Contributor

Thank you for the final cleanup here. Until CI is fixed,
@rustbot author

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Nov 19, 2025
@rustbot
Copy link
Collaborator

rustbot commented Nov 19, 2025

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@xonx4l
Copy link
Contributor Author

xonx4l commented Nov 19, 2025

Thank you for the final cleanup here. Until CI is fixed, @rustbot author

Will finish this as soon as possible . A bit busy these days.

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rustbot

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@xonx4l xonx4l force-pushed the deduplicate-float-tests branch from 0f27f23 to 507fb72 Compare December 23, 2025 17:59
@rust-log-analyzer

This comment has been minimized.

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 13, 2026

💔 Test for 014baa1 failed: CI. Failed job:

@rust-bors

This comment has been minimized.

@xonx4l xonx4l force-pushed the deduplicate-float-tests branch from 0b4eb72 to c9850ea Compare February 15, 2026 12:51
@rustbot
Copy link
Collaborator

rustbot commented Feb 15, 2026

This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed.

Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers.

@rust-log-analyzer

This comment has been minimized.

@xonx4l xonx4l force-pushed the deduplicate-float-tests branch from c9850ea to a82ad7f Compare February 15, 2026 13:26
@rust-log-analyzer

This comment has been minimized.

@xonx4l xonx4l force-pushed the deduplicate-float-tests branch from a82ad7f to b864796 Compare February 15, 2026 14:09
@rust-log-analyzer

This comment has been minimized.

xonx4l and others added 2 commits February 15, 2026 18:00
New float tests in core are failing on clif with issues like the
following:

    Undefined symbols for architecture arm64:
        "_coshf128", referenced from:
            __RNvMNtCshY0fR2o0hOA_3std4f128C4f1284coshCs5TKtJxXQNGL_9coretests in coretests-e38519c0cc90db54.coretests.44b6247a565e10d1-cgu.10.rcgu.o
                "_exp2f128", referenced from:
            __RNvMNtCshY0fR2o0hOA_3std4f128C4f1284exp2Cs5TKtJxXQNGL_9coretests in coretests-e38519c0cc90db54.coretests.44b6247a565e10d1-cgu.10.rcgu.o
        ...

Disable f128 math unless the symbols are known to be available, which
for now is only glibc targets. This matches the LLVM backend.
@xonx4l xonx4l force-pushed the deduplicate-float-tests branch from b864796 to 8379475 Compare February 15, 2026 18:01
@xonx4l
Copy link
Contributor Author

xonx4l commented Feb 16, 2026

@tgross35 If everything looks good you can rerun bors . I hope it passes this time .

@tgross35
Copy link
Contributor

@bors try jobs=aarch64-apple,x86_64-mingw-1

@rust-bors

This comment has been minimized.

rust-bors bot pushed a commit that referenced this pull request Feb 16, 2026
Deduplicated float tests and unified in floats/mod.rs


try-job: aarch64-apple
try-job: x86_64-mingw-1
@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 16, 2026

☀️ Try build successful (CI)
Build commit: b9d8d0c (b9d8d0ce4b09c9ce57f304ee5fe47a428ccd875e, parent: 139651428df86cf88443295542c12ea617cbb587)

Copy link
Contributor

@tgross35 tgross35 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's try again! Thanks for the updates.
@bors r+ rollup=iffy

View changes since this review

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 16, 2026

📌 Commit 8379475 has been approved by tgross35

It is now in the queue for this repository.

@rust-bors rust-bors bot added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Feb 16, 2026
rust-bors bot pushed a commit that referenced this pull request Feb 16, 2026
Rollup of 6 pull requests

Successful merges:

 - #148206 (Deduplicated float tests and unified in floats/mod.rs)
 - #150601 (support c-variadic functions in `rustc_const_eval`)
 - #152103 (Consider captures to be used by closures that unwind)
 - #152296 (Port `rust_nonnull_optimization_guaranteed` and `rustc_do_not_const_check` to the new attribute parser)
 - #152648 (Remove timing assertion from `oneshot::send_before_recv_timeout`)
 - #152686 (bootstrap: Inline the `is_tool` check for setting `-Zforce-unstable-if-unmarked`)

Failed merges:

 - #152512 (core: Implement feature `float_exact_integer_constants`)
@rust-bors rust-bors bot merged commit bff3e9e into rust-lang:main Feb 16, 2026
12 checks passed
@rustbot rustbot added this to the 1.95.0 milestone Feb 16, 2026
rust-timer added a commit that referenced this pull request Feb 16, 2026
Rollup merge of #148206 - xonx4l:deduplicate-float-tests, r=tgross35

Deduplicated float tests and unified in floats/mod.rs

In this PR Float tests are deduplicated and are unified in floats/mod.rs, as discussed in #141726.

The moved float tests are:

-> test_powf
-> test_exp
-> test_exp2
-> test_ln
-> test_log_generic
-> test_log2
-> test_log10
-> test_asinh
-> test_acosh
-> test_atanh
-> test_gamma
-> test_ln_gamma

Closes: #141726
@xonx4l
Copy link
Contributor Author

xonx4l commented Feb 16, 2026

I really wanted to thanks @tgross35 for holding on this for so long and showing me direction whenever needed and also @bjorn3 for his help. (P.s. I am sure that I am not forgetting how to patch and rebase ever in this lifetime thanks to this Pr)

@tgross35
Copy link
Contributor

We’re always happy to help, and we appreciate the effort :)

github-actions bot pushed a commit to rust-lang/miri that referenced this pull request Feb 17, 2026
Rollup of 6 pull requests

Successful merges:

 - rust-lang/rust#148206 (Deduplicated float tests and unified in floats/mod.rs)
 - rust-lang/rust#150601 (support c-variadic functions in `rustc_const_eval`)
 - rust-lang/rust#152103 (Consider captures to be used by closures that unwind)
 - rust-lang/rust#152296 (Port `rust_nonnull_optimization_guaranteed` and `rustc_do_not_const_check` to the new attribute parser)
 - rust-lang/rust#152648 (Remove timing assertion from `oneshot::send_before_recv_timeout`)
 - rust-lang/rust#152686 (bootstrap: Inline the `is_tool` check for setting `-Zforce-unstable-if-unmarked`)

Failed merges:

 - rust-lang/rust#152512 (core: Implement feature `float_exact_integer_constants`)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Unify and deduplicate float tests

8 participants