Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

v3.0.x: atomic 128 fixes #5617

Merged
merged 2 commits into from
Sep 11, 2018

Conversation

jsquyres
Copy link
Member

Bring over the 128 bit atomic fixes and one additional minor m4 cleanup commit (the tabs->spaces commit from #5546 did not apply cleanly, and isn't worth it to apply over here).

Thanks to Stefan Teleman for identifying this issue and providing a
proof-of-concept patch.  We ended up revamping the detection of
128-bit atomics to reduce duplicated code and be a slightly simpler --
albiet perhaps a bit more verbose -- approach:

- Remove the --enable-cross-* options; they were confusing and
  unnecessary.
- Always try to compile / link the compiler-intrinsic 128-bit atomic
  functions.
  - Strengthen the C tests we use to be more robust.
  - Use m4 to avoid duplicating the C tests multiple times in the .m4
    source.
- If not cross-compiling, try to run a short test and ensure that they
  actually work (as of Aug 2018, there's at least one platform where
  they don't: clang 6 on ARM64).  If cross-compiling, just assume that
  they work.
- Add more comments about what is going on with all the tests; it's
  tricky stuff.  Our Future Selves will thank us.

Signed-off-by: George Bosilca <bosilca@icl.utk.edu>
Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
(cherry picked from commit ff9df91)
Thanks to George for finding/fixing these.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
(cherry picked from commit 9194dbb)
@jsquyres jsquyres added this to the v3.0.3 milestone Aug 28, 2018
@jsquyres jsquyres requested review from bosilca and hjelmn August 28, 2018 19:05
@bwbarrett bwbarrett merged commit 932ba4b into open-mpi:v3.0.x Sep 11, 2018
@jsquyres jsquyres deleted the pr/v3.0.x/atomic-128-fixes branch December 7, 2021 22:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants