Skip to content

Conversation

Patrick-6
Copy link
Contributor

@Patrick-6 Patrick-6 commented Sep 4, 2025

This PR is a followup to #4506

New features for GenMC mode include:

  • Support for read-modify-write operations (no compare-exchange yet).
  • Support for fences.
  • New option to print GenMC output message on errors.
  • New option to print GenMC execution graphs after every execution.
  • New option to set memory model to "Sequential Consistency" (SC).
  • Throw an error when attempting to use a futex, since they are unsupported.
  • Throw an error on acquire_clock and release_clock in GenMC mode.

There is also some cleanup for changes from the last PR, including the switch to std::process::abort in tests.

@rustbot rustbot added the S-waiting-on-author Status: Waiting for the PR author to address review comments label Sep 4, 2025
@Patrick-6
Copy link
Contributor Author

r? @RalfJung

Next part of merging GenMC mode, but a bit less code this time ^^

Copy link
Member

@RalfJung RalfJung left a comment

Choose a reason for hiding this comment

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

First round of feedback

View changes since this review

Copy link
Member

@RalfJung RalfJung left a comment

Choose a reason for hiding this comment

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

And now I also went over the tests

View changes since this review

@rustbot

This comment has been minimized.

@Patrick-6 Patrick-6 marked this pull request as ready for review September 7, 2025 10:35
@rustbot rustbot added S-waiting-on-review Status: Waiting for a review to complete and removed S-waiting-on-author Status: Waiting for the PR author to address review comments labels Sep 7, 2025
@RalfJung
Copy link
Member

RalfJung commented Sep 7, 2025

LGTM, please squash. :)
@rustbot author

@rustbot rustbot removed the S-waiting-on-review Status: Waiting for a review to complete label Sep 7, 2025
@rustbot
Copy link
Collaborator

rustbot commented Sep 7, 2025

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

@rustbot rustbot added the S-waiting-on-author Status: Waiting for the PR author to address review comments label Sep 7, 2025
- Support for atomic fences.
- Support for atomic read-modify-write (RMW).
- Add tests using RMW and fences.
- Add options:
  - to disable weak memory effects in GenMC mode.
  - to print GenMC execution graphs.
  - to print GenMC output message.
- Fix GenMC full rebuild issue and run configure step when commit changes.
- Do cleanup.

Co-authored-by: Ralf Jung <[email protected]>
@Patrick-6
Copy link
Contributor Author

@rustbot ready

@rustbot rustbot added S-waiting-on-review Status: Waiting for a review to complete and removed S-waiting-on-author Status: Waiting for the PR author to address review comments labels Sep 7, 2025
@RalfJung RalfJung enabled auto-merge September 8, 2025 05:56
@RalfJung
Copy link
Member

RalfJung commented Sep 8, 2025

Thanks! I have added a patch for the release/acquire clock error messages.

@RalfJung RalfJung added this pull request to the merge queue Sep 8, 2025
Merged via the queue into rust-lang:master with commit 0d56e22 Sep 8, 2025
15 checks passed
@rustbot rustbot removed the S-waiting-on-review Status: Waiting for a review to complete label Sep 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants