From 34fe9232dbf6a9fe58ebc4c7680bb67d2f642c40 Mon Sep 17 00:00:00 2001 From: Giuseppe D'Angelo Date: Mon, 10 Jun 2019 11:08:29 +0200 Subject: Port from QAtomic::load() to loadRelaxed() Semi-automated, just needed ~20 manual fixes: $ find \( -iname \*.cpp -or -iname \*.h \) -exec perl -pe 's/(\.|->)load\(\)/$1loadRelaxed\(\)/g' -i \{\} + $ find \( -iname \*.cpp -or -iname \*.h \) -exec perl -pe 's/(\.|->)store\(/$1storeRelaxed\(/g' -i \{\} + It can be easily improved (e.g. for store check that there are no commas after the opening parens). The most common offender is QLibrary::load, and some code using std::atomic directly. Change-Id: I07c38a3c8ed32c924ef4999e85c7e45cf48f0f6c Reviewed-by: Marc Mutz --- src/opengl/qgl.cpp | 4 ++-- src/opengl/qglcolormap.cpp | 2 +- src/opengl/qglcolormap.h | 2 +- src/opengl/qglframebufferobject.cpp | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) (limited to 'src/opengl') diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp index 799e984a68..2b4af3ef9f 100644 --- a/src/opengl/qgl.cpp +++ b/src/opengl/qgl.cpp @@ -397,7 +397,7 @@ QGLFormat::QGLFormat(QGL::FormatOptions options, int plane) */ void QGLFormat::detach() { - if (d->ref.load() != 1) { + if (d->ref.loadRelaxed() != 1) { QGLFormatPrivate *newd = new QGLFormatPrivate(d); if (!d->ref.deref()) delete d; @@ -5208,7 +5208,7 @@ void QGLContextGroup::addShare(const QGLContext *context, const QGLContext *shar return; // Make sure 'context' is not already shared with another group of contexts. - Q_ASSERT(context->d_ptr->group->m_refs.load() == 1); + Q_ASSERT(context->d_ptr->group->m_refs.loadRelaxed() == 1); // Free 'context' group resources and make it use the same resources as 'share'. QGLContextGroup *group = share->d_ptr->group; diff --git a/src/opengl/qglcolormap.cpp b/src/opengl/qglcolormap.cpp index d607363ac0..f314a9715d 100644 --- a/src/opengl/qglcolormap.cpp +++ b/src/opengl/qglcolormap.cpp @@ -153,7 +153,7 @@ QGLColormap & QGLColormap::operator=(const QGLColormap &map) void QGLColormap::detach_helper() { QGLColormapData *x = new QGLColormapData; - x->ref.store(1); + x->ref.storeRelaxed(1); x->cmapHandle = 0; x->cells = 0; if (d->cells) { diff --git a/src/opengl/qglcolormap.h b/src/opengl/qglcolormap.h index 772e327e34..b59b56e040 100644 --- a/src/opengl/qglcolormap.h +++ b/src/opengl/qglcolormap.h @@ -90,7 +90,7 @@ private: inline void QGLColormap::detach() { - if (d->ref.load() != 1) + if (d->ref.loadRelaxed() != 1) detach_helper(); } diff --git a/src/opengl/qglframebufferobject.cpp b/src/opengl/qglframebufferobject.cpp index b2158ebfaa..d0f82a85fa 100644 --- a/src/opengl/qglframebufferobject.cpp +++ b/src/opengl/qglframebufferobject.cpp @@ -145,7 +145,7 @@ extern QImage qt_gl_read_frame_buffer(const QSize&, bool, bool); */ void QGLFramebufferObjectFormat::detach() { - if (d->ref.load() != 1) { + if (d->ref.loadRelaxed() != 1) { QGLFramebufferObjectFormatPrivate *newd = new QGLFramebufferObjectFormatPrivate(d); if (!d->ref.deref()) -- cgit v1.2.3