Skip to content

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


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 <dsteffen@apple.com>
@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.

3 participants