Open Bug 484453 Opened 16 years ago Updated 2 years ago

OSX / DARWIN implementation of NativeCompareAndSwap is invalid

Categories

(Firefox :: General, defect)

x86
macOS
defect

Tracking

()

People

(Reporter: jeremyhu, Unassigned)

Details

User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3) Gecko/20090305 Firefox/3.1b3 Build Identifier: 3.1b3 1.9.1 /usr/bin/g++-4.0 -o jslock.o -c -I./../../dist/include/system_wrappers_js -include ./config/gcc_hidden.h -DAVMPLUS_IA32 -DAVMPLUS_UNIX -DFEATURE_NANOJIT -DJS_TRACER -DOSTYPE=\"Darwin9.6.0\" -DOSARCH=Darwin -DEXPORT_JS_API -DJS_USE_SAFE_ARENA -I. -I. -I./../../dist/include -I./../../dist/include/js -I/opt/local/include/nspr -I/sdk/include -I. -fPIC -I/opt/local/include -I/Developer/Headers/FlatCarbon -DXP_UNIX -DXP_MACOSX -UNO_X11 -I/opt/local/include -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-long-long -O2 -I/Developer/Headers/FlatCarbon -DXP_UNIX -DXP_MACOSX -UNO_X11 -fno-strict-aliasing -fpascal-strings -fno-common -fshort-wchar -pthread -pipe -DNDEBUG -DTRIMMED -O2 -I/opt/local/include -I/Developer/Headers/FlatCarbon -DXP_UNIX -DXP_MACOSX -UNO_X11 -I/opt/local/include -DMOZILLA_CLIENT -include ./mozilla-config.h -Wp,-MD,.deps/jslock.pp jslock.cpp jslock.cpp: In function 'int NativeCompareAndSwap(jsword*, jsword, jsword)': jslock.cpp:97: error: invalid conversion from 'jsword' to 'void*' jslock.cpp:97: error: invalid conversion from 'jsword' to 'void*' jslock.cpp:97: error: cannot convert 'jsword*' to 'void* volatile*' for argument '3' to 'bool OSAtomicCompareAndSwapPtrBarrier(void*, void*, void* volatile*)' gmake[3]: *** [jslock.o] Error 1 gmake[3]: Leaving directory `/opt/local/var/macports/build/_Users_jeremy_src_macports-trunk_dports_www_firefox-x11/work/mozilla-1.9.1/js/src' gmake[2]: *** [libs_tier_js] Error 2 gmake[2]: Leaving directory `/opt/local/var/macports/build/_Users_jeremy_src_macports-trunk_dports_www_firefox-x11/work/mozilla-1.9.1' gmake[1]: *** [tier_js] Error 2 gmake[1]: Leaving directory `/opt/local/var/macports/build/_Users_jeremy_src_macports-trunk_dports_www_firefox-x11/work/mozilla-1.9.1' make: *** [all] Error 2 Reproducible: Always Steps to Reproduce: Place the following in CPPFLAGS: -I/Developer/Headers/FlatCarbon -DXP_UNIX -DXP_MACOSX -UNO_X11 "-I/Developer/Headers/FlatCarbon" is for #484452. "-DXP_UNIX -DXP_MACOSX -UNO_X11" is because not all source files get compiled with HOST_CLFAGS. jslock.cpp is one such file that doesn't get HOST_CFLAGS set, so it actually compiles "normally", but when we force the HOST_CFLAGS on it, it fails because OSAtomicCompareAndSwapPtrBarrier is called incorrectly.
Assignee: nobody → jeremyhu
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Jeremy: Is this still an issue ?
Flags: needinfo?(jeremyhu)
Probably. I gave up on trying to support firefox on darwin/x11 because there were so many regressions with each release, and they just kept piling up.
Flags: needinfo?(jeremyhu)

The bug assignee didn't login in Bugzilla in the last 7 months.
:mossop, could you have a look please?
For more information, please visit auto_nag documentation.

Assignee: jeremyhu → nobody
Status: ASSIGNED → NEW
Flags: needinfo?(dtownsend)
Flags: needinfo?(dtownsend)
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.