Skip to content

Tracking Issue for likely_unlikely and cold_path #136873

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Open
1 of 3 tasks
tgross35 opened this issue Feb 11, 2025 · 2 comments
Open
1 of 3 tasks

Tracking Issue for likely_unlikely and cold_path #136873

tgross35 opened this issue Feb 11, 2025 · 2 comments
Labels
C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC T-libs-api Relevant to the library API team, which will review and decide on the PR/issue.

Comments

@tgross35
Copy link
Contributor

tgross35 commented Feb 11, 2025

Feature gate: #![feature(likely_unlikely)], #![feature(cold_path)]

This is a tracking issue for core::hint::{likely, unlikely, cold_path}.

Please also see the meta discussion at #26179.

Public API

// core::hint

// Usable via `#![feature(cold_path)]`
pub const fn cold_path();

// Usable via `#![feature(likely_unlikely)]`
pub const fn likely(b: bool) -> bool;
pub const fn unlikely(b: bool) -> bool;

Steps / History

Unresolved Questions

  • Do we want all of these functions, or only a subset?

Footnotes

  1. https://std-dev-guide.rust-lang.org/feature-lifecycle/stabilization.html

@tgross35 tgross35 added C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC T-libs-api Relevant to the library API team, which will review and decide on the PR/issue. labels Feb 11, 2025
tgross35 added a commit to tgross35/rust that referenced this issue Feb 11, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this issue Feb 11, 2025
… r=jhpratt

Change the issue number for `likely_unlikely` and `cold_path`

These currently point to rust-lang#26179, which is nearly a decade old and has a lot of outdated discussion. Move these features to a new tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this issue Feb 12, 2025
… r=jhpratt

Change the issue number for `likely_unlikely` and `cold_path`

These currently point to rust-lang#26179, which is nearly a decade old and has a lot of outdated discussion. Move these features to a new tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
rust-timer added a commit to rust-lang-ci/rust that referenced this issue Feb 12, 2025
Rollup merge of rust-lang#136874 - tgross35:likely-unlikely-tracking, r=jhpratt

Change the issue number for `likely_unlikely` and `cold_path`

These currently point to rust-lang#26179, which is nearly a decade old and has a lot of outdated discussion. Move these features to a new tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
@safinaskar
Copy link
Contributor

I think stabilizing cold_path is blocked on #133852

github-actions bot pushed a commit to model-checking/verify-rust-std that referenced this issue Feb 22, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to carolynzech/rust that referenced this issue Feb 22, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to tautschnig/verify-rust-std that referenced this issue Feb 22, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to thanhnguyen-aws/verify-rust-std that referenced this issue Feb 22, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to thanhnguyen-aws/verify-rust-std that referenced this issue Mar 3, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to thanhnguyen-aws/verify-rust-std that referenced this issue Mar 4, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to tautschnig/verify-rust-std that referenced this issue Mar 6, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to thanhnguyen-aws/verify-rust-std that referenced this issue Mar 6, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to tautschnig/verify-rust-std that referenced this issue Mar 11, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to tautschnig/verify-rust-std that referenced this issue Mar 11, 2025
… r=jhpratt

Change the issue number for `likely_unlikely` and `cold_path`

These currently point to rust-lang#26179, which is nearly a decade old and has a lot of outdated discussion. Move these features to a new tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to tautschnig/verify-rust-std that referenced this issue Mar 11, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to tautschnig/verify-rust-std that referenced this issue Mar 11, 2025
… r=jhpratt

Change the issue number for `likely_unlikely` and `cold_path`

These currently point to rust-lang#26179, which is nearly a decade old and has a lot of outdated discussion. Move these features to a new tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
github-actions bot pushed a commit to model-checking/verify-rust-std that referenced this issue Mar 11, 2025
These currently point to rust-lang#26179, which is nearly a decade
old and has a lot of outdated discussion. Move these features to a new
tracking issue specifically for the recently added API.

New tracking issue: rust-lang#136873
@tgross35
Copy link
Contributor Author

Twocents from use: I've been using cold_path more than likely/unlikely because it reads nicer and is more flexible (match arms, closures).

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC T-libs-api Relevant to the library API team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

2 participants