Skip to content

Remove dependency on sys_membarrier on linux #277

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

Merged
merged 1 commit into from
Jul 14, 2017
Merged

Conversation

MadCoder
Copy link
Contributor

By not inlining the fastpath of dispatch_once() when the hardware cannot
give us the right semantics.

@MadCoder
Copy link
Contributor Author

This is the right way of doing #228

@MadCoder MadCoder force-pushed the mad/remove-sys-membarrier branch 2 times, most recently from f9424ee to 12fc950 Compare July 14, 2017 01:36
@MadCoder
Copy link
Contributor Author

@swift-ci please test

src/once.c Outdated

DISPATCH_ONCE_SLOW_INLINING
static void
dispatch_once_f_slow(dispatch_once_t *val, void *ctxt, dispatch_function_t func)
Copy link
Contributor

Choose a reason for hiding this comment

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

_dispatch_once_f_slow

src/once.c Outdated
void
dispatch_once_f(dispatch_once_t *val, void *ctxt, dispatch_function_t func)
#if DISPATCH_ONCE_INLINE_FASTPATH
#define DISPATCH_ONCE_SLOW_INLINING inline DISPATCH_ALWAYS_INLINE
Copy link
Contributor

Choose a reason for hiding this comment

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

INLINING seems weird, DISPATCH_ONCE_SLOW_INLINE ?

By not inlining the fastpath of dispatch_once() when the hardware cannot
give us the right semantics.
@MadCoder MadCoder force-pushed the mad/remove-sys-membarrier branch from 12fc950 to 93d2dd9 Compare July 14, 2017 19:01
@MadCoder
Copy link
Contributor Author

@das handled

@MadCoder MadCoder requested a review from dgrove-oss July 14, 2017 19:15
@MadCoder
Copy link
Contributor Author

Adding @dgrove-oss which I should have done from the get go

@das das merged commit 79b7529 into master Jul 14, 2017
das added a commit that referenced this pull request Jul 31, 2017
Remove dependency on sys_membarrier on linux

Signed-off-by: Daniel A. Steffen <[email protected]>
@das das removed the darwin pending label Aug 1, 2017
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.

2 participants