[Webkit-unassigned] [Bug 106740] New: Fix the atomicIncrement implementation for Windows
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Sun Jan 13 01:23:59 PST 2013
https://bugs.webkit.org/show_bug.cgi?id=106740
Summary: Fix the atomicIncrement implementation for Windows
Product: WebKit
Version: 420+
Platform: Unspecified
OS/Version: Unspecified
Status: NEW
Severity: Normal
Priority: P2
Component: Web Template Framework
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: ossy at webkit.org
CC: hausmann at webkit.org, jocelyn.turcotte at digia.com,
pierre.rossi at gmail.com, zarvai at inf.u-szeged.hu
Depends on: 106708,106729
After https://trac.webkit.org/changeset/139514 we need 32 and 64 bit implementation
for atomicIncrement(). I fixed it for GCC in http://trac.webkit.org/changeset/139553,
but we still need fix for Windows too:
----------------------------------------------------------------------------------------------------------------------------
#if COMPILER(MINGW) || COMPILER(MSVC7_OR_LOWER) || OS(WINCE)
inline int atomicIncrement(int* addend) { return InterlockedIncrement(reinterpret_cast<long*>(addend)); }
inline int atomicDecrement(int* addend) { return InterlockedDecrement(reinterpret_cast<long*>(addend)); }
#else
inline int atomicIncrement(int volatile* addend) { return InterlockedIncrement(reinterpret_cast<long volatile*>(addend)); }
inline int atomicDecrement(int volatile* addend) { return InterlockedDecrement(reinterpret_cast<long volatile*>(addend)); }
#endif
----------------------------------------------------------------------------------------------------------------------------
Maybe the InterlockedIncrement64 and InterlockedDecrement64 would be
the fix, but I'm afraid it isn't implemented on 32 bit MinGW platform.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list