[Gc] atomic_ops: bugfix for Solaris x86/amd64

Ivan Maidanski ivmai at mail.ru
Tue Feb 2 12:38:55 PST 2010


I've done 2 changes (for Solaris, fr the code that has been adopted from the gcc's case by myself half a year ago):
- fixed "xchg" operand size in AO_test_and_set_full() (I intentionally don't use "b" suffix as there has been some problems with "xchgb" mnemonic in some Sun CC assembler versions - anyway "xchg %al, ..." and "xchgb %al, ..." are equivalent);
- commented out AO_compare_double_and_swap_double_full (+ its AO_HAVE_...) because it hasn't been tested, might be wrong, and tickles a bug in some Sun CC versions (some assertion is violated in a register allocation function in "Sun CC 5.10" with -O1 or high; on the other hand, "Sun Ceres CC 5.10" has no problems with the code); also, __PIC__ macro is never predefined by Sun CC.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: bdwgc-ivmai-227.diff
Type: application/octet-stream
Size: 2236 bytes
Desc: not available
Url : https://napali.hpl.hp.com/pipermail/gc/attachments/20100202/e94e157e/bdwgc-ivmai-227.obj

More information about the Gc mailing list