Skip to content

Tracking Issue for asm_const #93332

Closed
Closed

Description

@Amanieu

The feature gate for the issue is #![feature(asm_const)].

Summary

This feature adds a const <expr> operand type to asm! and global_asm!.

  • <expr> must be an integer constant expression.
  • The value of the expression is formatted as a string and substituted directly into the asm template string.

Status

Blocked on the stabilization of inline consts (#76001).

Activity

  1. added
    A-inline-assemblyArea: Inline assembly (`asm!(…)`)
    B-unstableBlocker: Implemented in the nightly compiler and unstable.
    C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFC
    F-asm`#![feature(asm)]` (not `llvm_asm`)
    on Jan 26, 2022
  2. bstrie commented on Jan 28, 2022

    @bstrie
    Contributor

    Is it possible that this may not actually be blocked on inline_const? AIUI, the concern was that stabilizing asm_const would expose the semantics of inline_const to stable, so any change to the semantics of the yet-unstable inline_const would potentially break stable users of asm_const. But AFAICT there are no more foreseen semantic changes coming to inline_const, and the only remaining question is a syntactic one, specifically with regard to how macros would consume const {} blocks, which seems irrelevant to asm! which is providing its own syntax over inline_const anyway. Of course, it's worth asking to determine whether or not it's correct that the semantics of inline_const have truly solidified.

  3. added a commit that references this issue on Nov 3, 2022
  4. tiagomanczak commented on May 10, 2023

    @tiagomanczak

    Any progress on this issue? We are working in a project were it is necessary, and the stabilization is important for future use in productive code. Any forms we can contribute to the stabilization of asm_const?

  5. nbdd0121 commented on May 10, 2023

    @nbdd0121
    Member

    asm_const is blocked on stabilisation of inline_const because it shares a lot of the same issue (e.g. post-mono errors)

  6. 21 remaining items

  7. added and removed
    final-comment-periodIn the final comment period and will be merged soon unless new substantive objections are raised.
    on May 25, 2024
  8. rfcbot commented on May 25, 2024

    @rfcbot

    The final comment period, with a disposition to merge, as per the review above, is now complete.

    As the automated representative of the governance process, I would like to thank the author for their work and everyone else who contributed.

    This will be merged soon.

  9. Lokathor commented on May 25, 2024

    @Lokathor
    Contributor

    @nbdd0121 is that a change that would need to happen now before stabilization, or would it be part of a later update allowing const str support?

  10. Amanieu commented on May 25, 2024

    @Amanieu
    MemberAuthor

    I have a draft PR up (#125558) but I'm hitting the same ICE as #96304 but with const operands.

  11. added a commit that references this issue on Aug 14, 2024
  12. added a commit that references this issue on Aug 14, 2024
  13. ehuss commented on Aug 14, 2024

    @ehuss
    Contributor

    @Amanieu Can this be closed now?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-inline-assemblyArea: Inline assembly (`asm!(…)`)B-unstableBlocker: Implemented in the nightly compiler and unstable.C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCF-asm`#![feature(asm)]` (not `llvm_asm`)T-langRelevant to the language teamdisposition-mergeThis issue / PR is in PFCP or FCP with a disposition to merge it.finished-final-comment-periodThe final comment period is finished for this PR / Issue.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions